文档库 最新最全的文档下载
当前位置:文档库 › 基于ARM的嵌入式数控系统开发研究

基于ARM的嵌入式数控系统开发研究

基于ARM的嵌入式数控系统开发研究
基于ARM的嵌入式数控系统开发研究

?数控机床世界?

收稿日期:2008-08-05

作者简介:李一平,男,机电专业教研组长、省级数控培训基地负责人。研究方向:机电一体化系统开发与设计。

基于ARM的嵌入式数控系统开发研究

李一平1,贺永2

(1.金华市九峰职业学校,浙江金华321075;2.浙江大学机械工程系,浙江杭州310027)

摘要:为了解决基于PC的开放式数控系统的不稳定、高成本、大体积等缺点,研究了基于ARM及

PMAC运动控制卡的数控系统的硬件平台构建,设计了基于ARM-Linux操作系统的主控软件

结构,研究了嵌入式数控系统软硬件功能模块的划分方案、给出了NC代码编译及PMAC在

Linux下驱动实现方案。实践证明,将实时嵌入式Linux应用于开放式数控系统,可以满足数控

机床的加工要求。

关键词:数控;嵌入式;PMAC;Linux驱动中图分类号:TN405

文献标识码:A

文章编号:1002-6673(2008)05-179-03

0引言

数控系统是现代化制造业的核心技术,是衡量一个国家制造水平的重要标志之一

[1,2]

。我国是一个制造业

大国,制造业是国民经济最重要的支柱产业,但数控技术的水平还不是很高,与欧美、日本等发达国家还有很大的差距,这严重制约着我国制造业水平的提高。而嵌入式数控技术是传统数控技术与新兴的计算机技术,控制技术,ARM技术,嵌入式操作系统以及应用软件相结合的产物,是传统制造业信息化改造的典范。

本文基于ARM9、PMAC运动控制卡和ARM-Linux嵌入式操作系统实现了嵌入式数控系统的开发,其具有系统稳定,结构紧凑,成本低廉等优点,可广泛应用于数控机床及其相关数控装备中。

1总体结构

1.1硬件需求分析

嵌入式数控系统硬件部分须满足的基本需求主要包括以下几个方面:

(1)系统的主控部分要具备一功能强大的处理器,具有较高的主频,使得嵌入式数控系统能够满足高速运动控制时的高速运算。

(2)系统主控部分的硬件资源和外围扩展接口要比较丰富。嵌入式数控系统不是一个孤立封闭的系统,一方面它需要与用户进行数据信息交互,良好的人机界面

是必须满足的基本要求,在具体实现形式上表现为:具有可视化图形界面;能够外接特定功能的数控键盘,进行对加工代码的编辑和指令操作。另一方面,系统与系统之间也需要数据通讯,一般要求具备USB、网络接口来传输数据文件。此外,最重要的是主控部分要和从控部分进行数据通讯,需要一个标准、稳定、高速的通讯接口。

(3)系统必须具有性能优良的运动控制部分。运动控制部分必须要设计成熟,功能完善,必须具有控制4轴的能力,能够实现1轴到4轴的持续匀速、变速运动、位置运动、回零运动等,能够实现2轴到4轴直线插补级2轴圆弧插补等功能;能够支持手脉和驱动开关的输入和手动控制;同时必须要反应迅速,具有高速控制能力及良好的控制精度。

(4)运动控制部分能够实现对各种机械信号的处理:包括原点信号、左右限位信号、停止信号等;能够实现对异常情况的处理:包括急停信号处理、警告信号处理,或对多种运动结果及异常情况产生的中断处理,实现实时控制。

1.2硬件结构

由系统需求分析可看出,嵌入式数控系统的关键部分是运动控制部分,它直接影响到系统的功能和性能指标。除此之外,其它的一些功能模块也非常重要,例如通讯模块,它会影响到整个系统的可用性指标。为减少研发任务,缩短研发周期,并且为了得到优秀的运动控制性能,本课题选用了当前十分流行、功能强大的基于

ARM9的EP9315处理器作为主控模块而PMAC运动控

制卡作为运动控制模块,见图1。

机电产品开发与创新

Development&InnovationofMachinery&ElectricalProducts

Vol.21,No.5Sep.,2008第21卷第5期2008年9月

179

?数控机床世界?

1.3软件结构

基于ARM9+PMAC运动控制卡的嵌入式数控系统,

其运动控制部分由专业的PMAC运动控制卡来完成,比如高实时性控制任务,如插补计算等,给系统开发带来了不少便利之处,使开发者可以专注于开发ARM9上的控制软件、图形用户界面和ARM9和PMAC运动控制卡之间的通讯等重点部分,见表1。

ARM9(EP9315)作为主控CPU,在其上面运行的

程序将负责对整个系统的管理和控制。首先要对人机交互界面进行管理;其次要控制不同的接口芯片,把外部

(USB接口)输入的控制指令接收并存放到内存中;在加

工进行时,开启编译、控制等线程,编译线程要实时对内存中的指令进行解释;控制线程除了要发送指令到

PAMC运动控制卡上,由PMAC卡来实现用户所定义的

运动控制过程,还要协调整个数控系统的统一性和协调性,见图2。

2关键技术

2.1G代码编译功能实现

通常的数控系统对NC程序的译码处理一般主要有两种控制方式:解释方式和编译方式

[3]

。解释控制方式

具有简单、思路清晰、容易实现等优点。但解释方式要求系统的硬件具有中断管理和处理能力,并且由于各模块间的控制是顺序的、串行的,不能很好地支持子程序调用、固定循环以及程序跳转等高级数控编程,加工效率较低。采用编译方式能够较好的解决这些问题。编译程序在加工准备阶段对初始的NC程序进行编译,完成对固定循环简化、续效指令的处理、子程序并入主程序流程等特殊任务,并进行刀具半径补偿,然后生成控制指令集,发送给运动控制卡。当开始加工时,管理程序调用这些指令集,控制机床加工

[4]

在实际开发中,由于译码工作和刀具半径补偿由

ARM9核心板完成,而插补控制都是由下一层的PMAC

运动控制卡操作,两个层次分工明确,采用编译模式更为合理和有效。ARM9处理器主频较高,能够较为迅速的完成译码和刀具补偿运算,所得到的指令集发送给

PMAC运动控制卡执行,提高了嵌入式数控系统的适应

性和加工能力,一方面可以兼容当前主流的多种数控系

图1控制系统硬件结构图

硬件系统

ARM9主控板ARM9处理器(EP9315)

RS232通讯接口

LCD接口USB接口

数控操作面板

LCD人机界面

文件操作

PC/104总线通讯接口

CAN总线通讯接口

PC/104总线

CAN总线DSP处理器

PMAC运动卡PC/104总线通讯接口

驱动器控制及I/O接口

PLC控制器PLC编程接口

其他各类状态监测单元

各轴伺服电机

各轴伺服驱动器各轴编码器

开关量

