目前流行的嵌入式操作系统有Linux、WinCE、VxWorks等。Linux作为一种免费的类UNIX操作系统,由于其功能强大,在嵌入式产品的应用中非常广泛。
Linux操作系统的介绍
Linux操作系统
Linux操作系统是一个类UNIX计算机操作系统。Linux操作系统的内核的名字也是Linux。Linux这个词本身只表示Linux内核,但在实际中人们已经习惯了用Linux形容整个基于Linux内核的操作系统。Linux的最初版本由Linus Torvalds开发,此后得到互联网上很多计算机高手的支持,已经是一个非常成熟稳定的操作系统。
1.Linux的诞生
Linux诞生于一位名叫Linus Torvalds的计算机业余爱好者,当时他是芬兰赫尔辛基大学的学生。他开发Linux的最初目的是想设计一个代替Minix(Minix是由一位名叫Andrew Tannebaum的计算机教授编写的一个操作系统示教程序)的操作系统。Minix这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有UNIX操作系统的大部分功能。由于Andrew Tannebaum教授并不允许开发人员对Minix进行扩展,所以Linus Torvalds决定开发一个新的类似于Minix的操作系统,但相比Minix有更多的功能。
2.Linux与GNU计划
Linux的发展与GNU计划密切相关。1983年,Richard Stallman创立了GNU计划(GNU Project)。这个计划有一个目标,是为了发展一个完全免费自由的类UNIX的操作系统。自1990年发起这个计划以来,GNU开始大量地收集和开发类UNIX系统所必备的元件,例如函式库(libraries)、编译器(compilers)、调试工具(debuggers)、文字编辑器(text editors)、网页服务器(web server),以及一个UNIX的用户接口(Unix shell),但是一个好的内核核心一直没有出现。
1990年,GNU计划开始在Mach microkernel的架构之上开发内核核心,也就是所谓的GNU Hurd计划,但是这个基于Mach的设计异常复杂,发展进度相对缓慢,并没有取得太大的成效。恰好此时,大约是1991年4月,Linus Torvalds开发的Linux 0.01版被他发布到互联网上,引起了很多程序员的关注。
Linus Torvalds宣布这是一个免费的系统,主要在x86电脑上使用。Linus Torvalds希望大家一起来完善它,并将源代码放到了芬兰的FTP站点上任人免费下载。本来他想把这个系统称为freax,意思是自由(free)和奇异(freak)的结合字,并且附上了X这个常用的字母,以配合所谓的类UNIX(Unix-like)的系统。可是FTP的工作人员认为这是Linus的新操作系统,觉得原来的命名Freax的名称不好听,就用Linux这个子目录来存放,于是大家就将它称为Linux。这时的Linux只有内核程序,仅有10000行代码,仍必须执行于Minix操作系统之上,并且必须使用硬盘开机,还不能称做是完整的操作系统;随后在10月份Linux的第二个版本(0.02版)发布,许多专业程序员自愿地开发它的应用程序,并借助Internet拿出来让大家一起修改。在很短的一段时间内,Linux的应用程序越来越多,由此Linux本身也逐渐发展壮大起来。到目前为止最新的内核主版本已经是2.6了。
Linux操作系统的优点
Linux操作系统有很多优点,具有十分丰富的应用功能。这些功能特别适用于嵌入式系统,这些优点如下所示。
1.价格低廉
Linux操作系统使用了大量的GNU软件,包括了shell程序、工具集、程序库、编译器等。这些程序都可以免费或者以极低的价格得到,所以Linux操作系统是一个价格低廉的操作系统。基于这个原因,Linux常常被应用于嵌入式系统中,例如机顶盒、移动电话甚至机器人中。在移动电话上,Linux已经成为与Symbian OS、Windows Mobile系统并列的三大智能手机操作系统之一;而在移动装置上,则成为Windows CE与Palm OS外另一个好的选择。此外,还有不少硬件式的网络防火墙及路由器,其内部都是使用Linux操作系统,其执行效率和安全性非常高。
2.高效性和灵活性
Linux以它的高效性和灵活性著称。Linux操作系统是一个非常高效的系统,广泛应用于对效率要求较好的服务器上。另外,Linux操作系统的灵活性也是其他操作系统无法比拟的。Linux操作系统可以根据用户需要自己配置内核,增加或者减少相应的功能。通过这种方式,Linux操作系统几乎支持目前所有的常用硬件,就算有不支持的硬件,驱动开发人员也可以在很短的时间内写出相应的驱动程序来。
3.广泛性
Linux操作系统可以应用于目前大多数处理器架构上,其应用非常广泛。据统计,目前世上运行最快的500台超级计算机上,有74%的计算机使用的都是Linux操作系统。对于嵌入式系统,处理器的选择非常广泛,幸运的是,Linux几乎支持所有的主流处理器,最典型的就是ARM处理器。嵌入式系统开发人员,可以直接移植Linux操作系统并选择一些可靠的自由软件,就能够组装一个有用的嵌入式系统,极大地减少了开发时间。
4.强大的功能
每一天,全球有很多开发人员都在对Linux操作系统进行开发,所以每一天都有新的功能
被添加到Linux中。到目前为止,Linux已经发展成了一个遵循POSIX标准的纯32位操作系统,64位版本也已经发布。Linux可以兼容大部分的UNIX系统,很多UNIX的程序不需要改动,或者很少的改变就可以运行于Linux环境中;内置TCP/IP协议,可以直接连入Internet,作为服务器或者终端使用;内置Java解释器,可直接运行Java源代码;具备程序语言开发、文字编辑和排版、数据库处理等能力;提供X Window的图形界面;主要用于x86系列的个人电脑,也有其他不同硬件平台的版本,支持现在流行的所有硬件设备。
就性能上来说,它并不弱于Windows甚至UNIX,而且靠仿真程序还可以运行Windows应用程序。它有成千上万的各类应用软件,并不输于Windows的应用软件数量,其中也有商业公司开发的赢利性的软件。