当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]自己目前开发的嵌入式开发所用的操作系统是VxWorks,以前读大学的时候用的最多的是linux操作系统,但是,对于这两种操作系统之间到底有什么区别,还真没有真正去细心的总结

自己目前开发的嵌入式开发所用的操作系统是VxWorks,以前读大学的时候用的最多的是linux操作系统,但是,对于这两种操作系统之间到底有什么区别,还真没有真正去细心的总结过,被别人问起时,难免有些尴尬的感觉

Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux得名于计算机业余爱好者Linus Torvalds。

 

Linux的应用

过去,Linux主要被用作服务器的操作系统,因为它的廉价、灵活性及Unix背景。传统上,以Linux为基础的“LAMP(Linux, Apache, MySQL, Perl/PHP/Python的组合)”技术,除了已在开发者群体中广泛流行,它亦是现时提供网站服务供应商最常使用的平台。 基于其低廉成本与高度可设置性,Linux常常被应用于嵌入式系统,例如机顶盒、移动电话及移动装置等。在移动电话上,Linux已经成为Symbian OS的主要竞争者;而在移动装置上,则成为Windows CE与Palm OS外之另一个选择。目前流行的TIVo数码摄影机使用了经过客制化后的Linux。此外,有不少硬件式的网络防火墙及路由器,例如部份LinkSys的产品,其内部都是使用Linux来驱动、并采用了操作系统提供的防火墙及路由功能。 采用Linux的超级电脑亦愈来愈多,根据2008年11月的TOP500超级电脑列表,现时世上最快速的超级电脑使用Linux作为其操作系统。而在表列的500套系统里,采用Linux为操作系统的,占了439组(即87.8%)。

2006年开始发售的SONY PlayStaTIon 3亦可使用Linux的操作系统,它有一个能使其成为一个桌面系统的Yellow Dog Linux。之前,Sony亦曾为他们的PlayStaTIon 2推出过一套名为PS2 Linux的DIY组件。Ubuntu自9.04版本,恢复了PPC支持(包括PlayStaTIon 3)。 而随着OLPC的XO-1,华硕的Eee PC等低价电脑的推行,许多人乐观的认为在低端PC市场,linux的市场占有率正在快速的增长。但在Windows进入此一市场后,Linux的市占率快速下滑。现在Windows系统在所有的PC市场中,都占有绝对优势。

VxWorks 是美国 Wind River System 公司( 以下简称风河 公司 ,即 WRS 公司)推出的一个实时操作系统。Tornado 是WRS 公司推出的一套实时操作系统开发环境,类似Microsoft Visual C,但是提供了更丰富的调试、仿真环境和工具。

 

嵌入式Vxworks系统的主要应用领域主要有以下几方面:

1.数据网络:如:以太网交换机、路由器、远程接入服务器等

2.远程通讯:如:电信用的专用分组交换机和自动呼叫分配器,蜂窝电话系统等

3.医疗设备:如:放射理疗设备

4.消费电子:如:个人数字助理等

5.交通运输:如:导航系统、高速火车控制系统等

6.工业:如:机器人

7.航空航天:如:卫星跟踪系统

8.多媒体:如:电视会议设备

9.计算机外围设备:如:X终端、I/O 系统等

总之,VxWorks的系统结构是一个相当小的微内核的层次结构。内核仅提供多任务环境、进程间通信和同步功能。这些功能模块足够支持VxWorks在较高层次所提供的丰富的性能的要求。

 


VxWorks主要应用于电信级别的数通等产品,而linux主要应用于消费类、工控产品等

微内核、宏内核

内核中提供各种服务的成分与使用这种服务的进程之间形成一种client/server关系,这种服务并不一定非得留在内核中,它本身也可以被设计实现成“服务进程”,其中必须留在内核中的部分只有进程间的通信,如果把这些服务从内核转移到进程的层次上,那么内核本身的结构就可以大大减小和减化,而各个服务进程也可以单独设计、实现及调试。

