【操作系统】内存空间

【操作系统】内存空间_第1张图片

最小的操作系统Hello world

【操作系统】内存空间_第2张图片
想要pmap这个进程,需要进程号
但是这个进程在启动的一瞬间就执行完了

用GDB把程序暂停下来,然后用pmap观察地址空间
【操作系统】内存空间_第3张图片
info inferiors得到gdb里的进程号

【操作系统】内存空间_第4张图片
ro 可读 :只读数据
rx 可读可执行 :代码
rw 可读可写 :待初始化值的变量

动态链接与静态链接

动态链接的二进制文件在开始执行main函数之前,要先把链接的目标函数加载到内存地址空间。
【操作系统】内存空间_第5张图片
【操作系统】内存空间_第6张图片
fd是文件描述符,
windows下对应的是handle
【操作系统】内存空间_第7张图片
【操作系统】内存空间_第8张图片
用mmap给8G内存的电脑上,申请分配8G内存
【操作系统】内存空间_第9张图片
【操作系统】内存空间_第10张图片
【操作系统】内存空间_第11张图片
patch函数就是修改原函数的第一条指令

另一方面,这样的技术可以做到软件热更新

可执行文件

【操作系统】内存空间_第12张图片

你可能感兴趣的:(概率论)