larryli.cn
ANOS: AN Operating System - 一个操作系统 | 南靖男的时代
* ANOS: AN Operating System * Released under the terms of BSD Public Licence. * Larry Li (tryos@126.com), 2005 Version: 0.06 Released Time: 2005.3.29 Please waiting for next ANOS... ANOS 介绍: ANOS 是一个操作系统(AN Operating System)。一个尽可能简单的 i386 操作系统,或者说仅仅只是一个系统。不需要其他东东就可以在电脑中运行的程序。 ANOS 本身不是为了作为一个实用的 OS 而存在,而是为了作为一个 OS 演示而存在。尽可能简单的展示一个操作系统的具体代码就是 ANOS 的目的。虽然 Minix 还有 Linux 0.01/0.11 同样为我们提供这样的演示。但是 Minix 基于微内核以及完成很多额外工作(这是一个实用的系统所必须的),其代码还是相当庞大的。至于 Linux 初始版本,当然是研究一个小系统的好例子,但其代码有点混乱(很强的黑客风格)。而其他的小 OS 不是未完成就是有着这样那样的弊端。 弊端其中之一就是,我们当前多半使用的是 Win32 系统,而这些小 OS 很少是在 Win32 平台下开发的。仅仅靠阅读代码也无法了解 OS 的,所以研究起这些 OS 来缺少一个实际动手的机会。往往大家只是构筑一个研究用的平台就烦的撒手不干了。 所以,ANOS 选用 Win32 下 MinGW GNU C 编译器和 NASM 汇编器以及 QEMU 模拟器来进行开发。同时,ANOS 会根据进度发布一个 OS 在不同阶段的源代码包,展示 OS 开发中状态。并且尽可能的提供足够的文档资料以及代码注释。方便大家自己动手参与进 ANOS 的代码,了解 OS。 开发记录: 2005.3.29 v0.06 整理所有字符串信息(info.c,info.h) 添加内核命令行(kshell.c,kshell.h) 内核命令行行程编辑(kgetline.h) 内核命令计算器(ksiac.h) 2005.3.23 v0.05 添加键盘按键定义(key