本项目参考清华大学操作系统网课实现的ucore,利用C语言和AT&T风格的x86-64汇编语言开发原型操作系统。最终,我从零开始,实现了一个基于长模式(64位)具有二态进程模型的原型操作系统。原型操作系统拥有以下功能:
-
利用手写的boot程序载入操作系统程序到硬盘里
-
依次进入实模式和64-bit的长模式
-
基于中断实现的系统调用功能和一些常用的系统调用号
-
利用系统调用以及中断实现键盘输入功能
-
基于时间片轮算法的进程调度程序
-
二态进程模型
-
长模式下的虚拟内存分配
-
长模式下的虚拟内存管理
-
简单的与用户交互程序
-
用C语言编写的,用于演示多进程执行情况的用户程序
-
实验一:利用汇编语言编写显示字符程序并在DOS系统中运行该程序
-
实验二:利用DOS系统的BIOS调用,实现一个能执行COM格式用户程序的监控程序
-
实验三:C与汇编开发独立批处理的内核
-
实验四:具有中断处理的内核
-
实验五:实现系统调用
-
实验六:实现时间片轮转的二态进程模型