文章目录

  • 前引
  • 章节博客链接
  • 实现源码链接

前引


这本《操作系统真象还原》里面一共有十五个章节 大约760页
这些系列博客也是我在做完哈工大操作系统Lab之后 觉得还是有些朦朦胧胧 毅然决然打算去实现一个操作系统而做的

写这些博客呢 哈哈 主要我是想记录一下 从零开始写操作系统的一步一步到最后实现完的过程 有超级多的收获当然也有遗憾
遗憾之处就在于 最后的三个小功能我没有实现 也就是十五章的最后的小三节 我在实现exec的时候 自己debug了整整一天都没有调试成功 因为这里没有成功 后面的两个wait 和 exit 以及管道我也就都没有实现了

还是挺遗憾的 毕竟还是花了很久的时间来写这个操作系统 一步步 一行行代码自己敲上去的 基本上里面百分之九十五以上的代码都是我理解完了才敲上去的 当然还有很多是以我自己的理解最后把代码实现上去的

这本书里面还是有挺多小错误的 很多时候一些功能不能实现 或者是有一些代码上面的错误 我都基本上我都自己修正了 并在博客中发现的错误都做了声明 当然瑕不掩瑜 这本书仍然是我觉得为数不多的现在愿意很认真的去读 并一行行去看的好书

总得来说 自己还是挺开心的 操作系统除了最后的三个小功能 其他的都实现了 完成度还是相当高的 就是debug的时候 可能一改就是一天 哈哈
但总而言之 现在也已经对于我来说做完了 我写这些博客 还是真的很详细的去记录我的思路和我的一些想法 也是真的希望能够给一些也打算实现操作系统或者是好奇操作系统有些功能怎么实现的hxd 一些启发 哈哈

刚刚统计了一下代码行数 算上MakeFile以及头文件的行数的话 大概是7800行 如果抛去那些只算核心代码行的话 大概还是有6000行左右 哈哈 我写操作系统的时候 很多时候都在省代码行数 能简洁不用大括号的地方 我就没用 我也没想到自己能坚持下来写这么多行 算出来有这么多行的时候自己也震惊了一下 哈哈 还是挺不容易的

纸上得来终觉浅 绝知此事要躬行
希望我写的这些博客能够帮助到各位 如果能帮助到那就是再好不过了 各位有缘江湖再见!


章节博客链接


《操作系统真象还原》第一章 ---- 安装Vmware Station 安装Ubuntu 装载配置Bochs 安装Vmware tools 开始乘帆历险!
《操作系统真象还原》第二章 ---- 编写MBR主引导记录 初尝编写的快乐 雏形已显!
《操作系统真象还原》第三章 ---- 完善MBR 尝汇编先苦涩后甘甜而再战MBR!
《操作系统真象还原》第四章 ---- 剑指Loader 刃刺GDT 开启新纪元保护模式 解放32位
《操作系统真象还原》第五章 ---- 轻取物理内存容量 启用分页畅游虚拟空间 力斧直斩内核先劈一角 闲庭信步摸谈特权级
《操作系统真象还原》第六章 ---- 开启c语言编写函数时代 首挑打印函数小试牛刀 费心讨力重回gcc降级 终尝多日调试之喜悦
《操作系统真象还原》第七章 ---- 终进入中断处理拳打脚踢 操作系统日渐成熟 目前所有代码总览
《操作系统真象还原》第八章 ---- 初入内存管理系统 涉足MakeFile 了解摸谈一二
《操作系统真象还原》第九章 ---- 终进入线程动斧开刀 豁然开朗拨云见日 还需解决同步机制才能长舒气
《操作系统真象还原》第十章 ---- 线程打印尚未成功 仍需此章锁机制完善努力 在前往最终章的路上激流勇进
《操作系统真象还原》第十一章 ---- 实现用户进程 欺骗CPU通彻进程原理 眺望终点到达还需砥砺前行
《操作系统真象还原》第十二章 ---- 实现系统调用深入浅出 进一步完善堆内存分配与Printf函数 让用户进程有话可说(上)
《操作系统真象还原》第十二章 ---- 实现系统调用深入浅出 进一步完善堆内存分配与Printf函数 让用户进程有话可说(下)
《操作系统真象还原》第十三章 ---- 编写硬盘驱动软件 行百里者半九十终成时喜悦溢于言表
《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(上一)
《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(上二)
《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(中一)
《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(中二)
《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(下一)
《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(下二)
《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(总结篇)
《操作系统真象还原》第十五章 ---- 实现系统交互 操作系统最终章 四十五天的不易与坚持终完结撒花(上)
《操作系统真象还原》第十五章 ---- 实现系统交互 操作系统最终章 四十五天的不易与坚持终完结撒花(中)
《操作系统真象还原》第十五章 ---- 实现系统交互 操作系统最终章 四十五天的不易与坚持终完结撒花(下)


实现源码链接


GitHub初学者教程链接: GitHub 从零开始的保姆级使用教程
GitHub链接源码:Love 6 Tiny_OS GitHub源码仓库

《操作系统真象还原》从零开始自制操作系统 自写源码实现 (基础汇编文件 + 编译链接命令 + MakeFile)
《操作系统真象还原》从零开始自制操作系统 自写源码实现 (kernel相关文件)
《操作系统真象还原》从零开始自制操作系统 自写源码实现 (thread相关文件)
《操作系统真象还原》从零开始自制操作系统 自写源码实现 (lib相关文件)
《操作系统真象还原》从零开始自制操作系统 自写源码实现 (userprog相关文件)
《操作系统真象还原》从零开始自制操作系统 自写源码实现 (fs相关文件)
《操作系统真象还原》从零开始自制操作系统 自写源码实现 (device相关文件)
《操作系统真象还原》从零开始自制操作系统 自写源码实现 (shell相关文件)