I/O

各类传感器等(如DS18B20数字温度传感器)

表1系统软件总体结构

数控扩展功能模块(刀具补偿,数控代码译码,前瞻控制预处理,通讯控制,误差管理等)

图形用户界面

模块组件管理嵌入式控制器通讯驱动嵌入式ARM-Linux操作系统

通讯模块组件管理

伺服运动控制

误差补偿

I/O控制

PMAC运动控制卡

图2嵌入式数控系统模块组成

扩展模块刀补模块

编译模块

前瞻控制

通讯控制

误差管理

人机界面软件

用户

界面交

互模块

组件管理模块

通讯模块

嵌入式控制器

NC内核控制扩展模块

伺服控制软件

I/O控制

进给轴控制误差补偿误差监控

实时操作系统

组件管理

伺服运动控制

通道控制主轴控制

NC

内核控制

图3词法、语法分析流程图

返回并检查

NC

代码

开始

去掉注释及空格

读入一行NC程序

G代码关键字表

关键字匹配

错误否?

显示并记录错误信息

显示并记录错误信息

否检查加工参数

代码信息存储表

错误否?

存储

文件结束?

结束

180

?数控机床世界?

TheApplicationaboutEducationalTechniqueinEducationalReformof

"NumericalControlProcessingTechnology"

ZHANGJi-Hong

(HunanIndustrialUniversity,ChangshaHunan412008,China)

Abstract:ThisarticlehasbeenontheangleofNumericalcontrolProcessingTechnology,Toinnovationtraditionteachingmethodusingmoderneducationtechnological,Letthetheoreticalteachingandthepracticeteachingisthefusion,Ithasraisedstudent'spracticalapplicationabilityandimprovedthequalityofteaching.

Keywords:moderneducationtechnology;nmericalcontrolprocessingtechnology;computersimulation;simulationtechnology

实际工作环境和解决综合问题的能力,对学科教育教学质量的大幅度提高起到不可估量的作用,必将成为《数控加工技术》教学改革的必由之路。参考文献:

[1]顾明远.教育技术[M].北京:高等教育出版社,1999.

[2]李英俊.基于现代教育技术的计算机专业教学模式研究[J].辽宁高职学报,2007,9.

[3]刘洁.浅谈现代信息技术下的教育教学改革[J].教育革新,2007,6.[4]赵巍.现代教育技术在中职数控教学中的应用模式研究[D].辽宁师范大学,2005.

(上接第176页)ResearchontheDevelopmentofEmbeddedNCSystemBasedonARMPlatform

LIYi-Ping1,HEYong2

(1.JiufengVocationalSchool,JinhuaZhejiang321075,China;

2.DepartmentofMechanicalEngineering,ZhejiangUniversity,HangzhouZhejiang310027,China)

Abstract:TosolvetheNC(numericalcontrol)defectsofinstability,highcostandlargevolumebasedonPCsystem,theNChardwareplatformwasestablishedbasedonthePMACmotioncontrolcardandARMsystem.ThestructureofmaincontrolsoftwarewasdesignedbasedonARM-Linuxoperationsystem.ThemodulepartitionschemeofembeddedNCsystemhardwarewasresearched.ThesolutionofNCcodecomplierandthedriverofPMACinLinuxweregiven.ThepracticeshowsthattheNCmachiningrequirecanbemeetwithrealtimeembeddedNCsystem.

Keywords:numericalcontrol;embeddedsystem;PMAC;driversinLinux

统的加工代码,另一方面可以实现固定循环等复杂加工功能。基于编译原理的思想,采用正则表达式实现NC代码的词法分析,其编译过程如图3所示。

2.2PMAC在ARM-Linux平台下驱动实现

PMAC运动控制卡提供了在Win32下完善的驱动程

序,但是未提供在Linux下的驱动程序,所以要完成

ARM9与PMAC运动控制卡的通讯,必须要写一个完善

的PMAC运动控制卡在ARM-Linux下的驱动程序。由于PMAC卡上带了PC/104总线,所以在ARM9上扩展出了PC/104总线接口,通过PC/104总线来完成通讯和数据传输。

从驱动程序的功能分析,主要是完成用户态和内核态数据的交换,比如内核态的数据要发给用户态、用户态的数据发给内核态等,由此对PMAC运动控制卡驱动程序所要提供的功能也就可以确定下来。从数控系统角度分析,其主要功能函数:①初始化端口;②查询数据端口是否可读;③查询数据端口是否可写;④读取一行数据;⑤写入一行数据;⑥写入一个字符数据。其驱动接口定义程序(略)。

在本系统中,PMAC运动控制卡是基于PC/104总线的设备,在驱动程序上是作为字符设备驱动程序的,驱动程序代码文件pmacisa.c和pmacisa.h文件直接编译进

ARM-Linux内核文件,在系统启动是加载内核并初始化PMAC运动控制卡。由于基于ARM9嵌入式系统和PC

机不一样,它不具备PC/104总线的实地址,因此在初始化设备的时候通过内存映射PMAC运动控制卡的基地址,从而得到一个虚拟基地址,再通过偏移相应的地址,从而实现操作PMAC运动控制卡的寄存器。

3结束语

通过对嵌入式数控系统进行总体结构分析,采用

ARM作为主控核心,而运动控制卡作为运动控制核心

的模式实现了一款嵌入式数控系统,其具有结构清晰、模块分明、稳定性好等优点。目前已经用于实际的机床加工中,取得了良好的效果。参考文献:

[1]梁宏斌,李霞,王永章.基于接口标准的开放式数控系统的研究与实现[J].计算机集成制造系统,2006,9.

[2]赵春红,秦现生,唐虹.基于PC的开放式数控系统研究[J].机械科学与技术,2005,9.

[3]伍抗逆,李斌,陈吉红.面向开放式数控系统平台的NC代码解释器开发[J].中国机械工程,2006,2.

[4]曹恒,凌正阳,蒋知峰,等.软件设计模式在数控系统人机界面开发中的应用[J].华东理工大学学报(自然科学版),2007,6.

181

三种常用的嵌入式操作系统分析与比较

三种常用的嵌入式操作系统分析与比较 摘要:提要三种常用的嵌入式操作系统——Palm OS、Windows CE、Linux;在此基础上、分析、比较这三种嵌入式操作系统,给出它们之间的异同点及各自的适用范围。 1 嵌入式系统与嵌入式操作系统 1.1 嵌入式系统 嵌入式系统是以嵌入式计算机为技术核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性能有严格要求的专用计算机系统。 嵌入式系统应具有的特点是:高可靠性;在恶劣的环境或突然断电的情况下,系统仍然能够正常工作;许多嵌入式应用要求实时性,这就要求嵌入式操作系统具有实时处理能力;嵌入式系统和具体应用有机地结合在一起,它的升级换代也是具体产品同步进行;嵌入式系统中的软件代码要求高质量、高可靠性,一般都固化在只读存储器中或闪存中,也就是说软件要求固态化存储,而不是存储在磁盘等载体中。 1.2 嵌入式操作系统 嵌入式操作系统EOS (Embedded Operating System)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、调度作,控制、协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。目前,已推出一些应用比较成功的EOS产品系列。随着Internet技术的发展、信息家电的普及应用及EOS的微型化和专业化,EOS开始从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固化以及应用的专用性等方面具有较为突出的特点。EOS是相对于一般操作系统而方的,它除具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等外,还有以下特点: ①可装卸性。开放性、可伸缩性的体系结构。 ②强实时性。EOS实时性一般较强,可用于各种设备控制当中。 ③统一的接口。提供各种设备驱动接口。

