操作系统存储管理技术探讨:快表与虚拟存储器
需积分: 47 83 浏览量
更新于2024-07-13
收藏 2.13MB PPT 举报
关于快表的讨论-操作系统第四章
在操作系统中,存储器管理是一项重要的任务。为了提高存储器的利用率和多道程序的运行效率,操作系统需要对存储器进行管理。在这里,我们讨论了快表的概念和实现。
快表(Translation Lookaside Buffer,TLB)是 Cache 中的一种特殊 Cache,用于存储最近访问的页表项。由于成本关系,快表的大小通常很小,仅能存放 16~512 个页表项。这对中小作业来说,已经足够把全部页表放在其中。但对大型作业,只能放一部分。因此,配置快表的效果决定于快表访问时的命中率。
快表的命中率对系统的性能有很大的影响。假设检索快表时间为 20 ns,访问内存为 100 ns。如果能在快表中检索到 CPU 给出的页号,则 CPU 存取一个数据共需 120 ns。否则,总需 220 ns 的时间。下表显示了访问联想存储器时的命中率分别为 0%、50%、80%、90% 和 98% 时的有效访问时间:
| 命中率 | 有效访问时间 |
| --- | --- |
| 0% | 220 ns |
| 50% | 170 ns |
| 80% | 140 ns |
| 90% | 130 ns |
| 98% | 122 ns |
从表中可以看到,快表的命中率对系统的性能有很大的影响。为了提高快表的命中率,操作系统可以使用不同的页表管理算法和 Cache 替换策略。
在操作系统中,存储器管理的主要功能包括:
* 存储器的分配和回收
* 地址变换
* “扩充”内存容量
* 存储共享和保护
为了实现这些功能,操作系统使用了不同的存储管理机制,例如页表、段表和 Cache。
在第四章中,我们讨论了存储器管理的基本概念,包括存储体系、程序的链接和装入、连续分配方式、基本分页存储管理方式、基本分段存储管理方式、虚拟存储器的基本概念、请求分页存储管理方式、页面置换算法和请求分段存储管理方式。
存储管理的主要目标是为了提供一个良好的环境,使多道程序能够高效率地运行。为了实现这个目标,操作系统需要对存储器进行管理,包括存储器的分配和回收、地址变换、内存的“扩充”和存储共享和保护。
在存储管理中,页表管理是一个非常重要的部分。页表是操作系统中的一种数据结构,用于存储进程的虚拟地址空间和物理地址空间之间的映射关系。为了提高页表的访问速度,操作系统使用了 Cache 和快表。
Cache 是一种高速缓冲存储器,用于存储最近访问的数据。快表是 Cache 中的一种特殊 Cache,用于存储最近访问的页表项。通过使用 Cache 和快表,操作系统可以提高存储器的访问速度,提高系统的性能。
存储管理是操作系统中的一项非常重要的任务。通过对存储器的管理,操作系统可以提高系统的性能,提供一个良好的环境,使多道程序能够高效率地运行。
106 浏览量
点击了解资源详情
点击了解资源详情
109 浏览量
103 浏览量
2010-11-25 上传
2023-04-07 上传
157 浏览量
107 浏览量
正直博
- 粉丝: 48
最新资源
- MATLAB函数实现箭头键控制循环开关示例
- Swift自动布局演示与高级工具应用解析
- Expo CLI取代exp:命令行界面技术新变革
- 鸢尾花卉数据集:分类实验与多重变量分析
- AR9344芯片技术手册下载,WLAN平台首选SoC
- 揭开JavaScript世界中的蝙蝠侠之谜
- ngx-dynamic-hooks:动态插入Angular组件至DOM的新技术
- CppHeaderParser:Python库解析C++头文件生成数据结构
- MATLAB百分比进度显示功能开发
- Unity2D跳跃游戏示例源码解析
- libfastcommon-1.0.40:搭建Linux基础服务与分布式存储
- HTML技术分享:virgil1996.github.io个人博客解析
- 小程序canvas画板功能详解:拖拽编辑与元素导出
- Matlab开发工具Annoyatron:数学优化的挑战
- 万泽·德·罗伯特:Python在BA_Wanze项目中的应用
- Jiq:使用jq进行交互式JSON数据查询的命令行工具