构造一个简单的Linux内核的MenuOS

Posted 20135109

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构造一个简单的Linux内核的MenuOS相关的知识,希望对你有一定的参考价值。

---恢复内容开始---

一、Linux内核源代码简介

arch/x86目录下的代码是我们最重点关注的

fs/文件系统

init/内核启动相关的代码

start_kernel函数相当于C语言的main函数

kernel/Linux内核的核心代码

mm/内存管理代码

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

使用实验楼构造的实验截图:

技术分享

自己搭建实验楼的过程:

技术分享  技术分享

   技术分享

三、使用gdb跟踪调试Linux内核的方法

一、使用gdb跟踪调试Linux内核的方法

(1)使用gdb跟踪调试内核,冻结起来

技术分享

 (2)使用水平分割,新创建一个窗口使用gdb

技术分享

 

 技术分享

 

技术分享

 二、简单分析一下Start_Kernel

init_task 即手工创建的PCB,0号进程即最终的Idle进程。

trap_init 初始化中断,设置中断门,系统陷阱门。

init_process Linux系统的第一个用户态进程,根目录下的init程序(作为1号进程)由kernel_init创建。

rest_init 0号进程,一直存在的进程,创建1号进程。

当系统没有进程需要执行时就调度到idle进程。

以上是关于构造一个简单的Linux内核的MenuOS的主要内容,如果未能解决你的问题,请参考以下文章

Linux内核分析——构造一个简单的Linux系统MenuOS

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

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

linux内核分析 第三周 构造一个简单的Linux系统MenuOS

Linux内核分析— —构造一个简单的Linux系统MenuOS(20135213林涵锦)

Linux内核分析 笔记三 构造一个简单的Linux系统MenuOS ——by王玥