Open utterances-bot opened 2 years ago
我们希望基于这种层次结构,加上一定
当然软硬件优化手段,能够接近“理想”内存的目标。
是”一定的“吧。
最优匹配(best fit)策略的思路也很简单:选择最接近需求方请求大小的块,从而尽量避免空间浪费。也是把空闲空间基于地址顺序组织为大小不一的空闲块列表。当需求方需要大小为n的空闲块时,遍历整个空闲列表,找到足够大且二者空间大小差距最小的空闲块。其代价是时间,即需要遍历一次空闲列表,找到最合适的空闲块。而且还有可能造成空间的浪费,因为可能产生很多小的空闲碎片,虽然碎片容量的总和比较大,当无法满足内存分配请求。
最後應爲:“但無法滿足......"
如何量化程序访问的速度呢?如果能知道程序执行过程中的访存命中次数和未命中次数,就可以计算出程序的平均内存访问时间:
AvgTime = ( Tm * Phit ) + ( Ts * Pmiss ) / ( Phit + Pmiss )
應爲
AvgTime = (( Tm * Phit ) + ( Ts * Pmiss ))/ ( Phit + Pmiss )
该数据的虚拟地址是否
时->是 该任务的合法地址 为了进一步提高系统的执行效率,但-> 当 操作系统在让存储设备进行I/O访问时
@nucstd123 @KaminariOS 谢谢!已修改。
注解 按需分页(Demand Paging) 还有一点需要注意,交换区
不不是->并不是 应用程序的页面换入换出的唯一区域。
动态内存分配
但应用程序需要的内存空间一般 时 大小不一的->一般 是 大小不一的
交换技术
这里需要注意的是,及时 解决了上述三个问题 -> 即使 解决了上述三个问题
stack方法中,"即把表示页(有虚拟页号即可)的项目按访存先后组织位一个栈式单链表" 这里应该是 “拉一个栈式单链表” 吧
而其他一些策略,比如LRU置换,最优置换等,就不会遇到这个问题。其原因是,LRU等具有栈特性(stack property),即数量为 m+1 的物理页帧一定包括数量为 m 的物理页帧的数据内容。因此,当增加物理页帧数量时,访存命中率至少保证不变,且
由有 可能提高。而FIFO策略、时钟策略等没有栈特性,因此可能出现异常行为。
勘误:
每当应用访问一个页时,处理器就会从链表中找到该页对应项目,移除并放在链表头
这里应当为“移出”,毕竟访问过的页不是要拿去换出,而是置换到栈顶
计算机科学家 Belady 及其同事在 1969 年左右在研究 FIFO 置换策略是
“是”应当为“时”
超越物理内存的地址空间 — rCore-Tutorial-Book-v3 3.6.0-alpha.1 文档
https://rcore-os.github.io/rCore-Tutorial-Book-v3/chapter4/7more-as.html