讲师博文
嵌入式系统和桌面通用系统的区别 来源 : 华清远见     2023-10-24

系统,即若干部分相互联系、相互作用,形成的具有某些功能的整体。

目前我们生活中接触最多的就是操作系统,操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,它是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。换句话说,操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。操作系统的功能包括管理计算机系统的硬件、软件及数据资源,控制程序运行,改善人机界面,为其他应用软件提供支持等,以使计算机系统所有资源最大限度地发挥作用。现代操作系统提供了各种形式的用户界面,使得用户可以拥有一个好的工作环境,并且为其他软件的开发提供必要的服务和相应的接口。而提到操作系统又不得不说两大分支:嵌入式系统和桌面通用系统。

首先来看嵌入式系统,嵌入式操作系统(Embedded Operating System,EOS)是运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件。嵌入式操作系统的一个重要特性是实时性。所谓实时性,就是在确定的时间范围内响应某个事件的特性。操作系统的实时性在某些领域是至关重要的,如工业控制、航空航天等领域。想象一下飞机正在空中飞行,如果嵌入式系统不能及时响应飞行员的控制指令,那么极有可能导致空难事故。而有些嵌入式系统应用并不需要绝对的实时性,如 PDA 播放音乐,个别音频数据丢失并不影响效果,这可以使用软实时的概念来衡量。

从 20 世纪 80年代开始,出现了一些商用嵌入式操作系统,它们大部分都是为专有系统而开发的。随着嵌入式领域的发展,各种各样的嵌入式操作系统会相继问世。有许多商用嵌入式操作系统,也有大量开放源代码的嵌入式操作系统。其中著名的嵌入式操作系统有 Linux、μC/OS、Windows CE、VxWorks 和 QNX等,下面主要介绍使用最广泛的Linux嵌入式系统。

嵌入式 Linux 的队伍越来越庞大,在通信、信息、数字家庭、工业控制等领域,随处都能见到嵌入式 Linux 的身影。究竟是什么原因让嵌入式 Linux发展如此迅速呢?又究竟是什么原因让它能与强劲的 VxWorks、Windows CE 相抗衡呢?这一切还是要归根于 Linux。可以说,嵌入式 Linux 正是继承和发展了 Linux 的诱人之处才能够走到今天,而 Linux 也正是有了嵌入式Linux 的广泛应用才更加引人注目。以下就从 Linux 的发端开始,一层层揭开嵌入式 Linux 的面纱。

20 世纪 60 年代时,大部分计算机都是采用批处理的方式(也就是说,当作业积累到一定数量的时候,计算机才会处理)。

为了改变这种现状,美国电报及电话公司(AT&T)、通用电器公司(GE)及麻省理工学院(MIT)计划合作开发一个多用途、分时及多用户的操作系统,也就是 MULTICS。但是由于这个项目太过于复杂,整个目标过于庞大,糅合了太多的特性,进展太慢,几年下来没有任何成果,而且性能很低。

1969 年 2 月,贝尔实验室(Bell labs)决定退出这个项目。当时贝尔实验室有个工程师叫 Ken Thompson,他为 MULTICS 写了一个叫“Space Travel”的游戏,当时他发现游戏运行的速度很慢。为了这个游戏能玩,他找来了一位天才工程师 Dennis Ritchie,他们用汇编语言写了一个简单的操作系统 Unics,这就是后来的 UNIX 的原型。

1973 年,Ken Thompson 和 Dennis Ritchie 发现用汇编语言移植过于困难,后来他们先后用 B 语言、C 语言重写了 UNIX。

1974 年,UNIX 首次和外界接触,引起了学术界的广泛兴趣。因此,UNIX从第 5 版本以“仅用于教育目的”协议,提供给各大学作为教学之用。UNIX开始广泛流行。

1978年,伯克利大学在 UNIX上进行改进,推出了自己的 UNIX版本——Berkeley Softwore Distribution,即 BSD。同时,AT&T 公司成立了 USG(UNIX Support Group)组织,将 UNIX 变成了商业化的产品。AT&T的这种商业态度让当时许许多多的 UNIX的爱好者和软件开发者们感到相当的痛心和忧虑,他们认为商业化的种种限制并不利于产品的发展,相反还会导致出现诸多的问题。

此时,一个名叫 Richard Stallman 的领军人物出现了,他认为 UNIX 是一个相当好的操作系统,如果大家都能够将自己所学贡献出来,那么这个系统将会更加的优异!他倡导 Open Source 的概念。为了这个理想,Richard Stallman 于 1984 年创立了 GNU,计划开发一套与 UNIX 相互兼容的软件。1985 年 Richard Stallman 又创立了自由软件基金会(Free Software Foundation,FSF)来为 GNU 计划提供技术、法律以及财政支持。尽管 GNU计划大部分时候是由个人自愿无偿贡献的,但 FSF 有时还是会聘请程序员帮助编写。当 GNU 计划开始逐渐获得成功时,一些商业公司开始介入开发和技术支持。

自 20 世纪 90 年代发起这个计划以来,GNU 开始大量地产生或收集各种系统所必备的组件,如函数库(Libraries)、编译器(Compilers)、调试工具(Debuggers)、文本编辑器(Text Editors)、网站服务器(Web Server),以及一个 UNIX 的使用者接口(UNIX Shell)等。但由于种种原因,GNU 一直没有开发操作系统的内核(Kernel)。正当 Richard Stallman 在为操作系统内核伤脑筋的时候,Linux 出现了。

