您的位置:首页 > 运维架构 > Linux

史上最全面最精华的Linux内存相关资料

2016-03-25 16:30 375 查看


有关于Linux内存的学习资料,巨献。

    内核比较: 2.6 内核中改进了内存管理    内核比较: 2.6 内核中改进了内存管理。
   


   内存详解    内存详解。


  Linux 大页面使用与实现简介  Linux
大页面使用与实现简介。


   从 Linux 内核访问用户空间内存 从 Linux 内核访问用户空间内存。

Red
Hat's Linux System Administration Primer 提供一个很好的虚拟内存总结。

关于
Linux 交换空间的一切 讨论了交换的目的、交换驻留的地方、以及用于管理交换空间的各种命令。

为了提高缓存性能,制定了一个 压缩缓存模式。在这个模式中,交换磁盘事实上是一个快速内存磁盘,页面根据词条进行压缩来提高存储效率。

Linux 内存管理的一个最好的来源是设备驱动程序宝典:Linux
Device Drivers,第 3 版 。

内核和用户空间页面 的一个不同是,内核在内存中是永久的,而用户空间页面可以被换出到一个存储设备。通过使用
mlock()
 和 
mlockall()
 系统调用可以实现将一个进程的部分虚拟空间锁进内存


并不是所有的处理器都有一个 MMU。Linux 通过 uClinux 发行版来支持这些构架。uClinux是一个关注这些没有
MMU 的架构的项目,比如微控制器。

关于内存管理主题,维基百科提供了很多有用的资源,其中包括 虚拟内存分页页表、以及 页面置换算法


不要忘记内存 不要忘记内存

  “Linux
调度器内幕”(developerWorks,2006 年 6 月)介绍了 Linux 2.6 中引入的新 O(1) 调度程序,这是一个非常高效的算法,可以扩展到很大数量的进程(线程),并且可以利用 SMP 系统。

“使用
/proc 文件系统来访问 Linux 内核的内容”(developerWorks,2006 年 3 月)介绍了 /proc 文件系统,这是一个虚拟文件系统,为用户空间的应用程序提供了一种全新的方法与内核进行通信。这篇文章展示了 /proc 以及可加载内核模块。

“服务器诊所:
使虚拟文件系统工作”(developerWorks,2003 年 4 月)深入介绍了 VFS 层,它允许 Linux 通过一个通用接口支持各种不同的文件系统。这个相同的接口也可以用于其他类型的设备,例如 socket。

“Linux
引导过程内幕”(developerWorks,2006 年 5 月)介绍了 Linux 的引导过程,该过程将启动一个 Linux 系统,并且不管是从硬盘、软盘、USB 内存条还是通过网络引导系统,该过程是相同的。

“Linux
初始 RAM 磁盘(initrd)概述”(developerWorks,2006 年 7 月)介绍了初始 RAM 磁盘,它将引导过程与所引导的物理介质隔离开来。

“使用
SCTP 优化网络”(developerWorks,2006 年 2 月)介绍了一种非常有用的网络协议:流控制传输协议,它的操作与 TCP 类似,但是增加了很多有用的特性,例如消息传递、 多宿主和多流。如果您对网络协议感兴趣,那么 Linux 与 BSD 一样,都是一种非常好的操作系统。

“Linux
slab 分配器详解” (developerWorks,2007 年 5 月)介绍了 Linux 内存管理中最有用的一个工具:slab 分配器。这种机制源自于 SunOS,不过它在 Linux 内核中找到了合适的位置。

“虚拟
Linux”(developerWorks,2006 年 12 月)介绍了 Linux 是如何充分利用具有虚拟化能力的处理器。

“Linux
和对称多处理”(developerWorks,2007 年 3 月)讨论了 Linux 怎样利用提供芯片级多处理能力的芯片。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息