进程、线程、IO 、网络等,不深入到操作系统层面是没法真正理解的。对于 Java 开发者来说,去了解 Linux 内核是如何工作的相当有必要,那如何进行呢? 目前有 C 和 x86 汇编的基础,是否有必要从 linux 系统编程开始,如从 APUE/UNP/TLPI 等书籍( TLPI 大致翻过一遍,但没怎么实践),还是说直接开始 LKD -> ULK -> LDD (以及 LDDD )?
1
dongcidaci 2022-05-19 19:38:19 +08:00
根据你的描述你是想在代码层面了解进程、线程这些吧,我推荐你先可以做一做 MIT6.s081 。或者看看操作系统方面的书,有一本开源的操作系统教材不错 --- https://pages.cs.wisc.edu/~remzi/OSTEP/。对操作系统基本概念的熟悉了之后,可以看看毛德操的《 LINUX 内核源代码情景分析》。
|