操作系统的内存使用机制研究计划
重点花心思的是跟我职业相关的logo设计类站点。所以这个站肯定是没花多少时间的 linux的产生与发展,更多的应用与服务器,那么对于linux的各个管理机制要非常清楚,一个完整的linux系统主要有存储管理,内存管理,文件系统和进程管理等几方面组成,贴出一些以前学习过的一个很好的文章。与大家共享! 以下主要说明swap和buffer cache机制 Linux支持虚拟内存(virtual memory),虚拟内存是指使用磁盘当作RAM的扩展,这样可用的内存的大小就相应地增大了。内核会将暂时不用的内存块的内容写到硬盘上,这样一来,这块内存就可用于其它目的。当需要用到原始的内容时,它们被重新读入内存。这些操作对用户来说是完全透明的;Linux下运行的程序只是看到有大量的内存可供使用而并没有注意到时不时它们的一部分是驻留在硬盘上的。当然,读写硬盘要比直接使用真实内存慢得多(要慢数千倍),所以程序就不会象一直在内存中运行的那样快。用作虚拟内存的硬盘部分被称为交换空间(swap space)。 一般,在交换空间中的页面首先被换入内存;如果此时没有足够的物理内存来容纳它们又将被交换出来(到其他的交换空间中)。如果没有足够的虚拟内存来容纳所有这些页面,Linux就会波动而不正常;但经过一段较长的时间Linux会恢复,但此时系统已不可用了。 有时,尽管有许多的空闲内存,仍然会有许多的交换空间正被使用。这种情况是有可能发生的,例如如果在某一时刻有进行交换的必要,但后来一个占用很多物理内存的大进程结束并释放内存时。被交换出的数据并不会自动地交换进内存,除非有这个需要时。此时物理内存会在一段时间内保持空闲状态。对此并没有什么可担心的,但是知道了是怎么一回事,也就无所谓了。 许多操作系统使用了虚拟内存的方法。因为它们仅在运行时才需要交换空间,以解决不会在同一时间使用交换空间,因此,除了当前正在运行的操作系统的交换空间,其它的就是一种浪费。所以让它们共享一个交换空间将会更有效率。 注意,如果会有几个人同时使用这个系统,他们都将消耗内存。然而,如果两个人同时运行一个程序,内存消耗的总量并不是翻倍,因为代码页以及共享的库只存在一份。 Linux系统常常动不动就使用交换空间,以保持尽可能多的空闲物理内存。即使并没有什么事情需要内存,Linux也会交换出暂时不用的内存页面。这可以避免等待交换所需的时间:当磁盘闲着,就可以提前做好交换。 可以将交换空间分散在几个硬盘之上。针对相关磁盘的速度以及对磁盘的访问模式,这样做可以提高性能。
昆明男科医院郑州牛皮癣医院挂号
武汉男性功能障碍
- 糖水店里有4名员工,老板娘居然拿到了这5万元的创业补贴
- 这种杀印相生的格局,即使重回公职也非长久之计
- 在《单纯的世界》中,相较于孙少安,李向前或是润叶最合适的归宿
- 兰州局援助天津十车皮牛羊肉无人接收?天津铁路部门辟谣
- 53岁女子肚大如孕四月,竟是肝细胞藏着11cm大小子宫肌瘤
- 真正能打动班上的,不是浪漫。
- 【关注】银川市教育局自主招聘报考总数统计!
- 人民网易:如何织好医疗保障“三张网易”?
- 真正会咒骂的人都会用这3个方法,把话说到对方心坎里,很精彩!
- 鲁东该大学国家级和省级一流本科专业增至31个
- 一顿吃60个包子,一次喝6斤火炉,把大夫话当耳边风,35岁便离世
- 女人在最开始就达到了最好,怎么走都是下坡路