Linux内核分析——第三周学习笔记20135308

Posted 一勺水也做了海

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux内核分析——第三周学习笔记20135308相关的知识,希望对你有一定的参考价值。

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

计算机三个法宝:

1、存储程序计算机

2、函数调用堆栈

3、中断

操作系统两把宝剑:

1、中断上下文的切换:保存现场和恢复现场

2、进程上下文的切换

一、阅读Linux内核代码

本周我们要学习如何阅读Linux内核源代码,首先打开Lstest Stable Kernel:linux-3.18.6

技术分享

arch/目录在Linux内核中占有相当庞大的代码量,因为Linux支持很多CPU,这个arch/x86目录下的代码是我们重要关注的代码

技术分享

根目录中比较关键的目录:

  • Documentation/文档
  • fs/文件系统
  • init/内核启动相关的代码基本都在init目录下,里面的main.c是整个Linux内核启动的起点。它的起点是start_kernel

start_kernel函数相当于普通C程序的main函数

技术分享

如上图所示,第500行这里就是初始化Linux内核的起点,之前的部分是汇编做硬件初始化。

 

  • ipc/进程间通信
  • kernel/Linux内核的核心代码在kernel目录中
  • lib/公用的库文件
  • mm/memmory management内存管理
  • net/与网络相关的代码
  • security/与安全相关的代码
  • scripts/脚本

以上加粗的部分为我们重点关注的。

 

二、构造一个简单的Linux系统MenuOS

方法一:使用实验楼的虚拟机打开shell

技术分享

以上是关于Linux内核分析——第三周学习笔记20135308的主要内容,如果未能解决你的问题,请参考以下文章

Linux内核设计第三周学习总结 跟踪分析Linux内核的启动过程

2017-2018-1 20179219 《Linux内核原理与分析》第三周作业

Linux内核分析(第三周)

魏昊卿——《Linux内核分析》第三周作业:Linux系统启动过程

Linux内核及分析 第三周 Linux内核的启动过程

20135327郭皓--Linux内核分析第三周 构造一个简单的Linux系统MenuOS