1.3 操作系统的第三个功能——存储管理功能 -《zobolの操作系统学习札记》
1.3 操作系统的第三个功能——存储管理功能
作者zobol:关于操作系统概论-存储管理功能,我给出下列问题:
目录
一般来讲,制约我们计算机使用快慢感觉的瓶颈,不在于CPU的计算速度(正常情况下,你上个网是不可能跑满的),而在于你购买的存储器的性能。
现代计算机从以CPU核心转到以存储器为核心的原因之一就是,存储器的搬运数据速度已经跟不上CPU的计算速度了
问1:操作系统的文件管理系统主要是负责哪些任务?
- 文件资源虚拟逻辑化、虚拟内存功能。负责将内存资源、硬盘资源统一逻辑化。
- 管理数据的搬运。因为CPU的计算需要数据,计算完的数据,也需要找个地方存放。
- 确保文件的稳定性,对于临时性的缓存文件要定时自动删除,对于用户要求永久保存的文件,必须确保断电后也存在。
其中我们主要讲解第二点数据的搬运,这是因为它关系到我们计算机性能的快慢。而剩余两点都涉及操作系统到底在硬盘上做了什么,这其中过程十分复杂繁琐,考研不做要求。
问2:为什么数据的转移会成为影响计算机的性能的主要原因?
因为CPU的寄存器空间很小,我们的数据都是要存放在Cache、内存、硬盘里的。当CPU需要的时候,数据从存储器中取出来,通过总线传输进CPU。等计算完再传输回来。而这种接口间的传输速度,是远远赶不上CPU的计算速度的。这就导致CPU总是处于“饥饿”的状态。
平常我们想要提高旧计算机性能,性价比最高的办法就是买一块固态硬盘。你会立刻感受到一秒钟开机的舒服感。
问3:硬盘、内存、Cache都是什么?
硬盘、内存、Cache都是存储器,用来存放数据的。只是它们的价格、性能、传输速度不一样。
我们理想状态下,肯定是希望都买成最快的,容量最大的存储器。
但是在资金有限的情况下,我们需要仔细考虑,分开处理。
- 把CPU经常访问的数据,放到贵的,速度快的Cache、内存里面。
- 把不经常访问的数据,放到便宜的,速度慢,容量大的内存和硬盘里面
问4:存储器内部的读取方式对计算机性能有影响吗?
有影响,当从CPU发出读取某个数据信号,中间的过程都是会造成延时。其中主要是关于磁盘调度部分,不过这一部分具体操作,操作系统很难去具体影响,所以一般是交给硬盘厂商实现最优算法。
问5:操作系统是怎么根据CPU发出的消息得到数据的位置?
首先我们访问文件资源管理器,使用的都是资源地址符。
C:\Program Files
但是CPU一般使用的是二进制的地址,0101011110101011.你可以将它简单理解成一串数字,操作系统得到了它就会去搜索对应的逻辑地址,然后根据逻辑地址找到真实的物理地址。
我们主要学习操作系统如何更快地搜索对应的逻辑地址,肯定不能傻傻地线性搜索,一般都会采用分区、分段、分页等划分方式,减小搜索的时间复杂度。