进程和内存关系

本文探讨了操作系统中启动进程时的内存管理和页表机制。在启动一个进程时,首先通过fork创建子进程,分配页表项并复制父进程的页表。每个进程需要约64K的页表空间,若启动64个进程则需4M内存。在16M物理内存中,减去高速缓存、内核和其他需求,剩余8M供程序使用。当进程有写操作时,会触发写时复制,申请物理页面,并可能从硬盘加载数据到高速缓存。这个过程涉及到内存、高速缓存和硬盘的交互,以及页表的更新。

启动一个进程时候,首先调用fork,申请内存用于存储页表项,然后该页表项赋值父进程的页表项,一个进程需要的页表项空间:64M/4M*4K=64K,64个进程全部启动需要的页表空间:64K*64=4M。16M(全部物理内存)-4M(高速缓存+内核)-4M(页表项)=8M,还剩8M用于程序。

进程启动后有写操作就会调用写时赋值,写时赋值就会申请一页物理内容,如果需要硬盘的数据,还会把硬盘的数据通过文件管理读到高速缓存中,然后同步到该申请的内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jena_wy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值