嵌入式操作系统是整个嵌入式系统的核心,它具有实时性强、可靠性高等特点,在嵌入式系统中应用广泛。商用的嵌入式实时操作系统比如Vxworks、Nucleaus、QNX等价格比较昂贵,一般不适宜广泛应用。μC Linux是从Linux 2.0/2.4内核派生而来[2],适用于没有虚拟内存或内存管理单元(MMU)的处理器,它在标准的Linux基础上进行了适当的裁剪和优化,体积很小,而且保留了Linux的大多数的优点:稳定、良好的移植性、优秀的网络功能,并内嵌了TCP/ IP 协议。考虑到嵌入式μCLinux的以上优点,本系统选择采用嵌入式μCLinux作为嵌入式的实时操作系统。
嵌入式Web服务器(Embedded Web Server,简称EWS)是实现电网远程监测的重要组成部分和关键技术,利用嵌入式Web服务器可对电网进行监测和实时参数的传输[4]。嵌入式web服务器通过CGI接口或其他方法,可以在HTML文件或表单中运行代码,供RAM读/写数据。在μCLinux下,本系统选择使用一个支持CGI的、非常适合于嵌入式系统的Boa Web Server。在Boa Web Server使用时需要对与Boa相关的文件做一些配置和修改:
1) 建立存放目录
由于μClinux默认的根文件系统romfs是只读的,不能用mkdir等命令来新建目录,故应在编译内核前先建好要用到的目录,这通过修改../μClinux-dist/vendors/Philips/LPC2200/Makefile文件来实现。在ROMFS_DIRS=bin dev etc home lib mnt proc usr var的后边增加home/cgi-bin,这样修改后编译内核,编译好的根文件系统romfs中就包含这些目录了。
2) 指定Web服务器的根目录路径
进入../μClinux-dist/user/boa/src/目录,通过修改defines.h文件中#define SERVER ROOT “/home/”语句来指定SERVER ROOT。