arm嵌入式系统基础教程课后答案.doc

arm 嵌入式系统基础教程课后答案【篇一:arm 嵌入式系统基础教程习题答案周立功】 /p> 1 、举出3 个书本中未提到的嵌入式系统的例子。 答:红绿灯控制,数字空调,机顶盒 2、什么叫嵌入式系统 嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的 专用计算机系统。 3、什么叫嵌入式处理器?嵌入式处理器分为哪几类? 嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。 嵌入式微处理器(embedded microprocessor unit, empu) 嵌入式微控制器(microcontroller unit, mcu) 嵌入式dsp 处理器(embedded digital signal processor, edsp) 嵌入式片上系统(system on chip) 4、什么是嵌入式操作系统?为何要使用嵌入式操作系统? 是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实 时操作系统提高了系统的可靠性。其次,提高了开发效率,缩短了 开发周期。再次,嵌入式实时操作系统充分发挥了32 位cpu 的多任务潜力。 第二章 1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务 是什么? 项目的生命周期一般分为识别需求、提出解决方案、执行项目和结 束项目 4 个阶段。识别需求阶段的主要任务是确认需求,分析投资 收益比,研究项目的可行性,分析厂商所应具备的条件。 提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。 执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定 期监控进展,分析项目偏差,采取必要措施以实现目标。 结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系 统交接给维护人员;结清各种款项。 2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险? 在一个项目中,有许多的因素会影响到项目进行,因此在项目进行 的初期,在客户和开发团队都还未投入大量资源之前,风险的评估

嵌入式系统期末考试题库及答案

嵌入式系统期末考试题库及答案 《嵌入式系统》试题库 《嵌入式系统》试题库 一、填空题 1、嵌入式系统的基本定义为:以应用中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2、从模块结构来看,嵌入式系统由三大部分组成,分别是:硬件、软件和开发平台。 3、从层次角度来看,嵌入式系统由四大部分组成,分别是:应用软件层、操作系统层、板级支持包(或硬件抽象层)和硬件层。 4、嵌入式产品的主要度量指标包括:上市时间、设计成本和产品质量。 5、嵌入式系统的设计过程包括:需求分析、规格说明、体系结构设计、构件设计、系统集成和系统测试。 6、需求分析包括:功能性需求分析和非功能性需求分析。 7、确定输入信号是数字信号还是模拟信号属于功能性需求。 8、确定系统的物理尺寸和重量属于非功能性需求。 9、在嵌入式系统的设计过程中,其中规格说明解决“做什么”。 10、在嵌入式系统的设计过程中,其中体系结构设计解决“如何做”。 11、在嵌入式系统的设计过程中,软硬件划分应该在体系结构设计阶段完成。12、在嵌入式系统的设计过程中,处理器的选择应该在体系结构设计阶段完成。13、在嵌入式系统的设计过程中,嵌入式操作系统的选择应该在体系结构设计阶段完成。14、在嵌入式系统的设计过程中,完成原理图设计应在构件设计阶段完成。15、在嵌入式系统的设计过程中,完成版图设计应在构件设计阶段完成。16、在嵌入式系统的设计过程中,完成软件设计应在构件设计阶段完成。 17、反映嵌入式系统设计人员的水平能力主要在于总体设计(需

求分析、规格说明和体系结构设计)和系统调试。 18、设计流程指的是设计过程中所经历的过程步骤。 19、设计重用技术主要分为基于IP 核的模块级重用和基于平台的系统级重用。20、软硬件协同设计由系统描述、软硬件划分、软硬件协同综合以及软硬件协同模拟与验证几个阶段组成。 21、嵌入式处理器的分类包括三种,分别是:嵌入式微处理器、微控制器(或单片机)和 第1 页共44 页 1 《嵌入式系统》试题库 数字信号处理器(DSP)。 22、列举常见的ARM 系列处理器:ARM7 系列、ARM9 系列、ARM11 系列、Cortex-M 系列、Cortex-R 系列、Cortex-A 系列等。 23、ARM 系列微处理器支持的数据类型有:字节、半字和字等三种类型。24、ARM 系列微处理器支持的字数据存储格式有:大端格式和小端格式。25、ARM 系列处理器通过执行BX 或者BLX 指令来实现工作状态的切换。26、列举常见的存储器类型:SRAM、DRAM、Flash、EEPROM 等。27、对于RAM 存储器主要有两种,分别是:SRAM 和DRAM。 28、在时钟信号边沿到来之前的一段时间内,数据信号必须保持稳定,这段时间称为器件的建立时间;在时钟信号边沿到来之后的一段时间内,数据信号必须保持稳定,这段时间称为器件的保持时间。 29、总线是在多于两个模块(设备、子系统)之间传送信息的公共通路。30、总线的功能是信息共享和交换。 31、总线由传输信息的物理介质和管理信息传输的协议组成。 32、挂接在总线上的设备依据启动总线事务的能力可以分为主设备和从设备。33、总线协议依据同步方式可分为同步时序协议和异步时序协议。34、总线仲裁方式可分为集中式仲裁和分布式仲裁。

常见的嵌入式操作系统

常见的嵌入式操作系统 分类:嵌入式操作系统2012-12-11 10:06 459人阅读评论(1) 收藏举报嵌入式操作系统 嵌入式操作系统与通用的操作相比较主要特点在于: 1.小内核,稳定可靠。 2.需要可装卸、可裁剪,以便能灵活应对各种不同的硬件平台。 3.面向应用,强实时性,可用于各种设备控制当中。 国际上常见的嵌入式操作系统大约有40种左,右如:Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS、Nucleus、ThreadX 、Rtems 、QNX、INTEGRITY、OSE、C Executive 。他们基本可以分为两类,一类是面向控制、通信等领域的实时操作系统,如windriver公司的vxworks、isi的psos、qnx系统软件公司的qnx、ati的nucleus等;另一类是面向消费电子产品的非实时操作系统,这类产品包括个人数字助理(pda)、移动电话、机顶盒、电子书、webphone等,系统有Microsoft的WinCE,3Com 的Palm,以及Symbian和Google的Android等。 一、VxWorks VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是T ornado嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌人式实时操作系统领域逐渐占据一席之地。VxWorks具有可裁剪微内核结构;高效的任务管理;灵活的任务间通讯;微秒级的中断处理;支持POSIX 1003.1b实时扩展标准;支持多种物理介质及标准的、完整的TCP/IP网络协议等。 然而其价格昂贵。由于操作系统本身以及开发环境都是专有的,价格一般都比较高,通常需花费10万元人民币以上才能建起一个可用的开发环境,对每一个应用一般还要另外收取版税。一般不通供源代码,只提供二进制代码。由于它们都是专用操作系统,需要专门的技术人员掌握开发技术和维护,所以软件的开发和维护成本都非常高。支持的硬件数量有限。 二、Windows CE Windows CE与Windows系列有较好的兼容性,无疑是Windows CE推广的一大优势。其中WinCE3.0是一种针对小容量、移动式、智能化、32位、了解设备的模块化实时嵌人式操

