一,前言
刚开始学内核的时候,不要执着于一个方面, 不要专注于- -个子系统就一头扎到实际的代码行中去,因为这样的话,牵涉的面会很广,会碰到很多困难,容易产生挫败感,-个函数体中(假设刚开始的时候正在学习某个方面的某个具体的功能函数)很可能掺杂着其他各个子系统方面设计理念(多是大量相关的数据结构或者全局变量,于支撑该子系统的管理工作)下相应的代码实现, 这个时候看到这些东西,纷繁芜杂,是没有头绪而且很不理解的,会产生很多很多的疑问,(这 个时候如果对这些疑问纠缠不清,刨根问底,那么事实上就是在学习当前子系统的过程中频繁的去涉足其他子系统,这时候注意力就分散了),而事实上等了解了各个子系统后再回头看这些东西的话,就简单多了,而且思路也会比较清晰。所以,要避免”只见树木, 不见森林”,不要急于深入到底层代码中去,不要过早研究底层代码。
我在大学的时候刚开始接触内核,就犯了这个错误,头扎到内存管理里头,去看非常底层的实现代码,虽然也是建立在内存管理的设计思想的基础上,但是相对来说,比较孤立,因为此时并没有学习其它子系统,应该说无论是视野还是思想,都比较狭隘,所以代码中牵涉到的其它子系统的实现我都直接跳过了,这-点还算聪明,当然也是追不得已的。
在我们学习Linux内核之前,我们首先需要掌握以下几点:
(四),最后依据我为大家提供的的学习资料,开启我们的Linux内核学习之旅。
二,学习资料
2.1操作系统专题
浅谈操作系统一:了解Linux 操作系统!开篇!!!
浅谈操作系统二:不得不看的Linux操作系统基础知识
浅谈操作系统三:小白也能秒懂的Linux零拷贝原理
浅谈操作系统四:时间片---实时操作系统的任务调度
浅谈操作系统五:Linux内核操作系统-分页机制
浅谈操作系统六:Linux内核操作系统-分段机制
浅谈操作系统七:一文了解Linux磁盘缓存机制
浅谈操作系统八:一文看懂Linux内核操作系统-内存分配
浅谈操作系统九:一文讲解解操作系统启动、中断、异常和系统调用
浅谈操作系统十:值得一看的Linux内核实战- 操作系统概览
浅谈操作系统十一:一文看懂Linux内核设计—操作系统工作原理
浅谈操作系统十二:操作系统中文件存储空间的管理
浅谈操作系统十三:操作系统——段式存储管理
浅谈操作系统十四:深入讲解linux内核——操作系统原理磁盘阵列
浅谈操作系统十五:简短介绍操作系统—处理器调度