操作系统相关知识整理(一)

存储管理

程序的装入和链接

用户程序要在系统中运行,必须先将它装入内存,然后再将其转变为一个可以执行的程序,通常都要经过以下几个步骤:
1)编译,由编译程序将用户源代码编译成若干个目标模块。
2)链接,由链接程序将编译后形成的一组目标模块,以及它们所需要的库函数链接在一起,形成一个完整的装入模块。
3)装入,由装入程序将装入模块装入内存。

虚拟内存

1、它将主存看成是一个存储在磁盘上的地址空间的高速缓存,在主存中只保存活动区域,并根据需要在磁盘和主存之间来回传递数据,通过这种方式,它高效地使用了主存。
2、它为每个进程提供了一致的地址空间,从而简化了内存管理。
3、它保护了每个进程的地址空间不被其他进程破坏。

段页式管理

程序在逻辑上分段,每一段在内存上分为若干页。

对于用户而言,当用户发出一个逻辑地址,用户希望访问到特定程序段的内存空间,而对于计算机而言,则希望用户发出的逻辑可以通过MMU转换成页框号和页内偏移量,从而直接去访问真实的内存空间。

为了解决这一问题引入了虚拟内存(就是通过一张段表完成地址映射转换):简单的说就是用户发出访问程序段的逻辑地址<段号,段内偏移量>,通过对这一逻辑地址的运算将其转换为访问页的虚拟地址<页号,页内偏移量>,再由MMU将其转换为内存的物理地址<页框号,页内偏移量>。通过这种方式,用户访问的就是虚拟内存,经过两次地址映射后,变成真实的物理地址。

页面置换算法

1、最佳置换算法(OPT )
理想状况下的页面置换算法,但 实际上是不可能实现的,思想是:发生缺页时,有些页面在内存中,其中有一页将很快被访问,而其他页面可能要等到 10,100,1000 条指令后才会被访问,每个页面都可以用在该页面首次被访问前所要
执行的指令数进行标记。最佳页面置换算法规定: 标记最大的页应该被置换。 。
2、先进先出置换算法(FIFO )
最简单的页面置换算法是先入先出(FIFO)法。这种算法的实质是, 总是选择在主存中停留时间最长(即最老)的一页置换,即 先进入内存的页,先退出内存 。理由是: 最早被调入内存的页,其不再被使用的可能性比刚调入内存的可能性大。
3、最近最久未使用(LRU )算法
FIFO 算法和 OPT 算法之间的主要差别是,FIFO 算法利用页面进入内存后的时间长短作为置换依据,而 OPT 算法的依据是将来使用页面的时间,如果以最近的过去作为不久将来的近似,那么就可以把过去最长一段时间里不曾被使用的页面置换掉。 它的 实质 是:当需要置换一页时, 选择在最近一段时间里最近没有使用过的页面予以置换。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值