第二篇 自制系统内核
为了学习一个操作系统里边具体的功能设计和思想,也参考的自制内核系列书籍:《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内核。
第二篇 自制系统内核相关推荐
- Django框架之第二篇
Django框架之第二篇 一.知识点回顾 1.MTV模型 model:模型,和数据库相关的 template:模板,存放html文件,模板语法(目的是将变量如何巧妙的嵌入到HTML页面中). view ...
- java设计模式中不属于创建型模式_23种设计模式第二篇:java工厂模式定义:工厂模式是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式...
23种设计模式第二篇:java工厂模式 定义: 工厂模式是 Java 中最常用的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 工厂模式主要是为创建对象提供过渡接口, ...
- 深入理解javascript函数系列第二篇——函数参数
前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传进来的参数是什么数据类型,甚至可以不传参数.本文是深入理解javascript函数 ...
- Spotify敏捷模式详解三部曲第二篇:研发过程
本文转自:Scrum 中文网 引言 在本系列文章的第一篇,我们介绍了Spotify的敏捷研发团队,以及它独特的组织架构.Spotify的研发团队采用的是一种非常独特的组织架构,如下图所示: 整个研发组 ...
- SAP PP COR2下达工单系统报错说-系统状态APNG是激活的- 分析第二篇
SAP PP COR2下达工单系统报错说-系统状态APNG是激活的- 分析第二篇 笔者所在的项目上启用了ECM(Engineer Change Management)功能,重要数据的修改都要事先创建一 ...
- 学习动态性能表 第二篇--v$sesstat
学习动态性能表 第二篇--v$sesstat 按照OracleOnlineBook中的描述,v$sesstat存储session从login到logout的详细资源使用统计. 类似于v$syssta ...
- 初学Python——文件操作第二篇
前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...
- ASP.NET自定义控件组件开发 第一章 第二篇 接着待续
ASP.NET自定义控件组件开发 第一章 第二篇 接着待续 ASP.NET自定义控件组件开发 第一章 第二篇 接着待续 很感谢大家给我的第一篇ASP.NET控件开发的支持!在写这些之前,我也看了一些例 ...
- Redis入门第二篇【存储数据结构之string类型】
tags: Redis title: Redis入门第二篇[存储数据结构之string类型] Redis存储的数据结构 Redis支持的数据结构有好几种: It supports data struc ...
最新文章
- 如何使用jquery判断一个元素是否含有一个指定的类(class)
- Sqli-labs less 62
- 误用.Net Redis客户端工具CSRedisCore,自己挖坑自己填
- picturebox与imagelist使用选择图片
- this关键字实现串联构造函数调用
- 分布式锁用Redis坚决不用Zookeeper?
- Redmi 10X Pro 5G曝光:四种配色、两种存储版本可选
- 萌新的Python练习实例100例(一)四个数字组成互不相同且无重复的三位数
- GitHub的Fork 是什么意思
- 跨境茶话会8月期丨性能优化的艺术
- 群晖nas 文件服务器,群晖nas挂到云服务器上
- linux系统下能玩网页游戏下载软件,最适合玩游戏的Linux 系统
- 在当前网页中内嵌一个网页框架
- Redis缓存击穿、雪崩、穿透!(超详细)
- 专用小交换机(PBX)的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- 计算你来到世界多少天
- Windows控制面板中英文对照表
- 软件性能测试、分析与调优实践之路_读书笔记(一)
- Android图表库MPAndroidChart(四)——条形图的绘制过程过程,隐隐约约我看到了套路...
- cesium实现绘制网格效果