《操作系统真象还原》从零开始自制操作系统 全流程记录相关推荐

  1. 多线程操作时操作系统时间片_从零开始自制操作系统(15):内核多线程

    1.多线程原理: (1)概述: 多线程是指CPU可以在一段时间中并行执行多个程序,比如我们可以一边听音乐.一边写代码(这两个程序可以"同时进行",我们称之为多进程,而多进程实现的本 ...

  2. 《操作系统真象还原》从零开始自制操作系统 自写源码实现 (fs相关文件)

    文章目录 专栏博客链接 fs相关文件 编写完的dir.c 编写完的dir.h 编写完的file.c 编写完的file.h 编写完的fs.c 编写完的fs.h 编写完的inode.c 编写完的inode ...

  3. 《操作系统真象还原》第十三章 ---- 编写硬盘驱动软件 行百里者半九十终成时喜悦溢于言表

    文章目录 专栏博客链接 相关查阅博客链接 本书中错误勘误 部分缩写熟知 闲聊时刻 提前需要准备编写的函数 实现printk 实现sprintf函数 创建从盘 创建从盘的步骤 修改后的bochsrc.d ...

  4. 《操作系统真象还原》第十五章 ---- 实现系统交互 操作系统最终章 四十五天的不易与坚持终完结撒花(上)

    文章目录 专栏博客链接 相关查阅博客链接 本书中错误勘误 闲聊时刻 实现fork 实现fork的介绍 实现fork的原理 编写完的thread.c(fork_pid) 编写完的thread.h(str ...

  5. 《操作系统真象还原》第二章 ---- 编写MBR主引导记录 初尝编写的快乐 雏形已显!

    文章目录 专栏博客链接 前引 相关术语 理清操作系统启动程序运行流程(部分) 编写MBR引导内容 编译并检验mbr.bin Linux dd 磁盘操作指令与参数 模拟操作试一试 结束语 专栏博客链接 ...

  6. 《操作系统真象还原》第九章 ---- 终进入线程动斧开刀 豁然开朗拨云见日 还需解决同步机制才能长舒气

    文章目录 专栏博客链接 相关查阅博客链接 本书中错误勘误 进程 线程的自我小理解 线程 进程的状态 内核级线程 & 用户级线程 初步实现内核级线程 浪费两三个小时调试的辛酸史 编写thread ...

  7. 《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(上一)

    文章目录 专栏博客链接 相关查阅博客链接 本书中错误勘误 部分缩写熟知 闲聊时刻 实现文件系统的原理 inode构建原理 目录构建原理 超级块构建思路 创建文件系统 编写完的super_block.h ...

  8. 《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(上二)

    文章目录 专栏博客链接 相关查阅博客链接 本书中错误勘误 闲聊时刻 部分缩写熟知 实现文件描述符的原理 文件描述符的介绍 文件描述符与inode的介绍 文件描述符与PCB的描述符数组的介绍 实现文件操 ...

  9. 《操作系统真象还原》第十四章 ---- 实现文件系统 任务繁多 饭得一口口吃路得一步步走啊(总结篇)

    文章目录 专栏博客链接 闲聊时刻 第十四章代码总览 编写完的fs.c(fs/fs.c) 编写完的fs.h(fs/fs.h) 编写完的dir.c(fs/dir.c) 编写完的dir.h(fs/dir.h ...

最新文章

  1. 数据集和神经网络共同进步之代码之路
  2. VMware上centos系统忘记账号和密码解决
  3. 不要通过终止进程的方式清理内存
  4. ▲我的css架构理念
  5. Python程序中的线程操作-锁
  6. jquery自己主动旋转的登录界面的背景代码登录页背景图
  7. Spring MVC : 概念模型 HandlerMethod(转载)
  8. pycharm不同py文件共享参数_PyCharm安装笔记
  9. hdu4292Food(最大流Dinic算法)
  10. python面试题百度云下载_分享三道Python经典面试题
  11. PullToRefreshListView相关
  12. md5校验工具hash
  13. [源码和文档分享]基于Android的家庭学校联系平台APP开发与实现
  14. Arch-004ArchLinux搜狗输入法安装
  15. wireshark读写pcap文件_使用wireshark分析tcpdump出来的pcap文件
  16. 红警conquer.mix文件
  17. html tbody接收数据,html tbody标签怎么用
  18. POSTGRESQL 差点发生一次冻结炸弹后的反思
  19. [PCIe]PCIe设备在一个系统中是如何发现与访问的
  20. GN_2_使用GN编译自己写的程序

热门文章

  1. 套接字服务器打开显示未知文件异常,TCP-socket异常情况
  2. 广告活动新模式--手机应用推广和微信关注
  3. 获取屏幕宽度的几种方法
  4. 嵌入式软件开发工程师与FPGA开发工程师
  5. SDIO接口(2)——SD卡寄存器
  6. Java Swing弹出对话框之选择对话框OptionDialog
  7. AWS Assume IAM role 的使用
  8. 游戏开发中的不同角色
  9. oracle 二进制与运算,ORACLE使用函数对二进制、十进制、十六进制数互相转换
  10. 计算机毕设Python+Vue综合众筹网站(程序+LW+部署)