《程序员的自我修养》第三部分 装载与动态链接

第六章 可执行文件的装载与进程

32位平台下,进程的虚拟地址空间为4GB,其中有1GB的空间为内核空间(用于内核代码执行和内核数据存储)
32位CPU,程序使用的虚拟空间不能超过4GB,因为32位的CPU只能使用32位的指针,最大寻址范围为4GB。
32位CPU,程序使用的真实物理空间可以超过32GB,因为地址线可以扩展成36位地址线,可以访问到更多的物理内存。(PAE:物理地址扩展)
一个进程要使用多余的空间通过mmap映射的方式即可,根据需要将同样的虚拟地址空间映射到不同的物理地址空间。

动态链接

原因:

  1. 静态链接很耗内存,每个进程都需要一个公有库的副本。
  2. 一旦程序中有任何模块更新, 整个模块就要重新链接,发布给用户。

动态链接就是讲链接推迟到运行时再进行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值