首页 > 代码库 > 《linux 内核分析》总结

《linux 内核分析》总结

王一+《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-100002900

一、linux 系统的理解和学习心得

 操作系统作为一个运行任务和程序的平台,几乎所有的独立运行的计算平台上都有,小到一个51的最小系统,可以模拟简单的操作系统,大到超级计算机,平常最多的是Android系统,因为是目前为止大部分手机上所运行的操作系统,而这个操作系统的原型就是linux操作系统,它有很多优秀特性,多任务和多用户,开源和稳定。linux 操作系统的开源特性使我们学习操作系统的原理和学习其优秀的编程思想和方法都非常有借鉴意义。

linux 系统的运行过程就是从一个start_kernel 开始生成用户进程和内核态进程,这两种进程同时在运行,以后的运行的各种进程都是通过这两个进程来添加,系统通过调用schedule()来切换运行的进程,来分配时间片,实现多进程的切换和同步。 操作系统两把宝剑:中断上下文切换和进程上下文切换。linux 系统在运行过程中通过两把宝剑来保证进程的切换和系统调用,和中断的处理,这些 都是软件正常运行所必须的。

 学习心得-听懂老师的讲课并认真去看源代码,调试之后写心得,认真坚持才能出效果,很多东西的学习是需要认真动手的,纸上学来终觉浅,得知此事要躬行。自己以前只看只听,不记不练是效率最低的学习方法,以后需要改进。

二、学习目录

第二课主要是通过模拟程序,学习中断机制下基于时间片的分配的进程上下文切换。

 通过中断机制完成进程的调度第三课主要是通过调试内核,理解系统启动的目的,从start_kernel入口,来分析系统的初始化过程。

linux 系统的启动过程

第四课 扒开系统的三层皮主要是学习系统调用的过程。

扒开系统三层皮(上)

第五课 扒开系统的三层皮下

 

 

我觉得这门课最大的收获是学会了一句话:天下大事必作于细,天下难事必作于易,此句话深有感触。以前觉得很多东西太难望而却步,现在看来一切都是纸老虎,只不过自己把它想的太难了,当认真的去动手去分析去做的时候发现一切都是那么近在眼前。还有就是学习这个操作系统的方法,抓主线,看关键点,忽略掉一些对过程影响小的部分,这也是做事情和学习的一种高效的态度和方法。

 学习这门课最大的遗憾

《linux 内核分析》总结