版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
11嵌入式系统概述
11嵌入式系统概述主要内容:(1)嵌入式系统的概念(2)嵌入式系统的特点、分类及应用领域(3)主流嵌入式微处理器(4)ARM微处理器(5)嵌入式操作系统(6)嵌入式系统的设计方法11.1什么是嵌入式系统简介
经过几十年的发展,嵌入式系统已经在很大程度改变了人们的生活、工作和娱乐方式,而且这些改变还在加速。
嵌入式系统具有无数的种类,每类都具有自己独特的个性:-------例如,MP3、数码相机与打印机就有很大的不同。汽车中更是具有多个嵌入式系统,使汽车更轻快、更干净、更容易驾驶。11.1什么是嵌入式系统简介广义:
微处理器+硬/软件系统狭义:
嵌入式微处理器+OS+特定功能+专用+硬/软件系统现实中的嵌入式系统
嵌入式系统在很多产业中得到了广泛的应用并逐步改变着这些产业,包括工业自动化、国防、运输和航天领域。
例如神舟飞船和长征火箭中的嵌入式系统,导弹的制导系统也是嵌入式系统,高档汽车中也有多达几十个嵌入式系统。在日常生活中,人们使用各种嵌入式系统,但未必知道它们。事实上,几乎所有带有一点“智能”的家电(全自动洗衣机、电脑电饭煲…)都是嵌入式系统。嵌入式系统广泛的适应能力和多样性,使得视听、工作场所甚至健身设备中到处都有嵌入式系统。现实中的嵌入式系统嵌入式系统的概念
目前,对嵌入式系统的定义多种多样,但没有一种定义是全面的。下面给出两种比较合理定义:从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。
术语嵌入式反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。嵌入的系统中可以共存多个嵌入式系统。嵌入式系统的发展历程20世纪70年年代--单片机(嵌入式的萌芽阶段)20世纪80年代--实时操作系统内核20世纪90年代--实时多任务操作系统21世纪--面向Internet阶段嵌入式系统示例——汽车控制系统马达控制器车灯嵌入式系统示例——汽车控制系统尾灯控制系统后车门控制系统前车门控制系统座椅控制系统发动器控制系统所有的控制系统都是一个完整的嵌入式系统11.2嵌入式系统的特点、分类和应用●嵌入式系统的特点●嵌入式系统的分类●嵌入式系统的应用1嵌入式系统的特点:11.2嵌入式系统的特点、分类和应用系统内核小专用性强系统精简高实时性多任务的操作系统需要专门的开发工具和环境(自身不具备)2嵌入式系统的分类由于嵌入式系统由硬件和软件两大部分组成,所以其分类也可以从硬件和软件进行划分。
11.2嵌入式系统的特点、分类和应用2嵌入式系统的分类11.2嵌入式系统的特点、分类和应用---------嵌入式系统的硬件嵌入式微控制器(MCU)嵌入式DSP处理器(DSP)嵌入式微处理器(MPU)嵌入式片上系统(SOC)嵌入式处理器嵌入式处理器
嵌入式微控制器又称单片机,它是将整个计算机系统集成到一块芯片中。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、FlashRAM、EEPROM等各种必要功能和外设。为适应不同的应用需求,一般一个系列的单片机具有多种衍生产品,每种衍生产品的处理器内核都是一样的,不同的是存储器和外设的配置及封装。这样可以使单片机最大限度地和应用需求相匹配,功能不多不少,从而减少功耗和成本。和嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称微控制器。嵌入式微控制器目前的品种和数量最多,比较有代表性的通用系列包括8051、P51XA、MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300、数目众多ARM芯片等。目前MCU占嵌入式系统约70%的市场份额。——嵌入式微控制器(MCU)复位部件看门狗部件晶振部件I/O部件中断部件ROM部件SRAM部件定时器部件CPU核嵌入式处理器
DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。在数字滤波、FFT、谱分析等方面DSP算法正在大量进入嵌入式领域,DSP应用正从在通用单片机中以普通指令实现DSP功能,过渡到采用嵌入式DSP处理器。嵌入式DSP处理器比较有代表性的产品是TexasInstruments的TMS320系列和Motorola的DSP56000
系列。TMS320系列处理器包括用于控制的C2000系列,移动通信的C5000系列,以及性能更高的C6000和C8000系列。DSP56000目前已经发展成为DSP56000,DSP56100,DSP56200和DSP56300等几个不同系列的处理器。另外PHILIPS公司近年也推出了基于可重置嵌入式DSP结构低成本、低功耗技术上制造的R.E.A.LDSP处理器,特点是具备双Harvard结构和双乘/累加单元,应用目标是大批量消费类产品。——嵌入式DSP处理器嵌入式处理器通用计算机的CPU----演变-----》MPU
体系结构:VonNeumann或Harvard指令系统:CISC或RISC改进:1、保留部分功能,去除冗余功能2、装配在专业电路板上3、抗外界干扰、可靠性方面增强——嵌入式微处理器(MPU)嵌入式处理器应用中:将MPU装配在专门设计的电路板上,只保留和嵌入式应用有关功能,这样可以大幅度减小系统体积和功耗。嵌入式微处理器及其存储器、总线、外设等安装在一块电路板上,称为单板计算机。如STD-BUS、PC104等。——嵌入式微处理器(MPU)MPUROMRAM外设1外设2单板计算机MIPS68000ARMPowerPC嵌入式处理器
随着EDA的推广和VLSI设计的普及化及半导体工艺的迅速发展,在一个硅片上实现一个更为复杂的系统的时代已来临,这就是SystemOnChip(SOC)。各种通用处理器内核将作为SOC设计公司的标准库,和许多其它嵌入式系统外设一样,成为VLSI设计中一种标准的器件,用标准的VHDL等语言描述,存储在器件库中。用户只需定义出其整个应用系统,仿真通过后就可以将设计图交给半导体工厂制作样品。这样除个别无法集成的器件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简洁,对于减小体积和功耗、提高可靠性非常有利。
SoC可以分为通用和专用两类。通用系列包括Infineon的TriCore、Motorola的M-Core、某些ARM系列器件、Echelon和Motorola联合研制的Neuron芯片等。专用SoC一般专用于某个或某类系统中,不为一般用户所知。一个有代表性的产品是Philips的SmartXA,它将XA单片机内核和支持超过2048位复杂RSA算法的CCU单元制作在一块硅片上,形成一个可加载JAVA或C语言的专用的SOC,可用于公众互联网如Internet安全方面。——嵌入式片上系统(SoC)2嵌入式系统的分类11.2嵌入式系统的特点、分类和应用---------嵌入式系统的软件嵌入式系统实时系统分时系统硬实时系统软实时系统3嵌入式系统的应用11.2嵌入式系统的特点、分类和应用工业控制消费电子网络及电子商务军事国防工业控制工业控制北斗嫦娥五号11.3嵌入式微处理器
嵌入式微处理器有许多种流行的处理器核,芯片生产厂家一般都基于这些处理器核生产不同型号的芯片。这里主要介绍几种嵌入式处理器的架构,以及典型芯片制造商生产的芯片型号。
嵌入式微处理器11.3嵌入式微处理器
ARM已成为移动通信、手持设备、多媒体数字消费嵌入式解决方案的RISC标准。ARM处理器有三大特点:小体积、低功耗、低成本而高性能;16/32位双指令集;全球的合作伙伴众多。嵌入式微处理器--------ARM/StrongARMARM11.3嵌入式微处理器
MIPS(Microprocessorwithoutinterlockedpipelinedstages,无内部互锁流水级的微处理器)是一种处理器内核标准,由MIPS技术公司开发。嵌入式微处理器--------
MIPSMIPSMIPS系列微处理器最初是在上世纪80年代由美国斯坦福大学Hennessy教授领导的研究小组研制出来的,MIPS系列微处理器芯片是出现最早的商业RISC架构芯片之一。MIPS应用领域覆盖游戏机、路由器、掌上电脑等各个方面。MIPS的系统结构及设计理念比较先进,在设计理念上MIPS强调软硬件协同提高性能,同时简化硬件设计。11.3嵌入式微处理器
PowerPC处理器品种很多,既有通用的处理器,又有嵌入式控制器和内核,应用范围非常广泛,从高端的工作站、服务器到桌面计算机系统,从消费类电子产品到大型通信设备等各个方面。由IBM(国际商用机器公司)、Apple(苹果公司)和Motorola(摩托罗拉)公司共同开发嵌入式微处理器--------
PowerPC11.3嵌入式微处理器
x86系列处理器,起源于Intel架构的8080,再发展出286、386、486,Pentium4等等。
除此之外AMD(美国超威半导体公司)的系列处理器芯片也属于x86构架。嵌入式微处理器--------
x8611.3嵌入式微处理器
Motorola68000(68K)
是出现得比较早的一款嵌入式处理器,68K采用的是CISC结构,与现在的PC指令集保持了二进制兼容。嵌入式微处理器--------
68K/Coldfire11.4ARM微处理器1ARM简介:
ARM(AdvancedRISCMachines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。
1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM技术知识产权(IP)核的微处理器已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,ARMARM公司简介将技术授权给其它芯片厂商形成各具特色的ARM芯片...ARM处理器核简介ARM公司开发了很多系列的ARM处理器核,目前应用比较广泛的系列是:ARM7ARM9ARM9EARM10SecurCoreXscale
2ARM处理器系列
ARM11ARMCortexStrongARMV4V7V5V6-A-R-MARM处理器核简介——ARM7
该系列包括ARM7TDMI、ARM7TDMI-S、带有高速缓存处理器宏单元的ARM720T和扩充了Jazelle(java加速器)的ARM7EJ-S。该系列处理器提供Thumb16位压缩指令集和EmbededICE软件调试方式,适用于更大规模的SoC设计中。
ARM7系列广泛应用于多媒体和嵌入式设备,包括Internet设备、网络和调制解调器设备,以及移动电话、PDA等无线设备。
2ARM处理器系列
ARM处理器核简介——ARM9该系列包括ARM9TDMI、ARM920T和带有高速缓存处理器宏单元的ARM940T。除了兼容ARM7系列,而且能够更加灵活的设计。ARM9系列主要应用于引擎管理、仪器仪表、安全系统和机顶盒等领域。
2ARM处理器系列
ARM处理器核简介——ARM10
该系列处理器包括ARM1020E、ARM1022E、ARM1026EJ-S三种类型。其核心在于使用向量浮点(VFP)单元VFP10提供高性能的浮点解决方案,从而极大提高了处理器的整型和浮点运算性能。可以用于视频游戏机和高性能打印机等场合。
2ARM处理器系列
ARM处理器核简介——ARM11基于ARMv6指令架构。该系列主要有ARM1136J、ARM1156T2和ARM1176JZ三个内核型号。ARM11具有很好的媒体处理能力和低功耗特点,适用于无线移动设备和消费类电子产品;ARM11高数据吞吐量和高性能的结合也使其能很好地应用于网络处理;ARM11的实时性能和浮点处理性能也使其可以满足汽车电子应用的需求。
2ARM处理器系列
ARM处理器核简介——CortexARM11以后的产品改用Cortex命名,并分成A、R和M三类:“A”系列面向尖端的基于虚拟内存的操作系统和用户应用-------如:智能手机、平板电脑等“R”系列针对实时系统------如:汽车制动系统等“M”系列针对微控制器------STM32基于Cortex-M0/M3/M4核
2ARM处理器系列
ARM处理器核简介——SecurCore
该系列涵盖了SC100、SC110、SC200和SC210处理核。该系列处理器主要针对新兴的安全市场,以一种全新的安全处理器设计为智能卡和其它安全IC开发提供独特的32位系统设计,并具有特定反伪造方法,从而有助于防止对硬件和软件的盗版。
2ARM处理器系列
ARM处理器核简介——XscaleIntelXscale微控制器则提供全性能、高性价比、低功耗的解决方案,支持16位Thumb指令并集成数字信号处理(DSP)指令。
2ARM处理器系列
3RISC体系结构●RISC特点如下:
精简指令集计算机RISC结构的产生是相对于传统的复杂指令集计算机CISC结构而言的。3RISC体系结构CISC(ComplexInstructionSetComputer,复杂指令集计算机)缺点:随着计算机技术的发展而不断引入新的复杂的指令集,为支持这些新增的指令,计算机的体系结构会越来越复杂,然而,在CISC指令集的各种指令中,其使用频率却相差悬殊,约20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%。3RISC体系结构基于CISC的不合理性,1979年美国加州大学伯克利分校提出了
RISC(ReducedInstructionSetComputer,精简指令集计算机)的概念。指令系统相对简单,只要求硬件执行很有限且最常用的那部分指令,大部分复杂的操作则使用成熟的编译技术,由简单指令合成。3RISC体系结构RISC不是简单地减少指令,
而是把着眼点放在:
(1)使计算机的结构更加简单;(2)合理地提高运算速度。RISC优先选取使用频度最高的简单指令,避免复杂指令;将指令长度固定,指令格式和寻址方式种类减少;以控制逻辑为主,不用或少用微码控制等措施来达到上述目的。3RISC体系结构■指令规整、对称、简单。指令小于100条,基本寻址方式有2~3种。■单周期指令。■指令字长度一致,单拍完成,便于流水操作;
■
ARM7、Cortex-M3三级流水线:取指、译码、执行;
■
ARM9五级流水线;
■
ARMl0六级流水线。■大量的寄存器。寄存器不少于32个。数据处理器的指令只对寄存器的内容操作。只有加载/存储指令可以访问存储器。●RISC特点如下:流水线ARM和Thumb状态Thumb指令集的功能是32位ARM指令集的功能子集。Thumb在性能和代码大小之间提供了出色的折中。正在执行Thumb指令集的处理器是工作在Thumb状态下------16位。正在执行ARM指令集的处理器是工作在ARM状态下------32位。4ARM微处理器的体系结构寄存器
ARM7处理器有37(31+6)个物理寄存器,有18个可编程访问的寄存器。寄存器被安排成部分重叠的组。每种处理器模式都有不同的寄存器组。分组的寄存器在异常处理和特权操作时,可得到快速的上下文切换。ARM7寄存器(37个)ARMCortex-A8寄存器(40个)Cortex-M3寄存器mode:
线程(thread)
执行非异常代码(用户代码)
异常(handler)执行异常代码(ISR)权利级别:特权级(Privilege)用户级(user)SP:MSP(mainstackpointer)PSP(processstackpointer)RO-R15程序状态寄存器xPSR数据处理指令加载和存储指令分支指令协处理器指令杂项指令ARM指令集ARM指令集概述ARM指令集可分为5大类指令,所有指令都可以条件执行,其中一些指令还可以根据执行结果更新CPSR寄存器的相关标志位.Thumb指令集可分为4大类指令:分支指令;数据处理指令;寄存器加载和存储指令;异常产生指令。Thumb指令集Thumb指令集概述
是16位Thumb指令集的一个超集16位指令与32位指令并存Cortex-M3架构使用Thumb-2Thumb-2指令集体系结构直接支持的数据类型ARM处理器支持下列数据类型:字节8位半字16位(必须分配为占用两个字节)字32位(必须分配为占用4个字节)1112342数据类型ARM微处理器的工作状态
ARM微处理器的工作状态一般有两种:ARM状态—处理器执行32位的、字对齐的
ARM指令;Thumb状态—处理器执行16位的、半字对齐的
Thumb指令。处理器状态切换进入Thumb状态:当操作数寄存器的状态位(位[0])为1时,执行BX(带状态切换分支指令)进入Thumb状态。如果处理器在Thumb状态进入异常,则当异常处理返回时,自动转换到Thumb状态。进入ARM状态。当操作数寄存器的状态位(位[0])为0时执行BX指令进入ARM状态。当处理器进行异常处理时,进入ARM状态,从异常向量地址处开始执行。处理器状态切换
使用BX指令将内核的操作状态在ARM状态和Thumb状态之间进行切换,程序如下:;从Arm状态切换到Thumb状态
LDRR0,=Lable+1BXR0;从Thumb状态切换到ARM状态
LDRR0,=LableBXR0地址最低位为1,表示切换到Thumb状态地址最低位为0,表示切换到ARM状态跳转地址标号ARM微处理器的工作状态
ARM体系结构的存储器格式
ARM体系结构可以用两种方法存储字数据,称为大端格式(Big-Endian)和小端格式(Little-Endian)。小端格式ARM体系结构的存储器格式
ARM体系结构可以用两种方法存储字数据,称为大端格式(Big-Endian)和小端格式(Little-Endian)。大端格式【例】一个字0x12345678,将其存放于存储器地址0x4000开始的内存单元中,分别采用小端和大端格式存储,分析每个存储单元内容。大多数CPU,如DSP,x86(PC机---小端格式单片机、网络传输的TCP/IP协议---大端格式51单片机---大端格式ARM默认小端格式,但用户可设置大、小端格式。STM32---小端格式所以在使用TCP/IP协议通信的时候,要注意大、小端格式转换STM32体系结构STM32体系结构STM32体系结构STM32体系结构STM32命名规则
11.5嵌入式操作系统
概述
计算机系统由硬件和软件组成,在发展初期没有操作系统这个概念,用户使用监控程序来使用计算机。随着计算机技术的发展,计算机系统的硬件、软件资源也愈来愈丰富,监控程序已不能适应计算机应用的要求。于是在六十年代中期监控程序又进一步发展形成了操作系统(OperatingSystem)。
发展到现在,广泛使用的有三种操作系统即多道批处理操作系统、分时操作系统以及实时操作系统。EmbeddedOperatingSystem:EOS1概述监控程序操作系统实时操作系统分时操作系统多道批处理操作系统
时间先后
适用于多个用户共享系统资源适用于计算中心等较大的计算机系统适用于嵌入式设备和有实时性要求的系统
11.5嵌入式操作系统实时操作系统是我们介绍的重点
11.5
嵌入式操作系统
监控程序操作系统实时操作系统分时操作系统多道批处理操作系统
时间先后
适用于多个用户共享系统资源适用于计算中心等较大的计算机系统适用于嵌入式设备和有实时性要求的系统实时操作系统的特点IEEE的实时UNIX分委会认为实时操作系统应具备以下的几点:异步的事件响应切换时间和中断延迟时间确定优先级中断和调度抢占式调度内存锁定连续文件同步
11.5嵌入式操作系统
实时操作系统的特点
总的来说实时操作系统是事件驱动的,能对来自外界的作用和信号在限定的时间范围内作出响应。
它强调的是实时性、可靠性和灵活性,与实时应用软件相结合成为有机的整体起着核心作用,由它来管理和协调各项工作,为应用软件提供良好的运行软件环境及开发环境。从实时系统的应用特点来看实时操作系统可以分为两种:一般实时操作系统和嵌入式实时操作系统。
11.5嵌入式操作系统
实时操作系统的特点
一般实时操作系统应用于实时处理系统的上位机和实时查询系统等实时性较弱的实时系统,并且提供了开发、调试、运用一致的环境。
嵌入式实时操作系统应用于实时性要求高的实时控制系统,而且应用程序的开发过程是通过交叉开发来完成的,即开发环境与运行环境是不一致。嵌入式实时操作系统具有规模小(一般在几K~几十K内)、可固化使用实时性强(在毫秒或微秒数量级上)的特点
。
11.5嵌入式操作系统
使用嵌入式实时操作系统的必要性嵌入式实时操作系统在目前的嵌入式应用中用得越来越广泛,尤其在功能复杂、系统庞大的应用中显得愈来愈重要。在嵌入式应用中,只有把CPU嵌入到系统中,同时又把操作系统嵌入进去,才是真正的计算机嵌入式应用。使用实时操作系统主要有以下几个因素:嵌入式实时操作系统提高了系统的可靠性。提高了开发效率,缩短了开发周期。嵌入式实时操作系统充分发挥了32位CPU的多任务潜力。
11.5嵌入式操作系统
嵌入式实时操作系统的优缺点
优点:在嵌入式实时操作系统环境下开发实时应用程序使程序的设计和扩展变得容易,不需要大的改动就可以增加新的功能。通过将应用程序分割成若干独立的任务模块,使应用程序的设计过程大为简化;而且对实时性要求苛刻的事件都得到了快速、可靠的处理。通过有效的系统服务,嵌入式实时操作系统使得系统资源得到更好的利用。缺点:需要额外的ROM/RAM开销,2~5%的CPU额外负荷,以及内核的费用。
11.5嵌入式操作系统
基本概念
对基于芯片的开发来说,应用程序一般是一个无限的循环,可称为前后台系统或超循环系统。
很多基于微处理器的产品采用前后台系统设计,例如微波炉、电话机、玩具等。
在另外一些基于微处理器应用中,从省电的角度出发,平时微处理器处在停机状态,所有事件处理都靠中断服务来完成。——前后台系统
11.5嵌入式操作系统
2嵌入式操作系统内核基础基本概念
中断服务程序处理异步事件,这部分可以看成前台行为,前台也叫中断级。时间相关性很强的关键操作一定是靠中断服务程序来保证的。
循环中调用相应的函数完成相应的操作,这部分可以看成后台行为,后台也可以叫做任务级。这种系统实时性一般ISRISRISRISR后台前台中断服务程序时间——前后台系统基本概念是计算机中最基本的程序。负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;提供用户接口,使用户获得良好的工作环境;为用户扩展新的系统功能提供软件平台。——操作系统硬件硬件驱动操作系统用户程序
11.5嵌入式操作系统
基本概念
实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等)管理、消息管理、任务调度、异常处理等工作。
在RTOS支持的系统中,每个任务均有一个优先级,RTOS根据各个任务的优先级,动态地切换各个任务,保证对实时性的要求。——实时操作系统(RTOS)
11.5嵌入式操作系统
基本概念
代码的临界区也称为临界区,指处理时不可分割的代码,运行这些代码不允许被打断。一旦这部分代码开始执行,则不允许任何中断打入(这不是绝对的,如果中断不调用任何包含临界区的代码,也不访问任何临界区使用的共享资源,这个中断可能可以执行)。为确保临界区代码的执行,在进入临界区之前要关中断,而临界区代码执行完成以后要立即开中断。
——代码的临界区
11.5嵌入式操作系统
基本概念
程序运行时可使用的软、硬件环境统称为资源。资源可以是输入输出设备,例如打印机、键盘、显示器。资源也可以是一个变量、一个结构或一个数组等。——资源
11.5嵌入式操作系统
任务A共享资源任务B任务C信号量基本概念
可以被一个以上任务使用的资源叫做共享资源。为了防止数据被破坏,每个任务在与共享资源打交道时,必须独占该资源,这叫做互斥。——共享资源访问共享资源之前申请信号量其它任务访问受阻而不能使用共享资源得到允许后,才能使用共享资源
11.5嵌入式操作系统
基本概念
一个任务,也称作一个线程,是一个简单的程序,该程序可以认为CPU完全属于该程序自己。实时应用程序的设计过程,包括------如何把问题分割成多个任务,每个任务都是整个应用的某一部分,每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。——任务
11.5嵌入式操作系统
基本概念
当多任务内核决定运行另外的任务时,它保存正在运行任务的当前状态,即CPU寄存器中的全部内容。这些内容保存在任务的当前状态保存区,也就是任务自已的栈区之中。入栈工作完成以后,就把下一个将要运行的任务的当前状态从任务的栈中重新装入CPU的寄存器,并开始下一个任务的运行。这个过程就称为任务切换。这个过程增加了应用程序的额外负荷。CPU的内部寄存器越多,额外负荷就越重。做任务切换所需要的时间取决于CPU有多少寄存器要入栈。——任务切换
11.5嵌入式操作系统
基本概念
多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任务之间的通信。内核提供的基本服务是任务切换。使用实时内核可以大大简化应用系统的设计,是因为实时内核允许将应用分成若干个任务,由实时内核来管理它们。内核需要消耗一定的系统资源,比如2%~5%的CPU运行时间、RAM和ROM等。内核提供必不可少的系统服务,如信号量、消息队列、延时等。——内核
11.5嵌入式操作系统
基本概念
调度是内核的主要职责之一。调度就是决定该轮到哪个任务运行了。
多数实时内核是基于优先级调度法的。每个任务根据其重要程序的不同被赋予一定的优先级。基于优先级的调度法指CPU总是让处在就绪态的优先级最高的任务先运行。
然而究竟何时让高优先级任务掌握CPU的使用权,有两种不同的情况,这要看用的是什么类型的内核,是非占先式的还是占先式的内核。——调度
11.5嵌入式操作系统
基本概念
非占先式内核要求每个任务自动弃CPU的所有权。非占先式调度法也称作合作型多任务,各个任务彼此合作共享一个CPU。异步事件还是由中断服务来处理。中断服务可以使一个高优先级的任务由挂起状态变为就绪状态。但中断服务以后控制权还是回到原来被中断了的那个任务,直到该任务主动放弃CPU的使用权时,那个高优先级的任务才能获得CPU的使用权。——非占先式内核
11.5嵌入式操作系统
基本概念
当系统响应时间很重要时,要使用占先式内核。因此绝大多数商业上销售的实时内核都是占先式内核。最高优先级的任务一旦就绪,总能得到CPU的控制权。当一个运行着的任务使一个比它优先级高的任务进入了就绪状态,当前任务的CPU使用权就被剥夺了,或者说被挂起了,那个高优先级的任务立刻得到了CPU的控制权。——占先式内核
11.5嵌入式操作系统
基本概念
任务的优先级是表示任务被调度的优先程度。每个任务都具有优先级。任务越重要,赋予的优先级应越高,越容易被调度而进入运行态。——任务优先级
11.5嵌入式操作系统
基本概念
中断是一种硬件机制,用于通知CPU有个异步事件发生了。
中断一旦被识别,CPU保存部分或全部上下文(即部分或全部寄存器的值),跳转到专门的子程序,称为中断服务子程序(ISR)。中断服务子程序做事件处理,处理完成后,程序返回到:1.在前后台系统中,程序回到后台程序;2.对非占先式内核而言,程序回到被中断了的任务;3.对占先式内核而言,让进入就绪态的优先级最高的任务开始运行。——中断
11.5嵌入式操作系统
前后台系统基本概念——中断ISR任务ISR非占先操作系统任务A任务B任务CISR占先操作系统任务A任务B任务C
11.5嵌入式操作系统
基本概念
时钟节拍是特定的周期性中断。这个中断可以看作是系统心脏的脉动。中断之间的时间间隔取决于不同应用,一般在10ms到200ms之间。时钟的节拍式中断使得内核可以将任务延时若干个整数时钟节拍,以及当任务等待事件发生时,提供等待超时的依据。时钟节拍率越快,系统的额外开销就越大。——时钟节拍
11.5嵌入式操作系统
uClinux是一个完全符合GNU/GPL公约的操作系统,完全开放代码。uClinux从Linux
2.0/2.4内核派生而来,沿袭了主流Linux的绝大部分特性。专门针对没有MMU的CPU,并且为嵌入式系统做了许多小型化的工作。适用于没有虚拟内存或内存管理单元(MMU)的处理器,例如ARM7TDMI。常用于具有很少内存或Flash的嵌入式系统。保留了Linux的大部分优点:稳定、良好的移植性、优秀的网络功能、完备的对各种文件系统的支持、以及标准丰富的API等。3常见的嵌入式操作系统——嵌入式Linux
11.5嵌入式操作系统常见的嵌入式操作系统
WindowsCE是微软开发的一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作,它是精简的Windows95。WindowsCE的图形用户界面相当出色。WinCE具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点。WinCE不仅继承了传统的Windows图形界面,并且在WinCE平台上可以使用Windows95/98上的编程工具(如VisualBasic、VisualC++等)、使绝大多数的应用软件只需简单的修改和移植就可以在WindowsCE平台上继续使用。
——WinCE
11.5嵌入式操作系统常见的嵌入式操作系统——AndroidAndroid一词的本义指“机器人”,Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统。该平台由操作系统、中间件、用户界面和应用软件组成。
11.5嵌入式操作系统
常见的嵌入式操作系统——VxWorksVxWorks操作系统是美国公司于1983年设计开发的一种嵌入式实时操作系统(RTOS)。
它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。----------------》应用实例:火星探测器(1997年4月、2008年5月、2012年8月登陆火星)、F-16、FA-18战斗机、B-2
隐形轰炸机、爱国者导弹。
11.5嵌入式操作系统
常见的嵌入式操作系统
OSE(Operating
System
Embedded)主要是由ENEADataAB下属的ENEAOSESystemsAB负责开发和技术服务的,一直以来都充当着实时操作系统以及分布式和容错性应用的先锋,并保持良好的发展态势。
OSE的客户深入到电信,数据,工控,航空等领域,尤其在电信方面,该公司已经有了十余年的开发经验,同诸如爱立信,诺基亚,西门子等知名公司确定了良好的关系。——OSE
11.5嵌入式操作系统
常见的嵌入式操作系统
NucleusPLUS是为实时嵌入式应用而设计的一个抢先式多任务操作系统内核,其95%的代码是用ANSIC写成的,因此非常便于移植并能够支持大多数类型的处理器。
NucleusPLUS采用了软件组件的方法。每个组件具有单一而明确的目的,通常由几个C及汇编语言模块构成,提供清晰的外部接口,对组件的引用就是通过这些接口完成的。由于采用了软件组件的方法,使NucleusPLUS的各个组件非常易于替换和复用。——Nucleus
11.5嵌入式操作系统
常见的嵌入式操作系统
eCos是RedHat公司开发的源代码开放的嵌入式RTOS产品,是一个可配置、可移植的嵌入式实时操作系统,设计的运行环境为RedHat的GNUPro和GNU开发环境。eCOS的所有部分都开放源代码,可以按照需要自由修改和添加。eCOS的关键技术是操作系统可配置性,允许用户组和自己的实时组件和函数以及实现方式,特别允许eCOS的开发者定制自己的面向应用的操作系统,使eCos能有更广泛的应用范围。——eCos
11.5嵌入式操作系统
(embeddedConfigurableoperatingsystem)常见的嵌入式操作系统μC/OS-II是一个源码公开、可移植、可固化、可裁剪、占先式的实时多任务操作系统。其绝大部分源码是用ANSIC写的,使其可以方便地移植并支持大多数类型的处理器。μC/OS-II通过了联邦航空局(FAA)商用航行器认证。自1992年问世以来,μC/OS-II已经被应用到数以百计的产品中。μC/OS-II占用很少的系统资源,并且在高校教学使用是不需要申请许可证。——μC/OS-II
11.5嵌入式操作系统
常见的嵌入式操作系统TRON是指“实时操作系统内核(TheReal-timeOperatingsystemNucleux)”,它是在1984年由东京大学的Sakamura博士提出的,目的是为了建立一个理想的计算机体系结构。通过工业界和大学院校的合作,TRON方案正被逐步用到全新概念的计算机体系结构中。
ITRON是TRON的一个子方案,它具有标准的实时内核,适用于任何小规模的嵌入式系统,日本国内现有很多基于该内核的产品,其中消费电器较多。——TRON
11.5嵌入式操作系统
常见的嵌入式操作系统TRON明确的设计目标使其甚至比Linux更适合于做嵌入式应用,内核小,启动速度快,即时性能好,也很适合汉字系统的开发。另外,TRON的成功还来源于如下两个重要的条件:(1)它是免费的(2)它已经建立了开放的标准,形成了较完善的软硬件配套开发环境,较好地形成了产业化。——TRON
11.5嵌入式操作系统
常见的嵌入式操作系统
一种32位的嵌入式操作系统,用于掌上电脑。
3Com公司的PalmComputing部开发的。(PalmComputing已经独立成一家公司。)
PalmOS与同步软件HotSync结合可以使掌上电脑与PC机上的信息实现同步,把PC的功能扩展到了手掌上。一些其他的公司也获得了生产基于PalmOS的PDA的许可,如SONY公司,Handspring公司。——PalmOS
11.5嵌入式操作系统
几种嵌入式操作系统的比较嵌入式系统的选择
11.5嵌入式操作系统
11.6嵌入式系统的软件嵌入式系统的软件一般固化于嵌入式存储器中,是嵌入式系统的控制核心,控制着嵌入式系统的运行,实现嵌入式系统的功能。由此可见,嵌入式软件在很大程度上决定整个嵌入式系统的价值。从软件结构上划分,嵌入式软件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理教育中的学生支持服务
- 医院感染预防的绩效评估
- 护理礼仪与特殊患者护理
- 护理课件制作工具使用指南
- 护理风险:持续质量改进动力
- 护理带教中的沟通艺术
- 呼吸衰竭的护理科研思路
- 零售业商品管理经理面试要点
- 旅游景点规划与开发实务
- 零售业实体店长应掌握的店铺管理技能及培训要点
- 2024中国指南:高尿酸血症与痛风的诊断和治疗(更新版)
- 2024第48届世界技能大赛江苏省选拔赛自主移动机器人项目技术工作文件
- 有限空间安全管理专项培训
- PP塑料牌号与熔指性能对比分析
- 国网配电运检知识培训课件
- 套圈活动策划方案主题
- 2025年融媒体中心招聘考试笔试试题(60题)含答案
- 精查放大内镜检查课件
- 医院应急演练培训课件
- 法人a证题库及答案
- 电梯安装重大危险源辨识及监控措施
评论
0/150
提交评论