操作系统内存分配

操作系统给应用程序分配内存空间(分配连续的地址空间)会产生内存碎片:外碎片和内碎片

其中外碎片是两个块之间的碎片(太小不能被使用),内碎片为块内部的碎片

内存空间的保护:即不允许在用户模式下执行的程序对操作系统的内存或者其他用户内存进行访问。内存空间的保护是通过cpu硬件在用户模式下产生的地址和寄存器中的地址(基地址和界限地址)进行比较基址寄存器和界限地址寄存器只有通过特权指令进行访问,而这种访问装置由操作系统有这个权限。

程序运行三个阶段:编译、加载,运行。如果在编译阶段得到进程在内存中的位置,那么这个地址叫做绝对地址,不需要在加载时进行重定向。

逻辑地址在内存中的物理地址范围:逻辑地址+基地址 ~~~逻辑地址+界限地址

对进程的三种分配方式:首次分配,最优分配(最接近的),最坏分配(最大的)。

原文地址:https://www.cnblogs.com/guosai1500581464/p/13038865.html