Linux内核学习总结

Linux内核学习总结

学习心得

1.计算机是如何工作的

复习了微机原理、汇编语言等相关知识,对计算机体系结构及工作原理有了更清晰的认识

2.操作系统是如何工作的?

复习了函数堆栈、时间片轮转等相关知识,对时钟中断模型有了实践性的认识

3.构造一个简单的Linux系统MenuOS

通过shell调试内核,对start_kernel到init进程启动的过程有了详细的认识

4.扒开系统调用的三层皮(上)

复习了用户态、内核态、中断等相关知识,对系统调用工作机制有了理解

5.扒开系统调用的三层皮(下)

通过调试分析系统调用内核函数,学习了系统调用流程,对系统调用处理过程有了理解

6.进程的描述和进程的创建

复习了进程相关知识,理解了进程创建的过程、新进程开始执行的位置

7.可执行程序的装载

复习了程序预处理、编译、装载等相关知识,跟踪了系统调用内核处理函数,理解了加载可执行程序所需处理过程

8.进程的切换和系统的一般执行过程

复习了进程调度相关知识,对进程调度时机、进程上下文切换机制、有了理解

作业目录

1.通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的
2.一个简单的时间片轮转多道程序内核代码
3.跟踪分析Linux内核的启动过程
4.使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用
5.分析system_call中断处理过程
6.分析Linux内核创建一个新进程的过程
7.Linux内核如何装载和启动一个可执行程序
8.理解进程调度时机跟踪分析进程调度与进程切换的过程

学习总结

学习linux内核分析中最大的收获:
消除了对内核代码的神秘感和阅读障碍,开始使用linux系统和vim编辑器
学习完linux内核分析后最大的遗憾:
大学没有机会选择相关专业学习

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

你可能感兴趣的:(Linux内核学习总结)