微内核便是将服务转移到进程上的一种内核模式,主要应用在实时系统和嵌入式系统上,主要是因为通常这些系统都不带磁盘,整个系统必须都放在EPROM中,常常受到存储空间的限制,而且所需的服务也比较单一,如PSOS,VxWorks等。

宏内核是一种传统的内核结构,它将进程管理,内存管理等各项服务功能都放到内核中去,通常用在通用式内核上,如UNIX,linux等。

设备驱动部分的比较和分析

由于linux操作系统和linux引导装载器在结构上的分离,使得它倆之间的设备驱动程序不能够通用,当然在芯片的硬件初始化一些硬件相关的代码上可以互相借鉴。而VxWorks的BOOTROM和运行版本的设备驱动是相同的,因为它的运行版本和BOOTROM的结构是一致的,使用同一操作系统内核。linux操作系统的设备驱动运行在内核空间,用户进程运行在用户空间。在linux操作系统中,内核空间和用户空间的内存管理和映射方式是不同德,应用和设备驱动在数据交换时会涉及到不同的内存空间,会影响到一定效率,但这个问题可以通过修改系统内存空间配置等方法来解决。VxWorks操作系统没有分开内核空间和用户空间,设备驱动和应用都运行于同一空间,相互之间的内存都可以访问,数据交换非常方便,但是这种结构的稳定性就不如linux系统好,两种操作系统都提供了很多设备驱动的资源和模板。但是由于linux的开源特性,它提供的设备驱动的种类和数量远远超过了VxWorks.

Linux优势更大,Linux的优点是你如果要入行相对可选择的余地更大。VxWorks用的公司相对不是太多,并且如果学会Linux,再学VxWorks并不困难,反过来则有一定困难。

VxWorks比Linux的优点是实时性好,在开发方面调试工具之类的比Linux好,但是国内你要找到一个很懂VxWorks的人不多,但懂Linux的就很多。

入门的话,学好C语言,试着移植一些驱动到VxWorks里即可,VxWorks兼容POSIX规范,我想你开发的难度应该不是特别大。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

双系统将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对双系统的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 双系统 Windows Linux

安装Linux操作系统并不复杂,下面是一个大致的步骤指南,以帮助您完成安装。1. 下载Linux发行版:首先,您需要从Linux发行版官方网站下载最新的ISO镜像文件。

关键字: Linux 操作系统 ISO镜像

计算机是由一堆硬件组成的,为了有限的控制这些硬件资源,于是就有了操作系统的产生,操作系统是软件子系统的一部分,是硬件基础上的第一层软件。

关键字: Linux 操作系统 计算机

Linux操作系统是一套免费使用和自由传播的类Unix操作系统,通常被称为GNU/Linux。它是由林纳斯·托瓦兹在1991年首次发布的,并基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Lin...

关键字: Linux 操作系统

所谓进程间通信就是在不同进程之间传播或交换信息,它是一组编程接口,让程序员能够协调不同的进程,使之能在一个操作系统里同时运行,并相互传递、交换信息;还可以让一个程序能够在同一时间里处理许多用户的需求。

关键字: Linux 进程通信 编程接口

串口通信作为一种最传统的通信方式,在工业自动化、通讯、控制等领域得到广泛使用。

关键字: Linux 串口通信 通讯

2023年11月16日: MikroElektronika(MIKROE) ,作为一家通过提供基于成熟标准的创新式硬软件产品来大幅缩短开发时间的嵌入式解决方案公司,今天宣布推出一款基于单线设备的软硬件开源解决方案Cli...

关键字: 嵌入式 Linux 操作系统

Linux是一种免费使用和自由传播的类Unix操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布。它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CP...

关键字: Linux 操作系统

本文中,小编将对嵌入式予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: 嵌入式 Linux

在这篇文章中,小编将为大家带来嵌入式 Linux的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 嵌入式 Linux
关闭
关闭