为了学习一个操作系统里边具体的功能设计和思想,也参考的自制内核系列书籍:《30天~~~》和《orange一个操作系统的设计》还有网上等开源的内核,自制了一个简单的操作系统。

最开始从《30天自制操作系统》位主要参考书籍,但是到后面发现换到ubuntu系统下,想用nasm和gcc代替,做了大量的修改,最后还是觉的以《30天~~~》作为主要参考不好,选择以hurlex的文档作为参考比较好。

这里贴上我的内核git地址:https://github.com/wangrongwei/DeeppinkOS

代码实现以最简单的方式为目的,在README里边详细记录了遇到的bugs和完善步骤,(当然有些记录不全,慢慢补上),始终觉的不管是《30天自制~~》或者是《orange~~》都不太适合初入内核的开发者,当然也不一定第一遍看这种书就能慢慢的跟着写一个内核,尤其是像我这样的没有系统学过操作系统理论的:看了一段时间orange书,看不下去了,过一年感觉理论知识增长了,又来看《30天~~~》,想了想,其根本就是没有好好研究intel开发者手册那三套,但是呀,那英文版的,着实需要花太多时间看,要是有一本书介绍Intel这种i386芯片的书就好了(似乎不现实)

关于内核设计书,还可推荐《linux内核设计的艺术》,有一种相见恨晚的感觉。

写一个系统内核需要很多知识,希望慢慢完善README,让更多的内核爱好者快速的学习到内核中各种机制的本质,设计出自己的toy内核。

第二篇 自制系统内核相关推荐

  1. Django框架之第二篇

    Django框架之第二篇 一.知识点回顾 1.MTV模型 model:模型,和数据库相关的 template:模板,存放html文件,模板语法(目的是将变量如何巧妙的嵌入到HTML页面中). view ...

  2. java设计模式中不属于创建型模式_23种设计模式第二篇:java工厂模式定义:工厂模式是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式...

    23种设计模式第二篇:java工厂模式 定义: 工厂模式是 Java 中最常用的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 工厂模式主要是为创建对象提供过渡接口, ...

  3. 深入理解javascript函数系列第二篇——函数参数

    前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传进来的参数是什么数据类型,甚至可以不传参数.本文是深入理解javascript函数 ...

  4. Spotify敏捷模式详解三部曲第二篇:研发过程

    本文转自:Scrum 中文网 引言 在本系列文章的第一篇,我们介绍了Spotify的敏捷研发团队,以及它独特的组织架构.Spotify的研发团队采用的是一种非常独特的组织架构,如下图所示: 整个研发组 ...

  5. SAP PP COR2下达工单系统报错说-系统状态APNG是激活的- 分析第二篇

    SAP PP COR2下达工单系统报错说-系统状态APNG是激活的- 分析第二篇 笔者所在的项目上启用了ECM(Engineer Change Management)功能,重要数据的修改都要事先创建一 ...

  6. 学习动态性能表 第二篇--v$sesstat

    学习动态性能表 第二篇--v$sesstat  按照OracleOnlineBook中的描述,v$sesstat存储session从login到logout的详细资源使用统计. 类似于v$syssta ...

  7. 初学Python——文件操作第二篇

    前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...

  8. ASP.NET自定义控件组件开发 第一章 第二篇 接着待续

    ASP.NET自定义控件组件开发 第一章 第二篇 接着待续 ASP.NET自定义控件组件开发 第一章 第二篇 接着待续 很感谢大家给我的第一篇ASP.NET控件开发的支持!在写这些之前,我也看了一些例 ...

  9. Redis入门第二篇【存储数据结构之string类型】

    tags: Redis title: Redis入门第二篇[存储数据结构之string类型] Redis存储的数据结构 Redis支持的数据结构有好几种: It supports data struc ...

最新文章

  1. 如何使用jquery判断一个元素是否含有一个指定的类(class)
  2. Sqli-labs less 62
  3. 误用.Net Redis客户端工具CSRedisCore,自己挖坑自己填
  4. picturebox与imagelist使用选择图片
  5. this关键字实现串联构造函数调用
  6. 分布式锁用Redis坚决不用Zookeeper?
  7. Redmi 10X Pro 5G曝光:四种配色、两种存储版本可选
  8. 萌新的Python练习实例100例(一)四个数字组成互不相同且无重复的三位数
  9. GitHub的Fork 是什么意思
  10. 跨境茶话会8月期丨性能优化的艺术
  11. 群晖nas 文件服务器,群晖nas挂到云服务器上
  12. linux系统下能玩网页游戏下载软件,最适合玩游戏的Linux 系统
  13. 在当前网页中内嵌一个网页框架
  14. Redis缓存击穿、雪崩、穿透!(超详细)
  15. 专用小交换机(PBX)的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  16. 计算你来到世界多少天
  17. Windows控制面板中英文对照表
  18. 软件性能测试、分析与调优实践之路_读书笔记(一)
  19. Android图表库MPAndroidChart(四)——条形图的绘制过程过程,隐隐约约我看到了套路...
  20. cesium实现绘制网格效果

热门文章

  1. 解决office的PPT和WPS的PPT不兼容的问题
  2. 使用python opencv批量对贴图进行除透明边并压缩
  3. 浅谈扫描二维码登录微信网页版与摇一摇传图的实现原理
  4. 如何在html 中添加ppt文件,如何在ppt中插入网页
  5. 【Python】利用Python爬虫实现网页图片批量下载
  6. 你们都出去玩吧,我选择宅在家里「憋文章」
  7. CentOS安装sun java
  8. C++实现空间中两个三角形位置关系(相交、平行)的判断
  9. 动量梯度下降法 Momentum
  10. Python算法教程第三章知识点:求和式、递归式、侏儒排序法和并归排序法