Linux内核学习总结

Linux内核学习总结


张嘉琪 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000

学习笔记汇总

第一节 计算机是如何工作的

第二节 操作系统是如何工作的

第三节 构造一个简单的Linux系统MenuOS

第四节 扒开系统调用的三层皮(上)

第五节 扒开系统调用的三层皮(下)

第六节 进程的描述和进程的创建

第七节 可执行程序的装载

第八节 进程的切换和一般的执行过程

对Linux系统的理解及学习Linux内核的心得

Linux是一个一体化内核(monolithic kernel)系统。“内核”指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。

  • 理解计算机是如何工作的

    根据冯诺依曼体系结构计算机可从硬件和软件两个角度进行分析,硬件部分较为复杂,不仅有CPU还有各种存储设备,存储设备为CPU的运行服务。CPU通过执行总线传输的多种指令完成工作,通过内置的各种软件将命令“翻译”成机器可识别的指令,执行指令的过程体现在不断地在寄存器中存储、撤销数据,最终完成“计算过程”。

  • 理解操作系统是如何工作的

    操作系统也有“两把剑”,分别是中断上下文和进程上下文的切换。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统通过对进程的控制完成每项事物,进程通过控制数据的压入、弹出堆栈,设置时间片等方式进行进程上下文的切换和中断,从而让操作系统可以正常工作

  • 理解Linux系统启动过程

    startkernel是内核启动的起点,存在于init目录下main.c文件中。initkernel即手工创建的PCB,0号进程即最终的idle.不论分析内核的哪一部分都会涉及startkernel,模块初始化时需要调用startkernel。在startkernel中最后一句restinit是start_kernel从内核启动时就一直存在的0号进程,0号进程创建了1号进程和其他的内核服务线程。当系统中没有进程序需要执行时就调度idle进程也就是说一个内核启动时就存在一个0号进程,0号进程创建了1号进程,一个进程创建另一个进程和线程,一生二,二生三,三生万物,系统内核就启动了

在学习《Linux内核分析》课程中最大的收获?学习完《Linux内核分析》课程后您最大的遗憾是什么?

  • 收获

我接触到了Mooc这种学习的方法,让我对Linux内核有了一定的了解,虽然以前的基础知识并不扎实,但是这种深入浅出的讲解方式让我更快地接受了所讲授的内容,通过视频讲解可以对不理解的的地方反复学习,课后测验,配套实验,在学中做,在做中学,效果非常明显。

  • 遗憾

内容的安排有些少,同时希望在课程中多加一些Linux操作的基础知识,这样我们可以既了解内核又能熟练掌握使用方法,自己做更多的尝试与探索。

posted on 2016-04-30 14:02  zjq9  阅读(170)  评论(0编辑  收藏  举报