基于Linux嵌入式操作系统的研究

基于Linux 嵌入式操作系统的研究 李红卫1,潘瑜1,王树亮2,薛小锋1 (1.江苏技术师范学院计算机科学与工程学院,江苏常州213001; 2.江苏技术师范学院图书馆,江苏常州213001) 摘要:从Linux内核实时性、实时调度策略以及时钟细粒度定时器三个方面,对Linux嵌入式实时化技术进行了探讨。在内核中插入抢占点或采用双内核系统,改善Linux的实时性能;通过动态优先级提高实时任务的调度性能;通过增加时钟中断频率或采用实时时钟一次性模式,实现时钟细粒度。 关键词:Linux;嵌入式系统;实时性;进程调度 中图分类号:TP316.2文献标识码:A 0引言 嵌入式系统是集软硬件于一体可独立工作的计算机系统,它通常是更大系统中一个完整的部分[1]。 在早期的嵌入式系统设计中一般不包含操作系统,但当系统越来越复杂、应用范围越来越广泛时,没有操作系统已成为系统开发的最大障碍;因此,在嵌入式系统的发展中,出现了各种各样的商用嵌入式操作系统。嵌入式操作系统的出现改变了以往嵌入式软件设计只能针对具体的应用从头做起,使嵌入式系统的开发方法更具科学性;同时,采用嵌入式操作系统提高了系统的开发效率,减少了开发的工作量,增强了软件的可移植性。操作系统成为嵌入式系统的核心,是一个时代的特征,也是嵌入式系统从简单的单片机、微处理器走向愈来愈复杂的嵌入式SOC和CPU的自然体现[2]。开源Linux操作系统的出现,给嵌入式操作系统的发展带来生机,将Linux应用于嵌入式系统开发环境中已十分广泛;但就目前而言,嵌入式Linux的研究成果与市场的真正需求仍有一段差距,还需要在嵌入式Linux系统的实时性、进程调度等方面对其进行不断的改进和完善。 1改造Linux为嵌入式操作系统的分析 实时系统最重要的特征是实时性,实时性是指系统对外部事件的响应和处理要在一个给定的时间内 完成,即计算必须在到达死线(deadline)前完成[1]。根据丢失死线的容忍程度可将实时系统分为硬实时系 统和软实时系统:硬实时系统必须保证任务在到达死线之前完成,丢失死线将会引发灾难;软实时系统能保证任务在死线之前完成,但死线的丢失并不会带来致命的错误。 在大多数嵌入式系统应用中往往要求系统具有实时性。虽然Linux是一个分时操作系统,但其符合POSIX1003.1b关于实时扩展部分的标准,尤其Linux2.6的推出给嵌入式系统以及实时系统的应用带来生机。将Linux改造为嵌入式实时操作系统具有(1)Linux功能强大、(2)开放源码、(3)支持多种硬件平台、(4) 收稿日期:2006-02-21;修回日期:2006-04-03 基金项目:江苏技术师范学院科研基金资助项目(KYY04001) 作者简介:李红卫(1966-),男,山西阳城人,江苏技术师范学院计算机科学与工程学院副教授。 JOURNALOFJIANGSUTEACHERSUNIVERSITYOFTECHNOLOGY江苏技术师范学院学报 Apr.,Vol.12,No.22006 2006年4月第12卷第2期

ARM嵌入式系统基础教程复习

《嵌入式系统基础教程》复习 1.什么是嵌入式系统?其特点有些什么? 答:嵌入式系统是“以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。” 特点:1)是专用的计算机系统,用于特定的任务; 2)资源较少,可以裁减; 3) 功耗低,体积小,集成度高,成本低; 4)使用实时操作系统; 5) 可靠性要求更高,具有系统测试和可靠性评估体系; 6)运行环境差异大 7)大部分程序固化在ROM中; 8) 较长的生命周期; 9)嵌入式微处理器通常包含专用调试电路 2.嵌入式系统的BooTLoader的功能是什么? 答:BootLoader是系统加电后、操作系统内核或用户应用程序运行之前,首先必须运行的一段程序代码。通过这段程序,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。(对于嵌入式系统来说,有的使用操作系统,也有的不使用操作系统,但在系统启动时都必须运行BootLoader,为系统运行准备好软硬件环境。) 3.目前嵌入式操作系统有哪些? 答:1)μC/OS-II 嵌入式操作系统内核;2)VxWorks嵌入式实时操作系统;3)WinCE操作系统;4)Linux操作系统;5)Symbian操作系统 4.构造嵌入式开发环境有哪几种形式? 答:1)交叉开发环境;2)软件模拟环境;3)评估电路板 5.嵌入式系统开发的基本流程? 答:1)系统定义与需求分析; 2)系统设计方案的初步确立; 3)初步设计方案性价比评估与方案评审论证; 4)完善初步方案、初步方案实施; 5)软硬件集成测试; 6)系统功能性能测试及可靠性测试。 6.什么是可编程片上系统? 答:用可编程逻辑技术把整个系统放到一块硅片上,称作可编程片上系统SOPC。它是一种特殊的嵌入式系统,首先它是SOC,即由单个芯片实现整个系统的主要逻辑功能,具有一般SOC基本属性;其次,它又具备软硬件在系统可编程的功能,是可编程系统,具有可裁剪、可扩充、可升级等灵活的设计方式。 7.有时要使用Thumb技术的原因 答:(Thumb指令集是把32位的ARM指令集的一个子集重新编码后形成的一个特殊的16位指令集。)在性能和代码大小之间取得平衡,在需要较低的存储代码时采用Thumb指令系统用Thumb指令编写最小代码量的程序(能够很好的解决代码长度的问题),却取得以ARM代码执行的最好性能,可以带来低功耗,小体积,低成本。 8.ARM处理器的工作模式有哪几种? 答:1)正常用户模式(user); 2)快速中断模式(fiq); 3)普通中断模式(irq); 4)操作系统保护模式(svc)或管理模式; 5)数据访问中止模式(abt); 6)处理未定义指令的未定义模式(und); 7)运行特权级的操作系统任务的系统模式(sys)。 9.寄存器R13,R14,R15的专用功能各是什么? 答:1)寄存器R13保存堆栈指针SP;

