嵌入式操作系统
主流嵌入式操作系统介绍

主流嵌入式操作系统介绍嵌入式操作系统,又称为嵌入式操作平台,是针对特定应用领域和硬件平台所设计和优化的操作系统。
它主要用于控制、管理和运行嵌入式设备,如智能手机、家用电器、汽车控制系统等。
本文将介绍几种主流的嵌入式操作系统。
一、嵌入式Linux嵌入式Linux是指将Linux操作系统适配嵌入式设备的一种形式,它保留了Linux操作系统的优点,如开源、稳定、成熟的生态系统等。
嵌入式Linux具有丰富的设备驱动、多任务管理能力和良好的可扩展性,可以在各种硬件平台上运行。
在嵌入式Linux中,通常使用的是裁剪版的Linux内核,该内核只保留了必要的功能和驱动程序,以节省存储空间和资源,并提高嵌入式设备的运行效率。
嵌入式Linux还提供了适用于嵌入式设备的工具链和库文件,方便开发人员进行应用程序的开发和调试。
二、嵌入式Windows嵌入式Windows是指将微软的Windows操作系统适配嵌入式设备的一种形式。
与桌面版的Windows相比,嵌入式Windows通常经过了裁剪和优化,以适应嵌入式设备的资源限制和实时性要求。
嵌入式Windows具有直观易用的界面和丰富的应用生态系统,开发人员可以使用熟悉的开发工具和编程语言进行应用程序的开发。
嵌入式Windows还提供了强大的多媒体处理能力和网络连接功能,适用于需要图形界面和复杂功能的嵌入式设备。
三、嵌入式Android嵌入式Android是指将谷歌的Android操作系统适配嵌入式设备的一种形式。
嵌入式Android基于Linux内核,具有开源性和稳定性的特点,同时融合了丰富的应用生态系统和用户界面设计。
嵌入式Android支持多任务管理、开放式应用程序架构和丰富的应用程序开发接口,方便开发人员进行自定义应用的开发。
嵌入式Android还支持网络连接和云服务,适用于需要与互联网进行交互的嵌入式设备。
四、实时操作系统实时操作系统(RTOS)是一种专门设计用于实时应用的嵌入式操作系统。
嵌入式linux操作系统原理与应用

嵌入式Linux操作系统是一种针对嵌入式设备设计和优化的Linux操作系统。
它在嵌入式系统中发挥着关键作用,为嵌入式设备提供了丰富的功能和灵活性。
以下是嵌入式Linux操作系统的原理和应用方面的概述:嵌入式Linux操作系统原理:内核:嵌入式Linux操作系统的核心是Linux内核,它提供了操作系统的基本功能,包括处理器管理、内存管理、设备驱动程序、文件系统和网络协议栈等。
裁剪:为了适应嵌入式设备的资源限制,嵌入式Linux操作系统通常经过裁剪和优化,只选择必要的功能和驱动程序,以减小内存占用和存储空间,并提高性能和响应速度。
交叉编译:由于嵌入式设备通常具有不同的硬件架构和处理器,所以嵌入式Linux操作系统需要通过交叉编译来生成适用于目标设备的可执行文件和库。
设备驱动:嵌入式Linux操作系统需要适配各种硬件设备,因此需要编写和集成相应的设备驱动程序,以使操作系统能够正确地与硬件进行通信和交互。
嵌入式Linux操作系统应用:嵌入式设备:嵌入式Linux操作系统广泛应用于各种嵌入式设备,如智能手机、平板电脑、家用电器、工业控制系统、车载设备等。
物联网(IoT):随着物联网的快速发展,嵌入式Linux操作系统被广泛应用于连接的嵌入式设备,用于数据采集、通信、远程控制和智能化管理。
嵌入式开发板:嵌入式Linux操作系统在开发板上提供了丰富的开发环境和工具链,用于嵌入式软件开发和调试。
自定义嵌入式系统:开发者可以基于嵌入式Linux操作系统构建自定义的嵌入式系统,根据特定需求进行定制和开发,实现各种功能和应用。
嵌入式Linux操作系统的原理和应用非常广泛,它为嵌入式设备提供了灵活性、可定制性和强大的功能支持,使得开发者能够构建高度定制化和功能丰富的嵌入式系统。
嵌入式实时操作系统

