作为完全自主开发的面向嵌入式应用的操作系统,Hello China目前已发展到V1.75版本。目前具备比较完善的内核、文件系统(FAT32/NTFS)、图形用户界面、网络协议、模块化支持等功能。本文对V1.75在PC下的安装和使用进行描述,以与广大操作系统爱好者做一交流,同时希望能够通过实际应用,对这个操作系统进行测试。
Hello China在Windows 7上的安装
Hello China可直接安装在运行Windows 7的个人计算机上。这里的安装,实际上只是拷贝了一些操作系统内核文件到根目录,可随便删除,不会对系统造成影响。之所以安装在现有操作系统上,是为了利用windows的操作系统引导功能,完成Hello China的引导。这也是为了充分兼容的目的,毕竟格式化一个分区,进行彻底的安装,对用户来说代价太大。具体安装步骤如下:
1、 安装目录(bin目录)下有三个子目录,分别对应FAT32文件系统的windows操作系统、NTFS文件系统的操作系统、虚拟机等。根据您C:盘的文件系统类型(NTFS或是FAT32),选择一个目录进行安装。把该目录下的文件拷贝到计算机C盘的一个任意目录下,比如hcninst目录;
2、 进入到DOS命令行模式,并定位到上述目录,执行batch即可。batch是一个批处理文件,该文件直接调用了安装目录下的相关工具生成内核,并拷贝到根目录下。同时在C盘上创建了PTHOUSE目录,用于存放Hello China V1.75版本的二进制系统模块和二进制应用模块;
3、 使用bcdedit命令,对Vista或WIN7的系统加载器进行配置,具体过程如下:
a) 运行cmd,进入命令行界面;
b) 运行命令:bcdedit /create /d "Hello China V1.75" /application bootsector,完成后会生成一个GUID,其中”Hello China V1.75”可以修改为任意内容,如下:
生成的GUID内容(即大括号内的十六进制数字串)会不同,但只要提示成功即可。注意,这个生成的GUID在后续命令中会用到,因此要记录或拷贝下来;
c) 运行命令:bcdedit /set {9cebaca7-4dc0-11df-8cf7-d93e49e38653} device partition=C:,注意大括号中的GUID就是上面/CREATE命令生成的GUID。这条命令告诉Vista,启动扇区位于C盘上;
d) 执行命令:bcdedit /set {9cebaca7-4dc0-11df-8cf7-d93e49e38653} path \bootsect.dos,大括号中的GUID仍然是上述GUID。该命令告诉Vista,引导扇区文件名字是bootsect.dos。注意bootsect.dos前面的“\”一定要有,否则无法成功;
e) 执行命令:bcdedit /displayorder {9cebaca7-4dc0-11df-8cf7-d93e49e38653} /addlast,告诉Vista操作系统,把新增加的项添加到启动列表的最后。
上述步骤执行完之后,重新启动计算机(一定要重新启动计算机,从睡眠模式恢复是不行的,因为这种情况下,windows会忽略操作系统加载过程),就可以看到新增加的引导项了。这时候选择该引导项,并按回车,即可引导Hello China。
也可以安装在Windows XP操作系统上,具体安装过程的前两步(上述1、2两个步骤)与windows 7相同,第3步如下:
1、 修改跟目录下的boot.ini文件,增加下列一行:
C:\BOOTSECT.DOS="Hello China V1.75"
同时确保启动等待时间(boot.ini中的timeout值)足够长,比如30秒。
比如,原始的boot.ini文件可能如下:
[boot loader]
timeout=0
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="MicrosoftWindows XP Professional" /noexecute=optin /fastdetect
修改后的BOOT.INI文件如下:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="MicrosoftWindows XP Professional" /noexecute=optin /fastdetect
C:\BOOTSECT.DOS="HelloChina V1.75"
注意黑体部分是修改或增加的内容。
如果boot.ini文件不允许修改(因为该文件是系统文件,增加了只读保护),可通过执行attrib命令去掉只读属性:
attrib –R boot.ini
然后再进行修改。
完成安装后,可重新启动操作系统,选择“Hello China V1.75”,就可通过Hello China操作系统引导计算机了。
注意事项:
1、如果您的计算机上原来就有多个操作系统,比如既有windows XP又有dos,则在安装前,请先到C:盘根目录下检查是否存在bootsect.dos文件。如果存在,就不要安装了,因为Hello China安装程序会覆盖掉原来的bootsect.dos文件;
2、下载的附件中存在几个DLL文件,很多病毒检测程序会有病毒告警。这是因为这些DLL文件中包含许多特权指令,导致病毒检测程序误判。忽略这些告警即可;
3、为确保安全,本版本禁止了硬盘的写入功能,只提供了硬盘的读取功能。使用FS程序,可浏览计算机上的文件系统,但是不能修改或格式化硬盘。
Hello China的使用
引导完成后,缺省进入字符界面,可通过help命令列出所有可执行命令,如下:
通过fs程序提供的文件操作命令,可查看当前的文件系统,如下:
通过执行gui命令,可切换到图形模式。系统自带了日历等几个小程序,可在图形模式下运行,如下:
注意,如果您的鼠标是USB接口,由于Hello China V1.75没有附加USB接口驱动程序,这时候会无法使用鼠标。
在图形模式下,按“CTRL + ALT + DEL”组合键,可切回到字符shell模式。字符shell模式下按该组合键,则会重新启动,与执行reboot命令效果一样。
资源下载地址
Hello China V1.75的安装二进制文件和源代码,可从下列地址下载:
http://download.csdn.net/detail/hellochina15/3973915
其它事项
在虚拟机上的安装方式比较简单,实际上已经生成了一个针对虚拟机的虚拟软盘(VirtualPC目录下的VFLOPPY.VFD文件)。只要使用该虚拟软盘引导虚拟机即可。但虚拟机上由于没有HCNGUI.BIN等GUI模块,因此不能使用GUI功能。可以把计算机C:盘(已安装Hello China的前提下)的PTHOUSE目录下的所有文件,复制到虚拟机的C:盘的同样目录下,来解决这个问题。
至于Hello China操作系统在Windows上的启动原理,请参考下列blog:
http://blog.csdn.net/hellochina15/article/details/7015905
联系信息:
作者:辛庆祥,操作系统开发爱好者,目前正从事开源操作系统Hello China的开发,曾以蓝枫叶为笔名,出版《嵌入式操作系统:设计与实现》一书。Hello China开发QQ群:38467832 新浪微博:http://weibo.com/2196920292