1 Star 0 Fork 11

xtellaris / linux-0.12-1

forked from 一辉从天 / linux-0.12-1 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 2.45 KB
一键复制 编辑 原始数据 按行查看 历史
ultraji 提交于 2019-05-19 16:54 . 2019.05.19

linux-0.12 源码学习

参考《Linux内核完全剖析 --基于0.12内核》

linux-0.12目录为修改过的源代码,其中加入了中文注释,修改部分代码使其能在现在的环境下编译,并且支持GDB调试。(无任何修改的源代码 -> linux-0.12.tar.gz)

文件夹 说明
linux-0.12 linux-0.12源代码
oslab 实验目录
src 一些资源和笔记

一、实验篇

  1. ubuntu(>=14.04)的用户可以使用src/setup目录下的一键搭建脚本setup.sh

  2. 其他系统(包括ubuntu)的用户可以拉取已创建好的docker镜像作为实验环境,docker pull ultraji/ubuntu-xfce-novnc:os_learn

具体内容请查看 实验环境搭建及说明

二、踩坑篇

如有错误、疏漏之处,感谢指出。

实验相关

  1. 实验环境搭建及说明
  2. 常见编译问题总结
  3. 0.12内核代码bug修复
  4. Bochs调试技巧
  5. GDB调试技巧

知识积累

  1. C代码阅读提示
  2. 汇编中各寄存器的作用

系统总览

  1. 内核导言

建造工具 tools/

  1. 建造工具build的说明 相关文件:tools/build.c

系统引导 boot/

  1. Linux0.12的启动过程 相关文件:bootsect.S、setup.S

文件系统 fs/

  1. 文件系统概述 include/linux/fs.h
  2. 高速缓冲区的实现 相关文件:buffer.c
  3. write和read的实现 相关文件:block_dev.c、file_dev.c、char_dev.c、pipe.c、read_write.c

内存管理 mm/

C
1
https://gitee.com/xtellaris/linux-0.12-1.git
git@gitee.com:xtellaris/linux-0.12-1.git
xtellaris
linux-0.12-1
linux-0.12-1
master

搜索帮助