码迷,mamicode.com
首页 > 其他好文 > 详细

程序员的自我修养 学习笔记(4)

时间:2014-06-13 15:57:51      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:ext   使用   文件      linux   管理   

        可执行文件只有装载到内存以后才能被CPU执行。程序就将是菜谱,CPU就像是厨师,计算机的其他硬件就像是厨具,整个炒菜的过程就是一个进程。同样的一份菜谱,不同人可以做出来不同的味道。这个类比真是巧妙。

    Linux下面,进程最大使用3G的虚拟空间

    Windows下面,进程最大使用2G的虚拟空间

 

现在计算机,配置超过4G的内存的电脑已经不是不可能了,在这种情况下,32位CPU能够访问到大于4G的空间吗?如果此空间指的是虚拟地址空间,由于32位CPU的指针只能是32位,最大寻址范围是0~4GB。如果此空间指的是实际内存空间,Intel的Pentium Pro CPU采用36位物理地址,可以访问高达64G的物理内存,这种机制叫做PAE(Physical Address Extension)。

    覆盖装入(Overlay):程序员必须手工将程序分割成若干块,然后编写一个小的辅助代码来管理这些模块何时应该驻留内存、何时应该被替换掉。

    页映射(Paging):是虚拟存储机制的一部分。

 

创建一个进程:

1. 创建一个独立的虚拟地址空间

2. 读取可执行文件头,并且建立虚拟空间与可执行文件的映射关系

3. 将CPU的指令寄存器设置成可执行文件的入口地址,启动运行

程序员的自我修养 学习笔记(4),布布扣,bubuko.com

程序员的自我修养 学习笔记(4)

标签:ext   使用   文件      linux   管理   

原文地址:http://www.cnblogs.com/cherishui/p/3784702.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!