嵌入式实时操作系统第一点:嵌入式实时操作系统的定义与特点嵌入式实时操作系统(Embedded Real-Time Operating System,简称ERTOS)是一种专门为嵌入式系统设计的操作系统,它具有实时性、可靠性和高效性等特点。
嵌入式实时操作系统主要用于控制和管理嵌入式系统中的硬件资源和软件任务,以实现对系统的实时控制和高效运行。
嵌入式实时操作系统的定义可以从以下几个方面来理解:1.嵌入式系统:嵌入式系统是指将计算机技术应用于特定领域,以完成特定任务的计算机系统。
它通常包括嵌入式处理器、存储器、输入输出接口等硬件部分,以及运行在处理器上的软件部分。
嵌入式系统具有体积小、功耗低、成本低、性能高等特点。
2.实时性:实时性是嵌入式实时操作系统最核心的特点之一。
它要求系统在规定的时间内完成任务,并对任务的响应时间有严格的要求。
实时性可以分为硬实时和软实时。
硬实时要求任务在规定的时间范围内完成,不允许有任何的延迟;软实时则允许任务在规定的时间范围内完成,但延迟尽量最小。
3.可靠性:嵌入式实时操作系统需要具备很高的可靠性,因为它们通常应用于对安全性和稳定性要求较高的领域,如航空航天、汽车电子、工业控制等。
可靠性主要包括系统的正确性、稳定性和抗干扰能力等方面。
4.高效性:嵌入式实时操作系统需要高效地利用硬件资源,以实现对系统的实时控制。
高效性主要包括系统资源的利用率、任务的调度算法、内存管理等方面。
第二点:嵌入式实时操作系统的应用领域与发展趋势嵌入式实时操作系统在众多领域都有广泛的应用,下面列举几个典型的应用领域:1.工业控制:嵌入式实时操作系统在工业控制领域具有广泛的应用,如PLC(可编程逻辑控制器)、机器人控制器、工业现场仪表等。
实时操作系统可以实现对工业过程的实时监控和控制,提高生产效率和产品质量。
2.汽车电子:汽车电子领域是嵌入式实时操作系统的另一个重要应用领域。
现代汽车中的电子控制系统,如发动机控制、底盘控制、车身控制等,都需要实时操作系统来保证系统的实时性和稳定性。
嵌入式系统的软件平台

嵌入式系统的软件平台嵌入式系统是指具有特定功能的专用计算机系统,通常用于控制、监测和自动化等领域。
与通用计算机不同,嵌入式系统通常要求具有实时性、低功耗、小体积等特点。
为了实现这些特点,嵌入式系统需要一种特殊的软件平台来支持系统的运行和开发。
本文将介绍常见的嵌入式系统软件平台。
1. 嵌入式操作系统嵌入式操作系统是指专门为嵌入式系统设计的操作系统。
与桌面操作系统相比,嵌入式操作系统更加轻量级,可以占用更少的系统资源,同时具有更好的实时性和稳定性。
常见的嵌入式操作系统有嵌入式Linux、嵌入式Windows、uC/OS、FreeRTOS等。
嵌入式Linux是一种经过裁剪的Linux操作系统,通常只保留系统核心和一些必要的应用程序。
它支持各种芯片架构和外设,同时具有良好的兼容性和稳定性。
嵌入式Windows则是微软公司推出的一种嵌入式操作系统,它有着良好的图形界面和易用性。
uC/OS和FreeRTOS则是一种面向实时系统设计的操作系统,它们有着极高的实时性和稳定性。
2. 嵌入式编程语言嵌入式编程语言是指专门为嵌入式系统设计的编程语言。
与通用编程语言相比,嵌入式编程语言更加轻量级,可以占用更少的系统资源,并且具有更好的实时性和对外设的支持。
常见的嵌入式编程语言有C、C++、汇编语言等。
C语言是一种最为常见的嵌入式编程语言,它通常被用于嵌入式系统的开发中。
C语言除了具备通用编程语言的特点之外,还有着对硬件编程支持的特性。
C++则是在C语言的基础上进行了扩展,提供了更多的面向对象特性。
汇编语言则是一种直接操作硬件的编程语言,可以对芯片进行极为底层的操作。
3. 嵌入式开发工具嵌入式开发工具是指专门为嵌入式系统设计的开发工具。
它们可以帮助开发人员在开发嵌入式系统时更加高效和便捷。
常见的嵌入式开发工具有编译器、调试器、仿真器等。
编译器是一种将源代码转换为可执行代码的开发工具。
它可以将嵌入式系统的源代码转换为对应的机器码,从而使系统可以在芯片上运行。
嵌入式实时操作系统简介

