姓名:刘欢 学号:19020100155 学院:电子工程学院 班级:1902012
原文转自:https://iot.ofweek.com/2021-03/ART-132215-11000-30490226.html
http://c.biancheng.net/view/7557.html
【嵌牛导读】嵌入式如何实现呢,嵌入式依赖于什么系统呢,嵌入式在一般的操作系统里面可以运行和开发吗,带着以上疑问,我们将开启今天的嵌入式之旅。
【嵌牛鼻子】嵌入式操作系统
【嵌牛提问】什么是嵌入式操作系统
【嵌牛正文】
嵌入式操作系统,英语是Embedded Operating System,简称:EOS。简单来说,嵌入式操作系统就是嵌入式系统的操作系统。嵌入式系统很多本身就结构简单、设计灵活,嵌入式操作系统通常也就被设计非常紧凑、高效,抛弃掉运行于它们之上的、特定的应用程序非必须的各种功能。
通常,嵌入式操作系统会包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。作为一种本质上还是操作系统的软件,嵌入式操作系统需要负责整体的全部软硬件资源分配、任务调度,控制、协调并发活动等。受特殊的应用环境限制,嵌入式系统通常都具有系统内核小、精简、专用性强、支持多任务、高实时性、需要搭配有相应的开发工具和环境。
基于一些特殊的应用环境等方面的要求,嵌入式操作系统往往也都是实时操作系统。
至今为止,应用较为广泛的嵌入式操作系统包括如下这些:
嵌入式Linux
Windows CE
Windows XP Embedded
Windows Vista Embedded
Windows Embedded Compact 7
Windows IoT
VxWorks
uCOSII
QNX
FreeRTOS
ENEA OSE
订制版的BSD
FreeDOS
等等。
目前主流的操作系统有哪些呢?
1. 嵌入式 Linux
嵌入式 Linux 是以 Linux 为基础的嵌入式操作系统,广泛应用于信息家电、PDA、机顶盒、Digital Telephone、Answering Machine、Screen Phone、数据网络、Ethernet Switches、Router、Bridge、Hub、Remote Access Servers、ATM、Frame Relay、远程通信、医疗电子、交通运输计算机外设、工业控制、航空航天等领域。
使用嵌入 Linux 系统的优势有很多,比如:
Linux 是开放源代码的,不存在黑箱技术,遍布全球的众多 Linux 爱好者是 Linux 开发者的强大技术支持;
Linux 的内核小、效率高,内核的更新速度很快,Linux 是可以定制的,其系统内核最小只有约 134KB;
Linux 是免费的操作系统,在价格上极具竞争力。
2. Android
Android 是一种基于 Linux 的自由及开放源代码的操作系统,2003 年 10 月,Andy Rubin 等人创建 Android 公司,并组建 Android 团队,22 个月后被 Google 收购。目前 Android 操作系统主要用于智能手机、平板电脑和智能电视等。
Android 运行于 Linux Kernel 之上,但并不是 GNU/Linux。因为在一般 GNU/Linux 里支持的功能,Android 大都没有支持,包括 Cairo、X11、Alsa、FFmpeg、GTK、Pango,以及 Glibc 等都被移除掉了。Android 又以 Bionic 取代 Glibc,以 Skia 取代 Cairo,再以 OpenCore 取代 FFmpeg 等。
Android 为了达到商业应用,必须移除被 GNU GPL 授权证所约束的部分,例如,Android 将驱动程序移到 Userspace,使得 Linux Driver 与 Linux Kernel 彻底分开。Bionic/Libc/Kernel/ 并非标准的 Kernel Header Files。
3. iOS
iOS 是由苹果公司开发的手持设备操作系统。最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch、iPad 以及 Apple TV 等苹果产品上。
iOS 与苹果的 Mac OS X 操作系统一样,它也是以 Darwin 为基础的,因此,同样属于类 Unix 的商业操作系统。它和 Linux 操作系统有一定渊源,都可以追溯到 Unix。
iOS 是商业操作系统,因此不是开源的,iOS 的开发工程师主要开发 iOS 的应用程序,使用的开发语言是 Objective-C 和 Swift。
4. Windows CE
Windows CE 是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的 32 位嵌入式操作系统,是基于掌上电脑类的电子设备操作系统,它是类似于精简的 Windows 95。Windows CE 的图形用户界面相当出色。
开发语言可以使用 C++、C#、VB 等,可以使用系统自带丰富的图形库快速开发出界面程序,开发效率较高。但使用选择基于 Windows CE 开发产品,需要向微软公司缴纳一定的版权费。
5. Windows XP Embedded
Windows XP Embedded 是微软研发的嵌入式操作系统,是一个以组件模块展现出与 Windows XP Professional 操作系统一样的接口与操作模式,可依据各自需求组合出的操作系统镜像文件,确保有 Windows XP Professional 操作系统相依性以及完整的功能。
Windows XP Embedded 可以应用在各种嵌入式系统,或硬件规格层次较低的计算机系统,例如,很少的内存,较慢的中1央处理器等。
Windows XP Embedded 基于 Win32 编程模型,由于采用常见的开发工具,如 Visual Studio.NET,使用商品化 PC 硬件,与桌面应用程序无缝集成,因此可以缩短上市时间。使用 Windows XP Embedded 构建操作系统的常见设备类别包括零售销售点终端、瘦客户机和高级机顶盒。
Windows XP Embedded 有一个限制,它要求目标硬件平台必须是X86架构的,而且还需要向微软公司缴纳授权费。
6. VxWorks
VxWorks 是美国 Wind River System 公司(2009 年被 Intel 收购)推出的一个非常优秀的实时操作系统。
VxWorks 操作系统是美国 WindRiver 公司于 1983 年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。它具有良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。
VxWorks 以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通信、军事演习、弹道制导、飞机导航等。在美国的 F-16、FA-18 战斗机、B-2 隐形轰炸机和爱国者导弹上,甚至连 1997 年 4 月在火星表面登陆的火星探测器、2008 年 5 月登陆的凤凰号,以及 2012 年 8 月登陆的好奇号也都使用到了 VxWorks。
不过如此优秀的操作系统,并不是所有场合都是合适的。通常 VxWorks 常用于实时性要求高、环境恶劣的场合,因为使用 VxWorks 需要的成本非常高,选择它之前,需要综合衡量评估后再决定。