嵌入式系统期末考试试卷 习题

1.下面哪一种工作模式不属于ARM特权模式(A)。 A.用户模式B.系统模式C.软中断模式D.FIQ模式 2.ARM7TDMI的工作状态包括( D )。 A.测试状态和运行状态B.挂起状态和就绪状态 C.就绪状态和运行状态D.ARM状态和Thumb状态 3.下面哪个Linux操作系统是嵌入式操作系统( B )。 A.Red-hat Linux B.uclinux C.Ubuntu Linux D.SUSE Linux 4.使用Host-Target联合开发嵌入式应用,( B )不是必须的。 A.宿主机B.银河麒麟操作系统 C.目标机D.交叉编译器 5.下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一(A)。 A.寄存器段B.代码段 C.堆栈段D.数据段 选择题(共5小题,每题2分,共10分) 1.下面哪个系统属于嵌入式系统( D )。 A.“天河一号”计算机系统B.IBMX200笔记本电脑 C.联想S10上网本D.Iphone手机 2.在Makefile中的命令必须要以(A)键开始。 A.Tab键B.#号键 C.空格键D.&键 3.Linux支持多种文件系统,下面哪种不属于Linux的文件系统格式( B )。 A.Ext B.FA T32 C.NFS D.Ext3 4.下面哪种不属于VI三种工作模式之一( D )。 A.命令行模式B.插入模式 C.底行模式D.工作模式 5.下面哪一项不属于Linux内核的配置系统的三个组成部分之一( C )。 A.Makefile B.配置文件(config.in) C.make menuconfig D.配置工具 1.人们生活中常用的嵌入式设备有哪些?列举4个以上(1) 手机,(2) 机顶盒,(3) MP3,(4) GPS。(交换机、打印机、投影仪、无线路由器、车载媒体、PDA、GPS、智能家电等等。) 2.ARM9处理器使用了五级流水线,五级流水具体指哪五级:(5) 取指,(6) 译码,(7) 执行,(8) 缓冲/数据,(9) 回写。 3.在Makefile中的命令必须要以(10) Tab 键开始。 4.Linux支持多种文件系统,主要包括哪些(写出其中4中就行)(11) Ext,(12) VFA T,(13) JFS,(14) NFS。(JFS、ReiserFS、Ext、Ext2、Ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等) 5.VI的工作模式有哪三种:(15) 命令行模式,(16) 插入模式,(17) 底行模式。

基于ARM的嵌入式车床数控系统与开发.

基于ARM的嵌入式车床数控系统与开发 传统的中、低档数控车床在结构上往往采用8/16位单片机加精插补器,以获得较高的性价比。随着嵌入式系统的迅速发展,高性能的32位CPU已经普及,以ARM为代表的32位微处理器速度快、功能强、价格低,完全可以开发出具有更高性价比的嵌入式数控系统。本文旨在研究和设计一种基于ARM7的嵌入式数控车床控制系统。本文首先通过对嵌入式技术和数控技术的全面分析,选择确定了车床嵌入式数控系统的软硬件平台。硬件平台以ARM7系列微处理器 LPC2220为核心,基于可编程逻辑器件CPLD实现精插补器,并配以必要的外围电路。软件平台以源代码公开的μC/OS-Ⅱ实时操作系统为基础,开发系统所需的 驱动程序和应用软件。规划设计了基于μC/OS-Ⅱ的车床数控系统控制任务划 分以及各任务模块间的通讯协调机制。控制任务划分为7个:主控、液晶显示、文件系统服务、数控程序解释、速度处理、插补和逻辑控制;利用μC/OS-Ⅱ提 供的邮箱、信号量等服务机制,有效实现了任务与任务、任务与中断之间的通信与同步。此外,本文还研究了系统程序解释的实现方法。首先,基于有限状态机(DFA)的分析策略构造了数控程序解释的词法分析器,把程序的字符流转换为内 部标记流,然后对程序进行语法和语义分析,最后翻译成速度处理和逻辑控制所 需要的数据结构。重点分析了子程序调用和返回的机制及其实现方法。最后,介绍了系统的软硬件开发工具和调试方法。软硬件测试表明,该嵌入式车床数控系统可满足预期目标。 同主题文章 【关键词相关文档搜索】:机械电子工程; 嵌入式车床数控系统; ARM; CPLD; μC/OS-Ⅱ; 程序解释 【作者相关信息搜索】:南京航空航天大学;机械电子工程;游有鹏;杨军;

几种主流嵌入式操作系统分析

几种主流嵌入式操作系统分析 1.嵌入式Linux 嵌入式Linux(Embedded Linux)是指对标准Linux经过小型化裁剪处理之后,能够固化 在容量只有几KB或者几MB 字节的存储器芯片或者单片机中,是适合于特定嵌入式应用场合的专用Linux操作系统。在目前已经开发成功的嵌入式系统中,大约有一半使用的是Linux。 这与它自身的优良特性是分不开的。 嵌入式Linux 同Linux 一样,具有低成本、多种硬件平台支持、优异的性能和良好的网络支持等优点。另外,为了更好地适应嵌入式领域的开发,嵌入式Linux 还在Linux 基础上 做了部分改进,如下所示。 ? 改善的内核结构 Linux 内核采用的是整体式结构(Monolithic),整个内核是一个单独的、非常大的程序,这____________样虽然能够使系统的各个部分直接沟通,提高系统响应速度,但与嵌入式系统存储容量小、 资源有限的特点不相符合。因此,在嵌入式系统经常采用的是另一种称为微内核(Microkernel) 的体系结构,即内核本身只提供一些最基本的操作系统功能,如任务调度、内存管理、中断 处理等,而类似于文件系统和网络协议等附加功能则运行在用户空间中,并且可以根据实际 需要进行取舍。这样就大大减小了内核的体积,便于维护和移植。 ? 提高的系统实时性 由于现有的Linux 是一个通用的操作系统,虽然它也采用了许多技术来加快系统的运行 和响应速度,但从本质上来说并不是一个嵌入式实时操作系统。因此,利用Linux 作为底层 操作系统,在其上进行实时化改造,从而构建出一个具有实时处理能力的嵌入式系统,如RT-Linux 已经成功地应用于航天飞机的空间数据采集、科学仪器测控和电影特技图像处理等 各种领域。 嵌入式Linux 同Linux 一样,也有众多的版本,其中不同的版本分别针对不同的需要在内核等方面加入了特定的机制。嵌入式Linux 的主要版本如表4.1所示。 表4.1 嵌入式Linux主要版本 版本简单介绍 μCLinux 开放源码的嵌入式Linux 的典范之作。它主要是针对目标处理器没有存储管理单元 MMU,其运行稳定,具有良好的移植性和优秀的网络功能,对各种文件系统有完备 的支持,并提供标准丰富的API RT-Linux 由美国墨西哥理工学院开发的嵌入式Linux硬实时操作系统。它已有广泛的应用 Embedix 根据嵌入式应用系统的特点重新设计的Linux发行版本。它提供了超过25种的Linux 《嵌入式Linux应用程序开发详解》——第4章、嵌入式系统基础 系统服务,包括Web服务器等。此外还推出了Embedix的开发调试工具包、基于图 形界____________面的浏览器等。可以说,Embedix是一种完整的嵌入式Linux解决方案

