码迷,mamicode.com
首页 >  
搜索关键字:进程地址空间    ( 144个结果
[学习笔记]fork写实复制
#include#include#include#include #include//fork进程//变量的引申 每一个进程有独立的进程地址空间有更深入的理解//写实复制理解// 1. 子进程修改变量时拷贝// 2. 只拷贝页 ----> Linux内核内存管理机制int main(void){.....
分类:其他好文   时间:2015-04-15 16:40:37    阅读次数:105
linux 进程地址空间的一步步探究
我们知道,在32位机器上linux操作系统中的进程的地址空间大小是4G,其中0-3G是用户空间,3G-4G是内核空间。其实,这个4G的地址空间是不存在的,也就是我们所说的虚拟内存空间。那虚拟内存空间是什么呢,它与实际物理内存空间又是怎样对应的呢,为什么有了虚拟内存技术,我们就能运行比实际物理内存大的...
分类:系统相关   时间:2015-03-15 15:09:35    阅读次数:262
Linux内核源代码情景分析-系统调用brk()
首先看下进程地址空间示意图:    我们简单的说,从低地址到高地址,代码区和数据区,空洞,堆栈区。    在Linux内核源代码情景分析-内存管理之用户堆栈的扩展,我们申请了从堆栈区往下,数据区上面的页面。    在Linux内核源代码情景分析-内存管理之用户页面的换入,我们申请了用于换入/换出的页面。    在本文中,我们申请的是从数据区往上,堆栈区下面的页面。    我们通过一个实例来分析,b...
分类:系统相关   时间:2015-03-09 09:24:25    阅读次数:246
Linux x86_64进程内存空间布局
关于Linux 32位内存下的内存空间布局,可以参考这篇博文Linux下C程序进程地址空间局关于源代码中各种数据类型/代码在elf格式文件以及进程空间中所处的段,在x86_64下和i386下是类似的,本文主要关注vm.legacy_va_layout以及kernel.randomize_va_space参数影响下的进程空间内存宏观布局。情形一: vm_legacy_va_layout=1 ke...
分类:系统相关   时间:2015-03-09 00:34:17    阅读次数:568
Linux内核源代码情景分析-内存管理之用户堆栈的扩展
在下面几种情况下会发生,页面出错异常(也叫缺页中断):    1、相应的页面目录项或者页面表项为空,也就是该线性地址与物理地址的映射关系尚未建立,或者已经撤销。本文讨论的就是这种情况。    2、相应的物理页面不在内存中。    3、指令中规定的访问方式与页面的权限不符,例如企图写一个“只读”的页面。    首先看下进程地址空间示意图:...
分类:系统相关   时间:2015-03-01 13:16:01    阅读次数:305
windows - 进程 - 进程环境变量
原文链接1 原文链接2 1.进程的环境变量 每个进程都有一个与它关联的环境块(environment block),这是在进程地址空间内分配的一块内存,其中包含字符串类似于: =::=::\... VarName=VarValue\0... \0 除第一个=::=::\外,块中可能还有其他字符串是以等号开头的,这种字符串不作为环境变量使用。 访问环境块...
分类:Windows程序   时间:2015-01-29 16:05:09    阅读次数:625
C程序运行的背后(2)
话说上回说到,C程序运行之前,必须要加载到其进程地址空间中。今儿咱就扯扯这个加载到底是怎么加载的。 一图胜前言,这个图简单说明了可执行文件加载过程的逻辑流,在此只做粗粒度概要说明。需要准确描述的,请出门左转,看源码去吧。1. 程序总是运行在进程上下文(context)中的,当输入./meml...
分类:其他好文   时间:2014-12-30 23:21:51    阅读次数:261
C程序运行的背后(1)
一个成功的男人背后,至少有一个伟大的女人;一个不成功的男人,至少有一双手。而一个C程序,无论成功不成功,它的背后一定有一个操作系统,一个shell,一套工具链。世界本就不公平。隐藏在显而易见的事实背后的,你若能看透,便可以站在对自己公平的那一端。1、进程地址空间一个进程一旦建立,就会自认为占有4G内...
分类:其他好文   时间:2014-12-29 22:59:47    阅读次数:171
如何正确地使用vfork():简析vfork()与fork()的不同
vfork是一个比较特别的系统调用,它与fork之间有一些微妙的区别。...
分类:其他好文   时间:2014-11-23 17:36:33    阅读次数:230
细说linux IPC(四):posix 共享内存
上一节讲了由open函数打开一个内存映射文件,再由mmap函数把得到的描述符映射到当前进程地址空间中来。这一节说说另外一种类似的共享内存方法,即 有shm_open函数打开一个Posix.1 IPC名字(也许是文件系统中的一个路径名),所返回的描述符由函数mmap映射到当前进程地址空间。 pos.....
分类:系统相关   时间:2014-11-22 21:33:46    阅读次数:299
144条   上一页 1 ... 9 10 11 12 13 ... 15 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!