Skip to content
/ miniOS Public

从零开始开发一个完整的微型操作系统

Notifications You must be signed in to change notification settings

wherego/miniOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

miniOS

windows、linux、unix、macOS,移动端ios、Android,以及嵌入式实时操作系统这些年来都逐渐变得成熟功能强大,但是作为一个计算机专业的学生,自己动手写一个简单的操作系统还是比较有必要的。
miniOS是一个完全从零开始开发的操作系统,开发过程中将参考Linux、Windows、uC/OS等操作系统。miniOS使用汇编和C开发,为了提高可移植性尽量使用C语言进行开发。开发该操作系统的主要有以下几个目的:

  • 学习并熟练使用汇编和C语言;
  • 学习计算机组成原理以及使用部分数据结构;
  • 深入理解计算机操作系统以及相关知识。

#特性

  • GUI
  • 多任务
  • ...

#下载和使用 目前miniOS的的开发平台是windows平台,没有使用集成开发环境,大部分开发工具来源于《30自制操作系统》,均改自一些开源软件,可以根据需求和开源协议使用,另外自己只需要提供一个代码编辑器即可,(如果没有合适的,推荐notepad++、visual studio code)。
下载后,不需要安装,找到根目录下的make.bat文件,双击运行,在cmd下控制运行,常用的指令为:

  • 'make',编译操作系统源代码并生成镜像文件miniOS.img,镜像文件放在miniOS文件夹的根目录下, 可以使用USBWriter.exe软件(在/z_tools/目录下)将镜像写入U盘,并在实体机上运行。
  • 'make run',编译生成镜像文件,并且在'qemu.exe'虚拟机上运行,该软件在/z_tools/qemu/目录下。
  • 'make clear',清理编译连接过程中的中间文件,最终生成的镜像文件也会删除。

###虚拟机运行结果 miniOS_GUI

#更新日志

  • 2016-02-11 GDT/IDT 初始化完成
  • 2016-02-15 PIC初始化
  • 2016-02-17 键盘和鼠标中断消息处理
  • 2016-02-23 内存管理

About

从零开始开发一个完整的微型操作系统

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published