LInux 嵌入式操作系统期末试题

1.简答题:请简单概括什么是嵌入式系统、并举出嵌入式系统的特点;(6分) 答: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可剪裁,适用于应用系统,对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统; 其特点如下: (1)嵌入式系统是面向特定系统应用的。 (2)嵌入式系统涉及计算机技术、微电子技术、电子技术、通信和软件等各个行业; 是一个技术密集、资金密集、高度分散、不断创新的知识集成系统; (3)嵌入式系统的硬件和软件都必须具有高度可定制性;只有这样才能适应嵌入式系 统应用的需要,在产品价格和性能方面具备竞争力; (4)嵌入式系统的生命周期相当长。 (5)嵌入式系统不具备本地系统开发能力,通常需要有一套专门的开发工具和环境。 2.嵌入式操作系统的优势:1.低成本开发系统 2.可应用多种硬件平台 3.可定制内核 4. 性能优异 5.良好的网络支持 3.linux文件类型:1.普通文件 2.目录文件 3.链接文件 4.设备文件 a.块设备文件(硬 盘:/dev/hda1)b.字符设备(串行端口接口设备) 4.linux文件属性:访问权限:r:可读w:可写x:可执行用户级别:u:文件拥有者g:所 属用户组 o:其他用户第一个字符显示文件类型:-普通d目录 l 链接… 5.简答题:(6分) linux目录结构:/bin 存放linux常用操作命令的执行文件(二进制文件) /boot 操作系统启动时所需要的程序 /dev Linux系统中使用的外部设备 /etc 系统管理时所需要的各种配置文件和子目录 /etc/rc.d Linux启动和关闭时要用到的脚本 /etc/rc.d/init Linux默认服务的启动脚本 /home 系统中默认用户工作根目录 /lib 存放系统动态链接共享库 /mnt软驱、光驱、硬盘的挂载点 /proc存放系统核心与执行程序所需信息、 /root超级用户登陆时的主目录 /sbin 存放管理员常用系统管理程序 /usr存放用户应用程序和文件 /var存放日志信息(答六点即可) 6.编写一个shell文件:创建studen01 –student30这30个用户,用户组为class1,之 后编写shell文件,删除所有用户

五大适合STM32的嵌入式操作系统

五大适合STM32的嵌入式操作系统 基于STM平台且满足实时控制要求操作系统,有以下5种可供移植选择。分别为μClinux、μC/OS-II、eCos、FreeRTOS和都江堰操作系统(djyos)。下面分别介绍这五种嵌入式操作系统的特点及不足。1、μClinuxμClinux是一种优秀的嵌入式Linux版本,其全称为micro-control Linux,从字面意思看是指微控制Linux。同标准的Linux相比, μClinux的内核非常小,但是它仍然继承了Linux操作系统的主要特性,包括良好的稳定性和移植性、强大的网络功能、出色的文件系统支持、标准丰富的API,以及TCP/IP网络协议等。因为没有MMU内存管理单元,所以其多任务的实现需要一定技巧。 μClinux在结构上继承了标准Linux的多任务实现方式,分为实时进程和普通进程,分别采用先来先服务和时间片轮转调度,仅针对中低档嵌入式CPU特点进行改良,且不支持内核抢占,实时性一般。 在内存管理上由于μClinux是针对没有MMU的处理器设计的,不能使用处理器的虚拟内存管理技术,只能采用实存储器管理策略。系统使用分页内存分配方式,在启动时对实际存储器进行分页。系统对内存的访问是直接的,操作系统对内存空间没有保护,多个进程可共享一个运行空间,所以,

即使是一个无特权进程调用一个无效指针也会触发一个地 址错误,并有可能引起程序崩溃甚至系统崩溃。 μClinux操作系统的中断管理是将中断处理分为两部分:顶半处理和底半处理。在顶半处理中,必须关中断运行,且仅进行必要的、非常少、速度快的处理,其他处理交给底半处理;底半处理执行那些复杂、耗时的处理,而且接受中断。因为系统中存在有许多中断的底半处理,所以会引起系统中断处理的延时。 μClinux对文件系统支持良好,由于μClinux继承了Linux完善的文件系统性能,它支持ROMFS、NFS、ext2、MS-DOS、JFFS等文件系统。但一般采用ROMFS文件系统,这种文件系统相对于一般的文件系统(如ext2)占用更少的空间。但是ROMFS文件系统不支持动态擦写保存,对于系统需要动态保存的数据须采用虚拟RAM盘/JFFS的方法进行处理。在对硬件的支持上,由于μClinux继承了Linux的大部分性能,所以至少需要512KB的RAM空间,lMB的ROM/Flash 空间。 在μClinux的移植方面,。μClinux是Linux针对嵌入式系统的一种改良,其结构比较复杂。移植μClinux,目标处理器除了需要修改与处理器相关的代码外,还需要足够容量的外部ROM和RAM。 综上可知,μClinux最大特点在于针对无MMU处理器设计,

嵌入式数控机床的设计与实现参考文本

嵌入式数控机床的设计与实现参考文本 In The Actual Work Production Management, In Order To Ensure The Smooth Progress Of The Process, And Consider The Relationship Between Each Link, The Specific Requirements Of Each Link To Achieve Risk Control And Planning 某某管理中心 XX年XX月

嵌入式数控机床的设计与实现参考文本使用指引:此安全管理资料应用在实际工作生产管理中为了保障过程顺利推进,同时考虑各个环节之间的关系,每个环节实现的具体要求而进行的风险控制与规划,并将危害降低到最小,文档经过下载可进行自定义修改,请根据实际需求进行调整与使用。 数控技术是各种先进制造技术的奠基石,是一个国家 先进制造技术发展的重要基础,也是制造业信息化的重要 保证。在科学技术发展的带动下,数控技术已经随着制造 业的发展,成为衡量一个国家工业现代化的重要标志。本 文结合数控技术的发展以及嵌入式数控系统的研究,对嵌 入式数控机床的进行了设计和实现。 随着经济的发展,制造业逐渐成为影响国民经济的主 要行业,而制造技术的先进性则成为衡量一个国家现代化 水平的重要标志。作为各种先进制造技术的基础,数控技 术的发展对于社会的发展和稳定起着越来越重要的作用。 但是,就目前来看,我国传统的数控机床还存在诸多的问 题,与发达国家相比存在着较大的差距,需要对相应的技

