怎样开发一个自身的挪动OS

一位独立开发者Gusc提前准备开发自身的系统软件了,可是今日他提前准备共享一下实际如何开发的流程。

针对初学者而言,便是给你的编码取得成功在CPU上运作,且不用一切底层操作系统,但最先你得有一个计划:

一. 计划

1. 看准当代构架,Intel 64,例如Ivy Bridge, 英特尔酷睿3rd i5 CPU 集成化Intel HD 4000 GPU 及其 B75 Express主板芯片组

2. 防止遗留下数据信息,尽早的删掉他们,乃至能够绕过安全模式而直接进入长方式

3. 尽早跳到C语言

4. 忘记旧PCI、IDE、PS/2、串行通信/并行处理端口号;也忘记BIOS( Basic Input Output System)、UEFI,自己提前准备看准PCIe, SATA, USB

5. 防止应用GRUB或一切别的multiboot正确引导装车程序流程,一切以C编码为唯一实行编码

二. 更详细的一些计划

1. 应用C、C 和一些时兴的开发语言(Python 或 interpreted C):C做为核心和关键途径語言;C 做为GUI的語言;客户室内空间应用开发语言,沒有编译程序,也可以深层集成化到操作系统,可让撰写应用软件更为非常容易

2. 模式驱动程序根据URI,比如:file://localhost/my documents/ or just /my documents/ in the file browser

3. 无需Unix文件目录树,这一不可以告知客户什么,例如我第一次应用/ etc并不了解它是是存储配置文档的含意,也分不清楚 /bin, /usr/bin及其 /usr/local/bin 的含意。只是简易的:

/applications –安裝客户室内空间应用软件

/configuration – 储存全部客户室内空间环境变量

/documents – 储存客户全部的文档

/system – 它是系统目录 – 这一文件目录除开驱动器和核心不可以被所有人浏览这些

4. 针对建立API是我自身的一些念头, 无需POSIX,它仅仅API上的一个抽象性层

5. 从一开始应用GUI,指令BIOS显示信息一个讨人喜欢的logo并尝试防止一切闪动

三. 从我本人的科学研究我所发觉的事儿是

1. 起动次序:BIOS、Master Boot Record (MBR)、Bootloader、核心

2. 在Windows上, 怎样撰写自身的MBR并将它提到硬盘上。我已经用Visual C 写了小应用工具,容许立即从硬盘读/写

3. 怎样用Visual Studio撰写作用

四. 有效的专用工具

1. Visual C 2010 Express Edition ——自己用的XP,因此 不起作用VS2012 Express

2. Netwide Assembler

3. Bochs——x86手机模拟器, 因此 你不用载入硬盘, 联接、起动、见到不正确, 关掉,调用你的核心, 载入硬盘

4. Cygwin—Windows Unix 专用工具

Via gusc.lv

雷锋网 济慈专稿,转截请标明来源于雷锋网及创作者)

原创文章,作者:纳点网,如若转载,请注明出处:https://na.wang/zx/yytg/id/12455.html