文档

GridOS操作系统系统开发、调试、运行和常见问题说明,以及我们的行动计划

  GridOS可以在Windows/Linux/Mac等主流平台上开发。编译器用的是标准的GCC,虚拟测试环境用的是QEMU虚拟机。本节将描述在不同的平台上如何编译、运行GridOS。调试功能目前支持的不够好,只能用“printf”进行跟踪。在做开发工作前,请用github在本地址下载源码。

Linux开发平台

1、必要软件

  为了编译和运行GridOS,Linux 平台要装:qemu-1.6(需要SDL支持,x86_64虚拟支持)、gcc (最好是4.4以上版本)。

2、编译

  打开控制台并设置MY_BUILD_BASE到GridOS源码根目录,如export MY_BUILD_BASE="/root/GridOS"。由于我们是完全模块化开发,你在第一次下载到源码后,需要对整个工程进行全部编译,否则会缺少一些必要的模块。为此,你在获取到全新的源码后在源码的根目录执行:make 即可。之后如果你修改了某部分的代码,只需要编译这部分代码即可。如果是常规可执行模块,编译后会生成动态库或者可执行文件(具体查看模块开发管理平台)。如果是内核相关的模块,在编译完成后要在source/kernel目录下输入make,进行最终的连接。

3、运行

  这里介绍用Qemu虚拟机运行的方。

  3.1、从本地址下载虚拟磁盘,并通过 mount -o loop,offset=32256 hd0.img /mnt/gridos_disk 挂载到linux操作系统中。

  3.2、把源码目录中的release中的内容全部拷贝到虚拟磁盘中,如:cp -rf /root/GridOS/release/* /mnt/gridos_disk。

  3.3、最后通过命令启动虚拟机运行GridOS: ./qemu-system-x86_64 -L bios -m 256 -serial file:debug.txt -boot c -usb -drive id=disk,file=hd0.img,if=none -device ahci,id=ahci -device ide-hd,drive=disk,bus=ahci.0 -localtime -soundhw es1370 -net nic,model=rtl8139。

  本地址这里有一份编译好的qemu1.6 for linux的运行环境。

Windows开发平台

  Windows 开发平台与Linux开发平台的思路一样:编译、把编译好的系统拷贝到虚拟磁盘中,然后通过qemu运行。

  本地址这里有一份MinGW(Windows平台上的gcc环境),把它解压到C盘,运行其中的C:\mgw_x86\msys\1.0\msys.bat 即可启动gcc开发环境。

  本地址这里有一份操作虚拟磁盘镜像的工具,把它解压到C盘。在编译和连接完系统模块后,在MinGW控制台输入make to_image则自动启动该工具把release中编译好的系统拷贝到虚拟磁盘。

  本地址这里有一份qemu虚拟机,把它解压到D盘。运行其中的run.0.15.bat即可启动虚拟机。

  虚拟磁盘下载的地址见Linux开发平台中的地址,下载后把它解压到d:\q64目录中,最终的地址应该是d:\q66\hd0.img。

  GridOS的模块开发具体内容、设计、负责人、进度BUG等相关信息在项目管理平台上。来自互联网上的一些同学在成为了正式的开发者后能用自己的账号登陆管理平台,并反馈自己的开发情况和问题讨论结果。如果你对GridOS的开发内容感兴趣也可以通过guest/guest000账户登陆观看我们的开发。

  TODO

有什么建议或者意见,请让我们知道。