术进行更新,切实提高数控机床的技术水平。 数控机床的发展 数控机床,是对数值控制机床的简称,指一种装有程序控制系统的自动化机床。其中,数控装置、检测装置以及机床主体是构成数控机床的三个主要部分。 数控机床发展历程与计算机和微电子技术的发展是密不可分的,主要包括以下4个发展阶段:硬件数控、计算机数控、高精度CNC以及开放式CNC。在当前的发展形势下,嵌入式系统的应用使得数控机床有了新的发展。 嵌入式数控系统概述 2.1.嵌入式系统 嵌入式系统,主要是指以计算机技术为基础,以功能应用为中心,可以对软件和硬件进行裁剪的专用计算机系统优化,具有功能齐全、能耗小、体积小、成本低、可靠性高等特点,在多个领域都得到了广泛应用。

嵌入式操作系统的种类与特点

1.3.1 嵌入式操作系统的种类、特点与发展 1.嵌入式操作系统的种类 一般情况下,嵌入式操作系统可以分为两类: 非实时操作系统:面向消费电子产品等领域,这类产品包括个人数字助理(PDA)、移动电话、机顶盒、电子书等。 实时操作系统RTOS(Real-Time Embedded Operating System):面向控制、通信等领域,如windriver公司的vxworks、isi的psos、qnx系统软件公司的qnx等。 (1)非实时操作系统 早期的嵌入式系统中没有操作系统的概念,程序员编写嵌入式程序通常直接面对裸机及裸设备。在这种情况下,通常把嵌入式程序分成两部分,即前台程序和后台程序。前台程序通过中断来处理事件,其结构一般为无限循环;后台程序则掌管整个嵌入式系统软、硬件资源的分配、管理以及任务的调度,是一个系统管理调度程序。这就是通常所说的前后台系统。一般情况下,后台程序也叫任务级程序,前台程序也叫事件处理级程序。在程序运行时,后台程序检查每个任务是否具备运行条件,通过一定的调度算法来完成相应的操作。对于实时性要求特别严格的操作通常由中断来完成,仅在中断服务程序中标记事件的发生,不再做任何工作就退出中断,经过后台程序的调度,转由前台程序完成事件的处理,这样就不会造成在中断服务程序中处理费时的事件而影响后续和其它中断。 实际上,前后台系统的实时性比预计的要差。这是因为前后台系统认为所有的任务具有相同的优先级别,即是平等的,而且任务的执行又是通过FIFO队列排队,因而对那些实时性要求高的任务不可能立刻得到处理。另外,由于前台程序是一个无限循环的结构,一旦在这个循环体中正在处理的任务崩溃,使得整个任务队列中的其它任务得不到机会被处理,从而造成整个系统的崩溃。由于这类系统结构简单,几乎不需要RAM/ROM的额外开销,因而在简单的嵌入式应用被广泛使用。 (2)实时操作系统 所谓实时性,就是在确定的时间范围内响应某个事件的特性。而实时系统是指能在确定的时间内执行其功能并对外部的异步事件做出响应的计算机系统。其操作的正确性不仅依赖于逻辑设计的正确程度,而且与这些操作进行的时间有关。“在确定的时间内”是该定义的核心。也就是说,实时系统是对响应时间有严格要求的。 实时系统对逻辑和时序的要求非常严格,如果逻辑和时序出现偏差将会引起严重后果。实时系统有两种类型:软实时系统和硬实时系统。软实时系统仅要求事件响应是实时的,并不要求限定某一任务必须在多长时间内完成;而在硬实时系统中,不仅要求任务响应要实时,而且要求在规定的时间内完成事件的处理。通常,大多数实时系统是两者的结合。实时应用软件的设计一般比非实时应用软件的设计困难。实时系统的技术关键是如何保证系统的实时性。实时操作系统可分为可抢占型和不可抢占型两类。 嵌入式实时操作系统在目前的嵌入式应用中用得越来越广泛,尤其在功能复杂、系统庞大的应用中显得愈来愈重要。 从某种意义上说,没有操作系统的计算机(裸机)是没有用的。在嵌入式应用中,只有把CPU嵌入到系统中,同时又把操作系统嵌入进去,才是真正的计算机嵌入式应用。 操作系统的实时性在某些领域是至关重要的,比如工业控制、航空航天等领域。想像飞机正在空中飞行,如果嵌入式系统不能及时响应飞行员的控制指令,那么极有可能导致空难事故。有些嵌入式系统应用并不需要绝对的实时性,比如PDA播放音乐,个别音频数据丢失并不影响效果。这可以使用软实时的概念来衡量。

嵌入式操作系统期末考试答案

填空 1、嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁剪、适用于应用系统,对(功能)、(可靠性)、(成本)、(体积)、(功耗)严格要求的专用计算机系统。 2、嵌入式系统开发采用的交叉开发环境是由(宿主机)和(目标机)组成的。 3、挂载设备到文件系统的命令是(mount),从文件系统中卸载设备命令是(umounts)。 4、在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面,进入vi之后,是处于 (命令)模式,要切换到(编辑)模式才能够输入文字。 5、GCC的编译流程分为4个步骤,分别为:(预处理),编译,(汇编),链接。 6、Linux系统的设备分为三类:(字符设备)、(块设备)和网络设备。 7、操作系统的功能包(处理机管理)、(存储管理)、(设备管理)、(信息管理)、(作业管理)。 选择 1、下面哪点不是嵌入式操作系统的特点。(C) (A)内核精简(B)专用性强(C)功能强大(D)高实时性 2、嵌入式Linux下常用的文件系统不包括以下哪一项(A) (A)nfs(B)romfs(C)yaffs(D)jffs 3、下面关于Shell的说法,不正确的是:(D) (A)操作系统的外壳(B)用户与Linux内核之间的接口程序(C)一个命令语言解释器(D)一种和C语言类似的程序语言 4、在Bootloader()模式下,目标机可以通过通信手段从主机更新系统。(B) (A)启动加载模式(B)下载模式(C)实时模式(D)保护模式 5、文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权限,下列命令正确的是: (A) (A)chmoda+xg+wexer1(B)chmod765exer1(C)chmodo+xexer1(D)chmodg+wexer1 6、在vi编辑环境中,下面()选项不是从命令行模式切换到插入模式。(C) (A)i(B)o(C)ESC(D)a 7、shell变量名命名中不包括()。(D) (A)字母(B)数字(C)下划线(D)括号 8、下列关于字符设备说法不正确的是()。(C) (A)以字节为单位逐个进行I/O操作(B)字符设备中的缓存是可有可无的 (C)支持随机访问(D)字符设备可以通过设备文件节点访问 9、以下哪一项是是硬盘设备文件()。(B) (A)fd0(B)hda(C)eth1(D)ht0 10、共享内存通信机制的缺点是()。(B) (A)需要花费额外的内存空间(B)需要使用额为的同步机制 (C)需要额外硬件支持(D)通信过程中需要反复读取内存,时间开销大 简答题 1.嵌入式操作系统在哪些方面较为突出的特点并请列举出4种目前较常用的手机嵌入 式操作系统。 四个方面:系统实时高效性硬件的相关依赖性软件固态化应用的专用性 四种手机操作系统:Window Mobile SymbianOSAndriod OSE