嵌入式实时操作系统简介嵌入式实时操作系统简介一:引言嵌入式实时操作系统(RTOS)是一类特殊的操作系统,用于控制和管理嵌入式系统中的实时任务。
本文将介绍嵌入式实时操作系统的基本概念、特点和应用领域。
二:嵌入式实时操作系统的定义1. 实时操作系统的概念实时操作系统是一种能够处理实时任务的操作系统。
实时任务是指必须在严格的时间约束内完成的任务,例如航空航天、工业自动化和医疗设备等领域的应用。
2. 嵌入式实时操作系统的特点嵌入式实时操作系统相比于通用操作系统具有以下特点:- 实时性:能够满足严格的时间要求,保证实时任务的及时响应。
- 可靠性:具备高可用性和容错能力,能够保证系统的稳定运行。
- 精简性:占用资源少,适应嵌入式系统的有限硬件资源。
- 可定制性:能够根据具体应用需求进行定制和优化。
三:嵌入式实时操作系统的体系结构1. 内核嵌入式实时操作系统的核心部分,负责任务和资源管理、中断处理和调度算法等。
- 任务管理:包括任务的创建、删除、挂起和恢复等。
- 资源管理:包括内存、文件系统、网络资源等的管理。
- 中断处理:负责中断的响应和处理。
- 调度算法:根据任务的优先级和调度策略进行任务的调度。
2. 设备管理嵌入式实时操作系统需要与各种外设进行通信和交互,设备管理模块负责管理设备驱动、中断处理和设备的抽象接口等。
3. 系统服务提供一系列系统服务,例如时钟管理、内存管理和文件系统等,以支持应用程序的运行。
四:嵌入式实时操作系统的应用领域嵌入式实时操作系统广泛应用于以下领域:1. 工业自动化:用于控制和监控工业设备和生产过程。
2. 航空航天:用于飞行控制、导航和通信系统。
3. 交通运输:用于车辆控制和交通管理。
4. 医疗设备:用于医疗仪器和设备控制和数据处理。
附件:本文档附带示例代码和案例分析供参考。
注释:1. 实时任务:Real-Time Task,简称RTT。
2. 嵌入式系统:Embedded System,简称ES。
嵌入式操作系统

