• Linux内存管理之初始化

    《深入理解linux内核》中对内存管理的解读比较粗略,相比之下陈莉君的书要详细很多了。如果有人想了解内存管理的细节,可以去看看陈莉君的书,确实非常的详细。

    简单的记笔记没有什么意思,按自己的疑惑来记录吧!首先,内存管理是对全局内存进行管理的,但是内存管理的数据也需要占内存,又是一个鸡生蛋、蛋生鸡的问题。这个问题和内存页表建立的问题差不多的。先不谈页表吧!页表建立是在内存管理以后的。首先知道一个东西,内存管理的一部分数据是在内核数据段或者初始段的。

            怎么看呢?有一个System.map的文件,这是编译内核之[……]

    Read more

  • LINUX内核同步学习笔记

    Linux2.0是第一个支持SMP(对称多处理器)的内核。在早些时候, inux2.0 内核通过使用一种粗粒度的锁来保证系统的完整性,其原则就是:一个正在内核态运行的进程除非交出控制权或者要求进入睡眠,否则不能被另一个欲进入内核态的进程打断。 也就是说在任意时刻只能有一个处理器是运行内核态的操作系统代码。这是一种安全而易于实现的方式,不过这种方式对于充分利用多处理器的性能存在着明显的不足。在 Linux 以后改进的版本中,操作系统内核采用了一种细粒度的锁来支持这种多处理器的体系机构。通过把操作系统的内核代码划分为临界区的方式,在保证系统完整性的前提下,提升了操作系统利用多处理器的性能优势。[……]

    Read more

  • %%TITLE%%

    %%CONTENT%%