嵌入式操作系统_C_OS_研究

嵌入式系统一般指非PC系统,有计算机功能但又不称之为计算机的设备或器材。它是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。简单地说,嵌入式系统集系统的应用软件与硬件于一体,类似于PC中BIOS的工作方式,具有软件代码小、高度自动化、响应速度快等特点,特别适合于要求实时和多任务的体系。 嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成,它是可独立工作的“器件”。嵌入式系统几乎包括了生活中的所有电器设备,如掌上PDA、移动计算设备、电视机顶盒、手机上网、数字电视、多媒体、汽车、微波炉、数字相机、家庭自动化系统、电梯、空调、安全系统、自动售货机、蜂窝式电话、消费电子设备、工业自动化仪表与医疗仪器等。 嵌入式系统的硬件部分,包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多使用EPROM、EEPROM或闪存(Flash Memory)作为存储介质。软件部分包括操作系统软件(要求实时和多任务操作)和应用程序编程。应用程序控制着系统的运作和行为;而操作系统控制着应用程序编程与硬件的交互作用。 一、嵌入式系统概述 嵌入式系统是指以应用为目的,嵌入于各种设备及应用产品内部的计算机系统。简单地说就是系统的应用软件与硬件一体化。这种系统具有软件代码小,高度智能化,响应速度快等特点,特别适合于要求实时的和多任务的体系。 嵌入式系统一般指非PC系统,有计算机功能但又不称之为计算机的设备或器材。它是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。一般情况下,嵌入式操作系统可以分为两类,一类是面向控制、通信等领域的实时操作系统,如WindRiver公司的VxWorks、ISI的pSOS、QNX 系统软件公司的QNX、ATI的Nucleus等;另一类是面向消费电子产品的非实时操作系统,这类产品包括个人数字助理(PDA)、移动电话、机顶盒、电子书、WebPhone等。 嵌入式系统的核心构件以及其历史和未来的发展趋势。嵌入式系统是一个软硬件结合的系统,微处理器和嵌入式操作系统是嵌入式系统的核心,构成了嵌入式系统发展和应用的主线。从过去的8位微控制器发展到现在的32位微控制器,从简单的无限循环结构发展到现在的多任务多线程的实时操作系统阶段,嵌入式领域已经发生了深刻的变革。这些变革是出于日益复杂的应用需要,这也预示着嵌入式系统将面临更多复杂的应用需要,也预示着嵌入式领域更加美好的未来。 二、嵌入式操作系统概述 嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统(包括硬、软件系统)极为重要的组成部分,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。嵌入式操作系统具有通用操作系统的基本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及应用程序。与通用操作系统相比较,嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。 嵌入式实时系统中采用的操作系统称为嵌入式实时操作系统,它既是嵌入式操作系统,又是实时操作系统。作为一种嵌入式操作系统,它具有嵌入式软件共有的可裁剪、低资源、占用、低功耗等特点;而作为一种实时操作系统,它与通用操作系统(如Windows、Unix、Linux等)相比有很大的差别,下面我们通过比较这两种操作系统之间的差距来描述实时操作系统的主要特点。 嵌入式操作系统是嵌入式技术软件的核心,嵌入式系统之上各种丰富的应用无不需要依赖一个强大的操作系统的支持。嵌入式操作系统与普通的通用操作系统间最关键的区别在于其对实时性的要求。由于嵌入式系统很多将要用于对时间响应要求非常苛刻的系统中,所以操作系统各个操作必须要有清晰的时间限制,实时性在嵌入式操作系统设计的各个功能中都必须得以充分的重视。嵌入式操作系统领域现在处于百花齐放的阶段,由于嵌入式系统本身要求多样化的特点,而且有很多东西还没有成熟和规范,故各种嵌入式操作系统有着各自侧重的应用领域,各种新的应用层出不穷。 三、嵌入式操作系统μC/OS-II体系结构分析 在对μC/OS-II性能改进之前,必须了解它的内核和存在的问题,这样才能有效的对其进行修改,由于嵌入式操作系统μC/OS-II本身也是一种实时操作系统,因此它的很多设计原理都是遵循实时操作系统理论。 μC/OS-II的内核可以分为:与内核加载运行相关的模块、任务管理模块、时间管理模块、事件控制块模块和内存管理模块。 任务状态分析 μC/OS-II控制以下的任务状态转换图,如图所示。 任务的状态转化 在任一给定的时刻,任务的状态定是处于以下几种状态之一。睡眠态,任务驻留在程序空间之中,还没有一交给μC/OS-II管理。把任务交给μC/OS-II是通过调用下述两个函数之一:OSTaskCreate()或OS-TaskCreateExtO。一个任务可以通过调用OSTaskDelp返回到睡眠态,或通过调用该函数让另一个任务进入睡眠态。就绪态,任务一旦建立,这个任务就进入了就绪态,准备运行。任务的建立可以是在多任务运行开始之前,也可以是动态地被一个运行着的任务建立。如果一个任务是被另一个任务建立的,而这个任务的优先级高于建立它的那个任务,则这个刚刚建立的任务将立即得到CPU的控制权。运行态,调用OSStart()可以启动多任务。OSStart()函数运行进入就绪态的优先级最高的任务。任何时候只能有一个任务处于运行态。正在运行的任务可以通过调用OSTimeDly()或OSTimeDIyHMSM()两个函数之一将自身延迟一段时间,从而这个任务进入等待状态,这样下一个优先级最高的、并进入了就绪态的任务立刻被赋予了CPU的控制权。当等待的时间过去之后,系统服务函数OSTimeTick()使被延迟的任务进入就绪态。正在运行的任务期待某一事件的发生时也要等待,通过调用OSSemPend()或OSM-boxPend(),或OSQPend()3个函数之一。调用后,任务进入了等待状态。当任务因等待事件被挂起,下一个优先级最高的任务立即得到了CPU 的控制权。当事件发生了,被挂起的任务进入就绪态。事件发生的消息可能来自另一个任务,也可能来自中断服务子程序。正在运行的任务是可以被中断的,CPU就进入了中断服务态(ISR)。响应中断时,正在执行的任务被挂起,ISR控制了CPU的使用权。 嵌入式操作系统μC/OS-II研究 南华大学三力高科技开发公司贺艳松 [摘要]随着网络技术和计算机技术的高速发展,嵌入式产业迅速崛起,嵌入式系统已经越来越多地应用在各个领域之中。嵌入式操作系统作为嵌入式系统的重要组成部分,发挥着越来越重要的作用。本文主要讨论为满足嵌入式应用领域的需要,uC/OS-II操作系统的实时性研究。 [关键词]嵌入式操作系统μC/OS-II实时性调度: 优先级反转 (下转第225页)222 ——

相关文档