IT业,如果要问当今最热门的话题是什么,从事硬件开发的人会毫不犹豫地回答:信息家电;从事软件开发的人同样也会毫不犹豫地回答:Linux。事实上,多年以前,当人们在谈论 PDA、手持电脑、机顶盒时,后PC时代就到来了,或者说信息家电时代到来了。信息家电之所以直到现在才变得火爆,一个很重要的原因就是Linux的加入。廉价的Linux资源与信息家电结合,真正宣告了信息家电时代的到来!嵌入于信息家电(或其他设备)中的Linux——嵌入式 Linux,是国际软件界的一个新宠。Linux是个天生的网络操作系统,因为它是从Unix衍生出来的,Unix已经发展了几十年,成熟而且稳定。 Linux是Open Source的,任何人都可以修改它,或者开发自己的应用。Linux系统是可以定制的,系统内核最小时只有140kB。一个带有中文系统以及图形化界面的核心程序也可以做到不足1MB,而且同样稳定!因此,Linux作为嵌入式系统,是非常有潜力的。
国际上有数以百计的嵌入式 Linux开发计划,在国内,这方面的发展也是很快的。博利思软件公司在这方面做了一些有益的尝试,并于最近推出了一个嵌入式 Linux操作系统——PocketIX 预览版(下载网址为:www.pocketix.com/software/software.htm。)。PocketIX是一个内核基于标准 Linux的嵌入式操作系统,由一个体积很小的内核及一些可以根据需要进行定制的系统模块组成。其系统占用空间小、启动速度快、稳定性好,并具有多任务、多线程的特征。与传统的嵌入式系统相比,PocketIX采用标准的Linux结构,所有运行在标准Linux下的应用软件都可平滑移植到该系统上。
PocketIX的技术优势
标准的Linux系统通常用于服务器、桌面环境,很多功能和机制不适于做嵌入式系统,如安全系统、日志、大量的服务器程序等等。同时,有些嵌入式系统的特色功能,标准的Linux没有提供。为此,必须大规模地改造标准Linux。根据分析,嵌入式Linux产品可划分为Linux Thin Server/Thin Client、带有小GUI的Linux、无界面的Linux、基于PDA的Linux等四大系列。我们还知道,嵌入式系统与桌面系统一个很大的不同就是,嵌入式系统中并没有像桌面系统一样的WinTel联盟,CPU芯片更是五花八门,这就为开发者带来了很多的麻烦。PocketIX将来的版本将支持大部分的芯片和平台。
PocketIX的技术优势在于:
精简的内核设计 标准的Linux中,文件系统、驱动程序、网络支持等很多功能是在内核中实现的,所以其内核相当复杂。为此PocketIX保留了必要的功能,将无关的模块从内核中剔除。
瞬时开关机 标准Linux开机需要大量时间装载系统、检测并初始化设备和文件系统、启动驱动程序以及检查硬盘等工作,而嵌入式应用要求能够瞬时开机。所以PocketIX采用了存储映像和一系列相关技术,使系统可以瞬时加载。
良好的可移植性 考虑到Linux提供了丰富的开放源程序资源,系统必须提供与标准Linux一致的API,使得现有程序无须修改或少量修改即可使用。这里的API包括语法上的,如函数和系统调用的格式;也有语义上的,如相同的设备名有相同的功能。
GUI/汉字系统 标准的Linux通常采用X Window作GUI。对于某些嵌入式应用而言,这些程序太庞大了,为此,PocketIX采用了X和非X两种GUI系统。
精心构建的存储方案在服务器和桌面平台,存储器通常有硬盘、内存和网络资源等。标准的Linux针对各种存储介质,在容量、速度、成本的特点上采用了虚拟存储、缓冲等机制。在嵌入式平台上,内存比较小,通常采用Flash memory而不是硬盘作持久存储介质。针对这种特点,PocketIX取消了硬盘上的交换空间,并对内存分配过程安排了更为密集的管理,保持较充足的连续内存空间。在内存映射机制上,PocketIX大量采用共享库并提供了共享库的换出机制,减少内存消耗。
PocketIX的特征
PocketIX采用Linux标准内核,但对其进行裁减及补充,使其更紧凑。它采用图形化界面,目前所有的安装均可在Windows进行,且可由用户自行选择多种定制的图形界面。它采用国际标准化汉字处理技术,支持多种汉字输入技术。目前的应用中只提供一种汉字字体,以节省空间,但同时为了适应嵌入式的应用,允许用户自己加装字体。所有Unix及Linux程序均可平滑移植到PocketIX系统上。
PocketIX不带X的系统配置要求为内存 4MB、磁盘 5MB;带X的系统配置要求为内存 4MB、磁盘 20MB。PocketIX支持多种32位CPU ,目前支持Intel386以上的CPU,未来将支持ARM、Intel、Motorola、NEC等多种微处理器。
PocketIX支持标准以太网和TCP/IP协议、支持标准的X Window。中文支持采用国际化路线:
1、桌面管理器具有Win95风格,有标准的选单条、时钟、系统资源指示器和邮件按钮指示。
2、文件管理器类似于Windows的Explorer,同时提供文件管理器和Web浏览器及ftp客户端的功能。
3、一个标准的科学计算器。
4、一个功能增强的、类似于写字板的正文编辑。
5、F3可进入智能拼音输入方法;F7可进入五笔字型输入方法。
6、Ctrl+Space可在中文和英文输入方法之间切换。
7、提供了多桌面切换功能和大多数X Window的桌面管理器一样。
8、其它Linux下的应用可方便地移植到此系统中,用户可根据需要自己加上。
PocketIX的应用
PocketIX为嵌入式Linux 0.86预览版,它不用单独的Linux分区,只在c:下建个目录。系统占用20MB硬盘空间。为了方便试用,而又不影响原有环境,PocketIX没有单独为系统建立分区。
安装和删除
下载PocketIX文件包,解开之后,执行setup.exe即可,系统会装在C:Linux.PLG之下,从开始->程序选单中运行。第一次运行之前,先要到C:Linux.PLG下,点Linux.BAT文件,右键,“属性”,“程序”,“高级”,选中“MS-DOS方式”。通过“控制面板” 的“添加/删除程序”可以删除本系统。
以太网配置
暂用via-rhine网卡。如果不是,请把对应*.o模块文件拷到/lib/modules/2.2.13-18/net下,执行ldconfig,再在/etc/init.d/network 文件开始处(一定要在 ifconfig 之前),加入下面一行:imsmod 模块名。注意不用.o。
网络配置
均有缺省值可参考。在/etc/config/下有 hostname、 ipaddr、netmask、network、broadcast、gateway六个文件,其内容依次为主机名、IP地址、网络掩码、网络地址、广播地址、网关地址。修改即可。如果没有网关,在/etc/init.d/network 文件中注释掉(行首加#)gateway行。
鼠标
暂用串口鼠标,“Microsoft“协议,串口1(/dev/ttyS0)。否则改/etc/X11/XF86Config 中Pointer段。
如果是串口2,将/dev/ttyS0改为/dev/ttyS1,依此类推。
如果是PS/2鼠标,将“Microsoft“改为“PS/2“,/dev/ttyS0改为“/dev/psaux“。
显卡/显示器配置
显卡在/etc/X11/XF86Config 中Device和Screen段。暂用比较通用的SVGA,1MB显存。
如果显存为2MB,改“Device“段VedioRam行的“1MB“为“2MB“,依此类推。
如果显卡不是SVGA的,用对应X服务器(一个文件)覆盖“/etc/X11R6/bin/XF86_SVGA“即可。
显示器暂时配置
默认值:大小为640×480,垂直刷新率为60Hz,水平刷新率为24kHz,颜色深度为8位。
大小如果为800×600,将Device段Modeline “640×480“后(不包括本身)第2、6数字依次改为800、600。颜色深度如果为16位,将Screen段Depth行的8 改为16。
ftp/telnet Server
暂时未配。
运行X
以root登录后,键入 starx 即可。如有问题,想看看相关信息,请运行 startx 1。
PocketIX本身并不需要 Windows,为了便于安装、测试,系统不占用专门的分区。PocketIX For Windows PRE 0.86的安装程序分两个版本,带X的安装程序大小为16MB,安装展开后约为20MB左右。不带X的安装展开后约为4M。
PocketIX在以下环境下运行良好
研华PCM-3346。一个典型的all-in-one CPU板,其构成为标准的PC/104模块,尺寸90×96cm,号称市场上最小的、完整的SBC。技术指标如下:
1、集成于主板的CPU:ST Thompson DX-66 STPC Client(相当于Intel486/66)。
2、 BIOS: AWARD 256KB Flash BIOS。
3、集成于主板的32MB SO DIMM内存。
4、 SSD:支持一个CompactFlash Card 用于仿真HDD。
5、 100 Base T以太网。
6、 ATX电源、Modem唤醒、一个EIDE口、一个PC-AT键盘口、一个FDD口、二个RS-232口、一个并行口支持SPP/EPP/ECP。
7、图形:高性能64位Windows加速(UMA)共享内存VGA。
8、 ±12V,±5V电源接口。
9、 PC/104扩展:16位PC/104模块接口。
应用领域与前景
目前PocketIX只是一个预览版,其正式版本不仅可以广泛应用于移动计算平台(PPC)、家庭信息环境(机顶盒、数字电视)、工业、商业控制(智能工控设备、POS/ATM机)等信息家电上,还可应用于与Internet相联接的一切接入设备。该系统目前在X86芯片上运行,以后将会支持PA-RISC、Power PC、ARM、Strong ARM、MIPS、68XXX等多种芯片。
嵌入式软件有广泛的应用:
机顶盒市场 机顶盒将在未来几年取得快速发展,8000万户的有线电视网用户、1亿以上的有线电话网用户为其提供了网络条件。机顶盒不仅可使模拟电视接收数字电视节目,可以上网,还可能成为未来家庭的控制中心。
掌上电脑(或PDA) 掌上电脑易于使用、携带方便、价格便宜,因此,未来几年将在我国得到快速发展,估计5年内总销量达到3000万台。从功能上看,掌上电脑(或PDA)将扩充通讯功能,甚至会具有手机和寻呼机的功能。
手机、寻呼机市场 手机和寻呼机上网将成为新的趋势。
车载盒 随着全球定位技术的成熟和广泛应用,车载盒会成为汽车族的时尚。
工业控制 信息电器所涉及的芯片技术、嵌入式软件、通讯技术在工业控制中也能获得广泛应用。