嵌入式操作系统简介嵌入式操作系统(Embedded Operating System,简称:EOS)是指用于嵌入式系统的操作系统。
嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。
嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。
它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。
目前在嵌入式领域广泛使用的操作系统有:嵌入式实时操作系统µC/OS-II、嵌入式Linux、Windows Embedded、VxWorks等,以及应用在智能手机和平板电脑的Android、iOS等。
发展背景事实上,在很早以前,嵌入式这个概念就已经存在了。
在通信方面,嵌入式系统在20世纪60年代就用于对电子机械电话交换的控制,当时被称为“存储式程序控制系统”(Stored Program Control)。
嵌入式计算机的真正发展是在微处理器问世之后。
1971年11月,Intel公司成功地把算术运算器和控制器电路集成在一起,推出了第一款微处理器Intel 4004。
20世纪80年代,随着微电子工艺水平的提高,集成电路制造商开始把嵌入式应用中所需要的微处理器、I/O接口、A/D、D/A转换、串行接口以及RAM、ROM等部件统统集成到一个VLSI中,从而制造出面向I/O设计的微控制器,也就是我们俗称的单片机,成为嵌入式计算机系统异军突起的一支新秀。
20世纪90年代,在分布控制、柔性制造、数字化通信和信息家电等巨大需求的牵引下,嵌入式系统进一步加速发展。
面向实时信号处理算法的DSP产品向着高速、高精度、低功耗发展。
在应用方面,掌上电脑、手持PC机、机顶盒技术相对成熟,发展也较为迅速。
Nokia推出了智能电话,西门子推出了机顶盒,Wyse推出了智能终端,NS推出了WebPAD。
21世纪无疑是一个网络的时代,使嵌入式计算机系统应用到各类网络中去也必然是嵌入式系统发展的重要方向。
操作系统的实时系统与嵌入式实时操作系统
操作系统的实时系统与嵌入式实时操作系统操作系统是计算机系统中的核心组成部分。
它负责管理和协调计算机硬件与软件资源,为用户和应用程序提供良好的使用环境。
操作系统又可分为实时系统和非实时系统,其中实时系统又可以进一步分为普通实时系统和嵌入式实时系统。
本文将着重探讨实时系统和嵌入式实时操作系统的概念、特点以及应用领域。
一、实时系统实时系统是指能够在规定的时间范围内对于事件进行产生、处理和响应的计算机系统。
它的特点是对时间要求极为严格,要求系统能够在给定的时间限制内完成任务的响应。
根据实时性能要求的不同,实时系统可以分为硬实时系统和软实时系统。
硬实时系统是指必须严格按照预定时间完成任务的实时系统。
在硬实时系统中,任务的延迟必须小于预定的数值,否则会导致系统失效。
这类系统通常应用于航空航天、核电站等对安全性要求极高的领域。
软实时系统则对于任务完成的时间要求相对宽松一些。
在软实时系统中,任务的延迟可以超过预定时间,但是超过的延迟应该尽量减小,以达到更好的系统性能和用户体验。
例如,在多媒体应用中,要求视频播放的延迟尽可能小,以免出现卡顿的情况。
二、嵌入式实时操作系统嵌入式实时操作系统是一种运行在嵌入式计算机系统上的实时操作系统。
它通常被嵌入在具有特定功能的设备或系统中,以实时地完成特定的任务。
嵌入式实时操作系统的特点是高度可靠、实时性强、功耗低以及对硬件资源的优化利用。
与通用操作系统相比,嵌入式实时操作系统更加注重对实时任务的管理和调度。
它可以根据任务的优先级和时间要求,合理分配系统资源,确保任务在规定时间内得到处理和响应。
此外,嵌入式实时操作系统还通常具有小内核、快速启动和低资源消耗等特点,以满足对于设备功耗和响应速度的要求。
嵌入式实时操作系统被广泛应用于各个领域,如交通系统、医疗设备、工业自动化等。
例如,在交通系统中,嵌入式实时操作系统可以实时处理交通信号灯的状态,以确保交通流畅和安全。
在医疗设备中,嵌入式实时操作系统可以实时监测患者的生命体征,并根据需要发出相应的指令。
什么是嵌入式操作系统 常见的嵌入式系统有哪些
什么是嵌入式操作系统常见的嵌入式系统有哪些
常见的嵌入式系统:
Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-
II、VxWorks、pSOS、Nucleus、ThreadX 、Rtems 、QNX、INTEGRITY、OSE、C ExecuTIve
什幺是嵌入式操作系统
嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统的重要组成部分。
嵌入时操作系统具有通用操作系统的基本特点,能够有效管理复杂的系统资源,并且把硬件虚拟化。
传统定义(狭义嵌入式):嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
当前客观定义(泛嵌入式):除PC之外的一切计算机系统都可以叫嵌入式系统。
典型代表:智能手机、工业机器人、汽车电子、航空航天(四。
嵌入式操作系统基础知识
嵌入式操作系统基础知识嵌入式操作系统是指运行在嵌入式系统中的操作系统。
它是一种特殊的操作系统,具有高度的实时性、可靠性和稳定性,应用于嵌入式系统领域。
嵌入式操作系统的基础知识包括操作系统的概念、嵌入式系统的特点、嵌入式操作系统的分类、嵌入式操作系统的设计原则以及嵌入式操作系统的应用等方面。
首先,操作系统是指管理计算机软硬件资源、控制程序运行、为用户提供接口的系统软件。
在嵌入式系统中,操作系统需要具有高度的实时性和可靠性,能够适应各种硬件平台和应用环境。
其次,嵌入式系统的特点主要包括资源受限、功耗低、体积小、价格低等方面。
这些特点对于嵌入式操作系统的设计和实现都提出了更高的要求。
嵌入式操作系统可以分为裸机操作系统和实时操作系统两种。
裸机操作系统是指没有任何操作系统支持的程序设计,程序本身必须包括对外设的访问和处理,开发难度较大;实时操作系统是指具有高度实时性的操作系统,其特点是实时性好、可靠性高、效率高,常用于控制系统等领域。
常见的实时操作系统包括VxWorks、RTLinux等。
嵌入式操作系统的设计原则主要包括简洁、高效、可靠、可移植等方面。
简洁是指嵌入式操作系统的核心功能尽量简单,代码量要小;高效是指嵌入式操作系统要具有快速响应、占用空间小等特点;可靠是指嵌入式操作系统要具有稳定性、可用性、可维护性等特点;可移植是指嵌入式操作系统应该能够适应各种硬件平台和应用环境。
嵌入式操作系统的应用广泛,包括通信设备、工业自动化、医疗设备、汽车电子、智能家居等领域。
例如,手机中的操作系统就是嵌入式操作系统之一。
总之,嵌入式操作系统是一个广泛应用于嵌入式系统领域的特殊操作系统,具有高度的实时性、可靠性和稳定性。
在嵌入式操作系统的设计和实现中,需要遵循简洁、高效、可靠、可移植等设计原则。
嵌入式操作系统的应用范围广泛,在各种电子产品中都有应用。
嵌入式操作系统的种类与特点
嵌入式操作系统的种类与特点嵌入式操作系统的种类与特点嵌入式操作系统是用于嵌入式系统中的特定目的操作系统,它通常具有较小的内存占用和资源消耗。
嵌入式操作系统的种类繁多,每种都有其特定的特点和适用范围。
本文将介绍几种常见的嵌入式操作系统及其特点。
⒈实时操作系统(RTOS)实时操作系统是一种能够满足实时性要求的操作系统。
它能够以快速和准确的方式对任务请求作出响应,并能够在规定的时间内完成任务。
实时操作系统分为硬实时操作系统和软实时操作系统。
硬实时操作系统要求任务在严格的时间限制内完成,而软实时操作系统可以容忍适度的延迟。
⒉嵌入式 Linux嵌入式 Linux 是基于 Linux 内核开发的嵌入式操作系统。
它具有开源的特点,可以根据需要进行定制和修改。
嵌入式 Linux 适用于需要较强的兼容性和可扩展性的应用场景。
它提供了许多实用的工具和库,使开发人员能够更方便地进行开发和调试。
⒊Windows 嵌入式Windows 嵌入式是微软提供的嵌入式操作系统,它是 Windows 系列操作系统的一个延伸。
Windows 嵌入式具有良好的用户界面和易用性,适用于需要图形化界面和大量第三方应用支持的嵌入式设备。
它提供了丰富的开发工具和技术支持,使开发人员能够更便捷地进行开发和调试。
⒋实时嵌入式操作系统(RTOS)实时嵌入式操作系统是专门设计用于实时应用的操作系统。
它具有低延迟和高可靠性的特点,能够实时响应外部事件,并在最短的时间内完成任务。
实时嵌入式操作系统适用于需要高精度和高效率的实时应用,如航空航天、工业控制等领域。
⒌轻量级操作系统轻量级操作系统是一种占用系统资源较少的操作系统。
它具有较小的内存占用和启动时间,并提供了必要的功能和服务。
轻量级操作系统适用于资源受限的嵌入式设备,如传感器节点、嵌入式网关等。
附件:本文档无涉及附件。
法律名词及注释:⒈实时性要求:指一个系统对任务请求能够在特定时间内作出响应,并完成任务的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
嵌入式系统是根据应用的要求,将操作系统和功能软件集成于计算机硬件系统之中,从而实现了软件与硬件一体化的计算机系统。
嵌入式系统一般不提供与终端用户交互的手段,具有小巧、高度自动化、响应速度快等特点。
作为嵌入式系统灵魂的嵌入式操作系统,是随着嵌入式系统的发展而出现的,它是嵌入式系统发展到一定阶段的产物。
嵌入式操作系统的出现,将大大提高嵌入式系统开发的效率,改变以往嵌入式软件设计只能针对具体的应用从头做起的历史。
在嵌入式操作系统之上开发嵌入式系统将减少系统开发的工作量,增强嵌入式应用软件的可移植性,使嵌入式系统的开发方法更具科学性。
可以说,嵌入式操作系统的出现为嵌入式系统的发展铺平了道路。
嵌入式操作系统负责嵌入式系统的全部软、硬资源的分配、调度工作,控制并协调并发活动,它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。
常见的几种嵌入式操作系统,现行应用中比较流行的嵌入式操作系统有Linux、WindowsCE、VxWorks、eCos、μC/OS-II、QNX等,下文将列举这几种相对常见的嵌入式操作系统特性,作为设计选择参考。
1.嵌入式LinuxLinux是开放源代码、免费使用和自由传播的操作系统,发展历史悠久,第三方应用软件非常丰富,多数自由软件都能够运行在Linux系统上。
Linux经过不断改版升级,已经发展成一个遵循POSIX标准的纯32位多用户多进程操作系统。
嵌入式Linux是将Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行。
它广泛应用在移动电话、个人数字助理(PDA)、媒体播放器、消费性电子产品以及航空航天等领域。
嵌入式Linux因此具有丰富的开放源代码资源,又具有嵌入式操作系统的特性,有许多公开的代码可以参考和移植,免费的OS使其在价格上极具竞争力。
Linux的内核小、效率高,内核的更新速度很快;Linux可定制,其系统内核最小只有约134 KB。
Linux适用于多种CPU和硬件平台,是一个跨平台的系统。
到目前为止,它可以支持Alpha、ARM、M68K、MIPS、PowerPC、SH、SPARC、MicroBlaze、Intel X86等二三十种CPU。
Linux具有丰富的可配置组件,如数量繁多的设备驱动程序、多媒体、文件系统、网络、内存管理等。
嵌入式Linux系统不是实时操作系统,RT_Linux支持实时性,稳定性好,安全性好,不过价格不低。
也有针对没有MMU设备移植的μClinux系统(最新的Linux2.6内核可配置MMU,支持无MMU的CPU,实际上已合并了μClinux)。
搭建嵌入式开发环境,可以免费从Linux官网下载gcc编译器、gdb调试器等交叉开发工具。
要求运行在Linux系统上,这对Windows用户来说可能是不易接受的。
虽然通过Cygwin可以在Windows上交叉开发Linux程序,不过Cygwin首先需要配置并生成交叉工具链。
在生成交叉编译器的过程中,可能会遇到多次错误,就需要根据给出的出错信息,进行相应文件的修改。
并且在实践中发现,利用Cygwin编译嵌入式Linux应用程序和Red Hat Linux编译的运行效果不一致。
虽然Linux下支持的图形化交叉调试工具有不少可用资源,但针对具体的硬件平台,需要的设置工作也不少。
可见,嵌入式Linux还缺乏好用的集成开发环境,需要消耗一定人力用于搭建开发环境。
2. VxWorksVxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),具有高可靠性、高实时性、高性能、组件丰富可裁剪的微内核结构,以及友好的用户开发环境。
它以良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通信、军事演习、弹道制导、飞机导航等。
在美国的F-16/FA-18战斗机、B-2隐形轰炸机和爱国者导弹上,甚至火星探测器上也用到了VxWorks。
支持的CPU有M68K、PowerPC、ColdFire、In-tel X86、ARM、SPARC、MIPS等几十种。
Tornado是WindRiver公司推出的集成开发环境,为用户提供支持C、C++语言的交叉编译器和类库。
编译器包括GNU的C/C++编译器和Diab C/C++编译器。
图形化的工程管理工具非常方便有效,可以方便地对VxWorks操作系统、组件及工程编译参数进行配置。
核心工具包括VxSim仿真器、WindView软件逻辑分析仪、WindShell命令行执行工具、CrossWind集成调试器、Brow-ser系统对象检查工具。
这些工具非常实用,方便开发调试。
编辑器虽不受推崇,但好在可以设置外部编辑器。
VxWorks性能优越,开发调试便利,有强大的技术支持,但是昂贵的价格让开发者望而却步。
3. eCoseCos(embedded Configuration operating system)是由RedHat推出的小型实时操作系统。
它诞生于1997年,最早是Cygnus公司开发,后被RedHat收购。
它的特点是源码开放、免费、内核可灵活配置(配置项达200多项,甚至可以配置调度器的级别和最大任务个数,可以说是调整操作系统以适应应用程序),最低编译内核可小至10 KB的级别,适合用于微小型系统,比如增强型bootloader。
eCos网络发行版支持的交叉开发主机有Windows和Linux两种版本,开发编译工具可支持GNU开源的开发工具链。
eCos系统包含的开发工具有软件配置和构建工具,及基于GNU的编译器、汇编器、链接器、调试器和仿真器。
支持的CPU有十几种,包括ARM、Hitachi H8300、Intelx86、MIPS、Matsushita AM3x、Motorola 68k、PowerPC、SuperH、SPARC和NEC V8xx,可以方便对不同平台的移植。
eCos 系统组件非常丰富,可加速开发。
核心组件有硬件抽象层、实时内核、μITRON 3.0兼容的API、POSIX兼容的API、ISO C和数学库、从USB支持,TCP/IP网络协议栈、GDB调试支持、串口、以太网驱动等。
4. μC/OS-IIμC/OS-II是Micrium公司的基于优先级抢占、多任务的小型实时操作系统。
发布于1992年,最多可以管理255个任务,支持信号量及互斥信号量、消息队列和消息邮箱、固定大小内存块管理、时间/定时器管理等服务。
内核代码量小巧,适合学习和研究。
作为大学实时操作系统的典型教材,它具有广泛的用户群,已广泛应用于高安全性的设备。
其源码99%符合MISRA C编码标准。
支持的CPU有40多种,主要包括ARM、AVR、Niso、SE3208、M. Core、ColdFire、PowerPC、8051、80xC52、80x86、SPARClite、SH、Xscale、PIC18、PIC24、TMS320、TMS470、Z-80等。
可以从官方网站获得45天的免费评估源码。
虽然可获得源代码,但并不是免费的,版权费针对产品、产品线或CPU类型,而与具体产品数量无关。
开发环境的建立往往借助具体CPU的开发环境,比如ARM用ADS,x86用Borland C++,AVR用AVR Studio。
嵌入式软件操作系统选择要素嵌入式开发第一步需要确定嵌入式操作系统,对于嵌入式操作系统的选择通常从以下几个方面考虑:(1)硬件平台的限制如果在已经设计好的硬件电路上移植嵌入式操作系统,首先需要确定某嵌入式操作系统是否支持该硬件平台,如CPU类型、内存大小、程序存储空间大小、MMU等因素。
如果硬件电路设计留有弹性,或者是根据选择好的嵌入式操作系统进行硬件设计,就不是限制操作系统的选择,而是嵌入式操作系统限定了硬件电路的设计。
(2)性能参数要求首先需要从系统需求入手,转化为操作系统对应的技术指标,如是否要求硬实时、优先级抢占式调度、中断响应速度等。
当然,选用的嵌入式操作系统满足性能要求,还需要应用程序满足相应的设计要求,才能使整个嵌入式系统满足性能参数要求。
嵌入式操作系统根据不同平台可裁剪、可配置,并且在不同硬件平台运行的效果也差异悬殊。
大部分技术参数可以从网络上找到。
虽然测试的硬件平台不尽相同,但往往可以通过类比得到所设计电路的技术参数。
如果有些参数无法确定,并且技术支持缺乏,就需要主动进行性能参数测试。
(3)开发、调试环境功能强大、容易搭建的集成开发/调试环境能节省项目人力投入,加速开发进度。
这也是选择嵌入式操作系统时需要考虑的重要因素。
大部分开发人员选择操作系统并不看操作系统特性,而是专注于集成开发环境的优劣,可见开发环境对嵌入式开发的重要性。
对集成开发环境的评价,主要考虑:编辑、编译、调试界面是否友好和高度集成;支持的PC 机操作系统;编译器通用性(容易掌握和移植),支持的编程语言,提供的库资源;是否支持版本控制(与Subversion或SourceSafe直接关联);调试环境的搭建(搭建是否便利,支持哪些连接方式,是否支持单步、断点跟踪调试);仿真平台(在硬件电路完成之前就可进行编程调试,方便单元测试);其他辅助调试、分析工具(如目标观察、系统分析、内存分析等)。
(4)移植操作系统的难易虽然嵌入式操作系统的一个重要作用是让程序设计工作量大大减少,将主要设计工作集中在应用程序开发,但是毕竟嵌入式系统是针对具体平台配置的,移植操作系统就是要对这些差异环节编程,实现硬件和操作系统的连接。
从层次上看,有CPU内核移植、CPU 的移植、最小系统组成的移植、外设驱动的移植。
移植的难易主要是考察在代理商或技术支持所提供的模板基础上需要实现哪些中间层模块,有哪些现成的模块可利用。
操作系统移植是否相应地有支持的调试平台,程序下载环境对操作系统的移植工作也有很大影响。
(5)应用模块支持应用模块支持也对嵌入式软件工作量有重要影响,如开发的嵌入式系统要求支持FTP文件传输协议,支持TFT LCD的图形界面显示,那么内核是否包含TCP/IP组件和网络文件系统、是否包含TFT LCD驱动模块就对进一步的开发工作有很大影响。
尤其是一些编程调试工作量大的协议、驱动,能直接利用内核组件支持是最好的解决方案。
除了以上几点,技术支持,可移植性支持,软件购置成本也是选择嵌入式操作系统要考虑的因素。
μCOS-Ⅱ是面向中小型应用的、其任务基于优先级的可剥夺嵌入式实时内核,其特点是小巧、性能稳定、可免费获得实现代码,所以我们选用μCOS-Ⅱ操作系统μCOS-Ⅱ的移植分析所谓移植,就是使一个实时内核能在其他的微处理器或微控制器上运行。
为了方便移植,大部分μCOS-Ⅱ是用C语言编写的,但与硬件有关的代码仍需要用汇便语言编写。