1991 年,芬兰赫尔辛基大学的学生 Linus Torvals 为了能在家里的 PC上使用与学校一样的操作系统,开始编写自己的类 UNIX 操作系统。

1991年8月25日,Linus就在comp.os.minix新闻组中首次发布了Linux内核的第一个公共版本。

最初 Linus 编写的程序只适用于 Intel 386 处理器,且不能移植。由于人们的鼓励,Torvals 继续编写可移植的 Linux 系统。

之后,就有越来越多的计算机爱好者、程序员通过网络,包括通过社区、邮件列表、论坛、Wiki 等参与到 Linux 系统的不断完善之中。

 Linux 系统的发展过程可以看出,Linux 从最开始就是一个开放的系统,并且它始终遵循着开放源代码的原则,是一个成熟而稳定的网络操作系统。Linux 作为嵌入式操作系统的优势如下。

1.低成本开发系统

Linux的源码开放性允许任何人可以获取并修改 Linux的源码。这样一方面大大降低了开发的成本,另一方面又可以提高开发产品的效率,并且还可以在Linux社区中获得支持,用户只需向邮件列表发一封邮件,即可获得作者的支持。

2.可应用于多种硬件平台

Linux 可支持 x86、PowerPC、ARM、XSCALE、MIPS、SH、68K、Alpha、SPARC 等多种体系结构,并且已经被移植到多种硬件平台。这对于经费、时间受限制的研究与开发项目是很有吸引力的。Linux 采用一个统一的框架对硬件进行管理,同时从一个硬件平台到另一个硬件平台的改动与上层应用无关。

3.可定制的内核

Linux 具有独特的内核模块机制,它可以根据用户的需要,实时地将某些模块插入或移出内核,并能根据嵌入式设备的个性需要量体裁衣。经裁剪的 Linux 内核最小可达到 150KB 以下,尤其适合嵌入式领域中资源受限的实际情况。在 2.6 内核中加入了许多嵌入式友好特性,如构建用于不需要用户界面的设备的小占板面积内核选项。

4.性能优异

Linux 系统内核精简、高效和稳定,能够充分发挥硬件的功能,因此它比其他操作系统的运行效率更高。在个人计算机上使用 Linux 时,可以将它作为工作站。它也非常适合在嵌入式领域中应用,对比其他操作系统,它占用的资源更少,运行更稳定,速度更快。

5.良好的网络支持

Linux 是首先实现 TCP/IP 协议栈的操作系统,它的内核结构在网络方面是非常完整的,并提供了对包括 10 吉比特、100 吉比特及 1 000 吉比特的以太网,还有无线网络、Token Ring(令牌环)和光纤甚至卫星的支持。这对现在依赖于网络的嵌入式设备来说无疑是很好的选择。

在桌面通用系统上,微软Windows系列基本上控制了整个市场,而MAC OS X系列的界面表现极为出色,Linux和它的发行版共同组成了自由软件组织(开源,免费),目前国内对于Linux发行版的硬件支持越来越完善。从应用环境来看,桌面通用系统面向复杂多变的各类应用,比如使用CAD、EDA、PS等等应用。

Windows操作系统采用了GUI图形化操作模式,比起从前的指令操作系统如DOS更为人性化。

MAC操作系统是美国苹果计算机公司设计的操作系统,在出版、印刷、影视制作和教育领域有着广泛的应用。

Linux是当今电脑界一个耀眼的名字,是目前全球最大的一个自由免费软件,其本身是一个功能可与Unix和Windows相媲美的操作系统。

嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统,对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统。

从上面的定义我们可以知道,嵌入式系统也是一个计算机系统。下面我们就看看嵌入式系统和桌面通用系统的区别。

(1)嵌入式系统是面向特定系统应用的。嵌入式处理器大多数是专门为特定应用设计的,具有功耗低、体积小、集成度高等特点,一般是包含各种外围设备接口的片上系统。

(2)嵌入式系统涉及计算机技术、微电子技术、电子技术、通信、软件等各行各业。它是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。

(3)嵌入式系统的硬件和软件都必须具备高度可定制性,只有这样才能适应嵌入式系统应用的需要,在产品价格、性能等方面具备竞争力。

(4)嵌入式系统的生命周期相当长。当嵌入式系统应用到产品以后,还可以进行软件升级,它的生命周期与产品的生命周期几乎一样长。

(5)嵌入式系统不具备本地系统开发能力,通常需要有一套专门的开发工具和环境。

在计算机后 PC 技术时代,嵌入式系统将拥有庞大的市场。计算机和网络已经全面渗透到日常生活的每一个角落。各种各样的新型嵌入式系统设备在应用数量上已经远远超过通用计算机,任何一个普通人都可能拥有从小到大的各种使用嵌入式技术的电子产品,小到机顶盒、智能手机、照相机等微型数字化产品,大到智能家居、智能农业、智能交通等等。而在工业和服务领域中,使用嵌入式技术的数字机床、智能工具、工业机器人、服务机器人也将逐渐改变传统的工业和服务方式。

 

扫码申领本地嵌入式教学实录全套视频及配套源码

上一篇:NB IOT、LORA的通信距离对比分析

下一篇:SPI的四种工作模式

400-611-6270

Copyright © 2004-2024 华清远见教育科技集团 版权所有
京ICP备16055225号-5京公海网安备11010802025203号