嵌入式操作系统(西南交大)
《嵌入式系统应用》课程标准

《嵌入式系统应用》课程标准一、课程概要二、课程定位本课程是电子信息工程技术专业的一门核心必修课,是培养学生专业技能的重要组成部分。
在人才培养方案中,本课程支撑学生熟悉嵌入式系统开发的基本理论和工作原理,基本掌握嵌入式应用系统的设计方法,具有初步的嵌入式产品的维护、设计和开发能力,能够利用 Keil—MDK—ARM软件进行嵌入式微控制器的仿真和调试。
三、教学目标(一)知识目标1.了解嵌入式系统相关知识;2.掌握嵌入式C语言的编程特点;3.了解STM32标准外设库编程的特点;4.掌握STM32微控制器GPIO、定时器、PWM输出、中断、串口、AD转换器、DMA控制器等外设的编程方法;5.掌握STM32微控制器驱动彩色LCD显示、WIFI模块以及与物联网云平台的连通方法。
6.通过以上学习初步掌握嵌入式应用系统的设计思路和设计方法。
(二)能力目标1.能设计嵌入式应用系统控制程序;2.能进行嵌入式系统的程序调试;3.具有初步的嵌入式电子产品设计能力;4.具有较强的思考、分析和解决问题的能力;(三)素质目标1.培养学生严谨、细致、规范的职业素质;2.培养学生团队协作、表达沟通能力;3.培养学生跟踪新技术、创新设计能力;4.培养技术标准意识、操作规范意识、服务质量意识等。
四、课程设计本课程以培养目标为起点,选取“帆板角度测量与控制装置”作为整个课程的项目载体,将课程内容分解成10个能力模块,每一个模块对应一个具体的实训项目,每一个实训项目分解成若干个知识技能点,形成了以模块化实训项目为骨架、以技能知识点为内容的实践导向结构化课程内容体系。
在教学设计方面,以项目为驱动,突出实践性、知识性、职业性,体现“教、学、做合一”的设计理念。
实训项目导向的结构化课程内容设计如图1所示。
图1 实践导向的结构化课程内容设计五、教学内容安排六、教学实施(一)教学团队本课程负责人由具备较高专业技术水平、教学经验丰富、教学特色鲜明、具有副高以上专业技术职务的教师担任,并建立职称、学历、年龄等结构合理的专兼结合的“双师型”教学团队,每40人的标准班配备1名任课教师。
《嵌入式系统开发与应用》教学教案

《嵌入式系统开发与应用》教学教案一、教学目标1. 了解嵌入式系统的概念、特点和应用领域。
2. 掌握嵌入式系统的基本组成部分,包括硬件和软件。
3. 熟悉嵌入式操作系统的基本原理和常用嵌入式操作系统。
4. 学习嵌入式系统开发流程,包括需求分析、系统设计、硬件选型、软件开发、系统集成和测试。
5. 掌握嵌入式编程语言,如C/C++,并能应用于实际项目开发。
二、教学内容1. 嵌入式系统概述嵌入式系统的定义嵌入式系统的特点嵌入式系统的应用领域2. 嵌入式系统的基本组成嵌入式处理器嵌入式外围设备嵌入式操作系统3. 嵌入式操作系统原理嵌入式操作系统的概念嵌入式操作系统的特点常用嵌入式操作系统简介4. 嵌入式系统开发流程需求分析系统设计硬件选型软件开发系统集成和测试5. 嵌入式编程语言及应用C/C++编程语言基础嵌入式编程规范实际项目开发案例分析三、教学方法1. 讲授法:讲解嵌入式系统的基本概念、原理和开发流程。
2. 案例分析法:分析实际项目开发案例,让学生了解嵌入式系统开发的整个过程。
3. 实验法:安排实验室实践环节,让学生动手实践,加深对嵌入式系统的理解。
4. 小组讨论法:分组讨论嵌入式系统开发中的问题,培养学生的团队合作能力。
四、教学资源1. 教材:《嵌入式系统开发与应用》2. 实验室设备:嵌入式开发板、编程器、仿真器等。
3. 在线资源:嵌入式系统相关论文、博客、论坛等。
五、教学评价1. 课堂表现:考察学生的出勤、发言、讨论等参与程度。
2. 课后作业:布置相关课后练习,巩固所学知识。
3. 实验报告:评估学生在实验室实践环节的表现。
4. 课程设计:让学生完成一个嵌入式系统开发项目,综合评估学生的实际应用能力。
六、教学安排1. 课时:共计32课时,包括课堂讲授、实验和讨论。
2. 授课方式:每周4课时,共8周完成教学内容。
3. 实验安排:每2周安排1次实验,共4次实验。
七、教学进程第1-4周:嵌入式系统概述、基本组成和操作系统原理。
川大信息嵌入式实习报告

一、前言随着信息技术的飞速发展,嵌入式系统在各个领域中的应用日益广泛。
为了更好地了解嵌入式系统在实际工程中的应用,提高自己的实践能力,我在川大信息学院进行了为期一个月的嵌入式实习。
通过这次实习,我对嵌入式系统的开发流程、硬件选型、软件编程等方面有了更加深入的认识。
二、实习单位简介实习单位为我国某知名嵌入式设备研发公司,主要从事嵌入式设备的研发、生产、销售与服务。
公司拥有丰富的嵌入式产品线,包括工业自动化、智能家居、医疗设备等领域。
在实习期间,我有幸参与了公司的一款嵌入式设备的研发项目。
三、实习内容1. 项目背景及需求分析本次实习项目是一款基于嵌入式系统的智能家居设备,主要功能包括远程监控、设备控制、数据采集等。
在实习初期,我参与了项目需求分析,与团队成员一起讨论并确定了设备的功能模块、性能指标等。
2. 硬件选型与设计在硬件选型阶段,我了解了嵌入式系统的基本硬件组成,包括处理器、存储器、输入输出接口等。
根据项目需求,我选择了适合的处理器、存储器和外围电路,并完成了硬件设计文档。
3. 软件编程与调试在软件编程阶段,我主要使用C语言进行嵌入式软件开发。
首先,我学习了嵌入式操作系统(如Linux、FreeRTOS等)的基本知识,并了解了其在嵌入式系统中的应用。
然后,我根据项目需求,编写了设备控制、数据采集、远程监控等模块的代码。
在调试阶段,我使用示波器、逻辑分析仪等工具对程序进行调试,确保程序运行稳定、可靠。
在遇到问题时,我查阅相关资料,与团队成员进行讨论,共同解决问题。
4. 项目总结与优化在实习后期,我对项目进行了总结与优化。
针对项目中存在的问题,我提出了一些建议,如优化代码结构、提高系统性能等。
此外,我还学习了新的嵌入式技术,如物联网、人工智能等,为今后的发展奠定了基础。
四、实习收获1. 理论联系实际:通过实习,我将所学知识运用到实际项目中,提高了自己的实践能力。
2. 技能提升:掌握了嵌入式系统的开发流程、硬件选型、软件编程、调试等方面的技能。
《嵌入式系统及应用》课程教学大纲(纠正版本)

中山大学软件学院软件工程专业本科生课程教学大纲Course Profile for Undergraduates of Software Engineering最近更新/ Revision : 2009.06.11课程教学大纲模板之填写说明:1、软件学院的培养目标之一是“国际化”,同时为便于我院与国外高校的合作交流,课程描述的每一项目均需提供英文描述,关键项目和易产生歧义的项目同时采用中、英文撰写。
建议各位撰写人先参考几个国外高校的课程网站,以免英文专业术语出现太大偏差。
2、不同于其他非工科专业的课程描述,软件工程专业课程描述须给出每门课程实践环节的详细教学规格说明,譬如:课后作业(Written Assignments)与实验项目(Programming Assignments 或Projects)的安排; 实验课的时间、地点和授课方式;以及TA课外辅导实验的安排等。
独立设有实验课的课程,理论课与实验课合并为同一课程撰写单份课程描述。
所有课程的课程描述必须足够细致,使得学院可据此估算每门课程的教师与TA合计教学成本(含理论课与实验课)。
3、“课程编号”均采用“SE-”为前缀,后接3位阿拉伯数字(其中前1位表示开课年级,后2位表示序列号)。
课程描述撰写人首先起草课程编号,学院将最后统一编号。
4、“课程描述”中至少应给出课程简介、教学目标、主要知识点这三部分内容。
5、“教材”通常指定1本,特殊情况允许2本,但不宜再多;“教学参考书”通常不超过5本,指定太多相当于没有指定。
凡英文原版教材,请务必列出国内引进影印版的相关信息(未引进影印版的教材其可用性会有问题,不建议采用!)以及中译版的相关信息;每一教材信息请在出版社前注明出版社所在的城市,并且务必注明ISBN编号(10位ISBN采用1-3-5-1分隔,13位ISBN采用3-1-3-5-1分隔)。
6、“理论教学内容”请注明每一知识点的教学用时,并且注意合计学时应与总学时栏目中的理论环节学时数保持一致。
西南交大自动化考研科目

西南交大自动化考研科目一、自动化导论1. 自动控制系统基本概念和原理2. 控制系统的建模与仿真3. 状态空间与传递函数分析4. 回路特性及稳定性分析5. 控制器设计与调节6. 经典控制理论及其应用7. 现代控制理论及其应用8. 自适应控制与智能控制9. 非线性系统控制方法10. 齐次系统与线性时不变系统控制11. 多变量控制及其应用12. 控制系统优化与鲁棒性分析二、信号与系统1. 信号与系统的基本概念2. 线性时不变系统的特性与性质3. 傅里叶分析与频域分析4. 采样定理与离散信号处理5. 模拟与数字滤波器设计6. 时域分析与系统稳定性判据7. 时域系统性能分析与频域分析8. 离散信号处理与数字信号处理应用9. 随机信号与随机过程分析10. 随机信号与系统分析11. 信号估计与系统辨识12. 系统建模与系统辨识方法三、电路理论与分析1. 电路基本理论与分析方法2. 电路元件的特性与参数测量3. 电路的网络等效与瞬态响应分析4. 电路的定常状态与交流分析5. 电路的频率响应与滤波器设计6. 电路分析的Laplace变换方法7. 电路定常状态与低频等效分析8. 电力电子技术及其应用9. 数字与模拟混合电路设计与分析10. 开关电路与开关电源四、数字信号处理1. 数字信号处理系统的基本原理2. 采样与离散信号的量化3. 时域与频域数字信号处理方法4. FIR与IIR数字滤波器设计5. 快速傅里叶变换与频谱分析6. 多媒体信号处理与编码技术7. 移动通信与信号处理8. 图像与视频信号处理技术9. 数字信号处理与通信系统10. 实时数字信号处理技术五、微机原理与应用1. 计算机系统结构与原理2. 微型计算机硬件设计3. 微处理器与单片机系统设计4. 微处理器与单片机的编程与调试5. 嵌入式系统设计与应用6. 嵌入式系统开发与调试7. 实时操作系统与嵌入式系统8. 高级编程语言与软硬件接口9. 多媒体计算与应用10. 移动计算与应用注:以上科目仅为参考,实际考研科目以学校官方发布的为准,建议考生关注学校官方通知和教材内容。
西南交大电气工程学院导师名单

西南交通大学硕士生导师上岗招生遴选通过人员名单单位:电气工程学位分委会总计:82人序号姓名学科、专业研究方向所在单位出生年月职称是否首次招生1 陈春阳轨道交通电气化与自动化、电力电子与电力传动电力牵引传动及其控制技术电气工程学院1962.4 教授否2 陈唐龙电力系统及其自动化、轨道交通电气化与自动化、检测技术与自动化装置弓网高速受流技术、接触网在线检测技术、图像处理技术电气工程学院1962.09 教授否3 陈维荣电力系统及其自动化、电气系统控制与信息技术、轨道交通电气化与自动化、检测技术与自动化装置调度自动化系统、智能监控系统、智能信息处理、分布式测控技术电气工程学院1965.1 教授否4 陈小川电力系统及其自动化、轨道交通电气化与自动化微机保护与自动化电气工程学院1963.3 教授否5 范建斌高电压与绝缘技术高电压与绝缘技术中国电力科学研究所1967.10 教授是6 冯晓云电力电子与电力传动、轨道交通电气化与自动化电力牵引传动及其控制技术、高速动车组牵引传动系统的适用性研究、列车自动控制理论与技术、列车群控系统及其仿真研究电气工程学院1962.10 教授否7 高仕斌电力系统及其自动化、轨道交通电气化与自动化继电保护与综合自动化电气工程学院1963.11 教授否8 郭世明电力电子与电力传动、电机与电器电力电子技术应用、电气传动系统的智能控制、微机检测与故障诊断、机车自动驾驶系统电气工程学院1954.12 教授否9 郭小舟电力电子与电力传动电力电子技术、交流调速、线性电机控制电气工程学院1959.04 教授否10 何正友电力系统及其自动化、电气系统控制与信息技术、轨道交通电气化与自动化、检测技术与自动化装置信号处理及信息理论在电力系统中的应用、电网故障诊断、配电网自动化、牵引供电及自动化系统可靠性。
电气工程学院1970.06 教授否11 胡基士电力电子与电力传动电力电子、轨道交通电气工程学院1955.04 教授否12 胡劲松高电压与绝缘技术高电压与绝缘技术西南电力设计院1968.07 教授是13 黄彦全电力系统及其自动化、轨道交通电气化与自动化电力系统分析、微机保护电气工程学院1961.02 教授否14 蒋启龙电力电子与电力传动、电磁悬浮与超导工程电力电子技术、磁浮技术及应用电气工程学院1969.11 教授否号年月次招生15 金炜东电气系统控制与信息技术、电力系统及其自动化、电工理论与新技术、电力电子与电力传动模式识别、智能信息处理、满意优化与满意控制、系统仿真与图形图像技术、嵌入式系统、智能视频监控技术、网络信息技术电气工程学院1959.09 教授否16 康积涛电力系统及其自动化、轨道交通电气化与自动化电力系统无功优化与电压稳定性、轨道交通供电系统计算、测控自动化系统电气工程学院1962.02 教授否17 李春茂电力电子与电力传动、电工理论与新技术列车控制理论、计算机实时控制系统、网络控制系统、电磁兼容理论及其应用电气工程学院1963.04 教授否18 李群湛电力系统及其自动化、轨道交通电气化与自动化、电气系统控制与信息技术牵引供电系统理论、电力系统分析、电能质量与控制电气工程学院1957.12 教授否19 林国斌电磁悬浮与超导工程磁悬浮技术、直线电机及牵引控制国家磁浮工程中心(上海)1964.8 教授否20 刘志刚电力系统及其自动化、现代信号处理及在电力系统中的应用、智能监控技术、轨道交通电气化与自动化电气工程学院1975.11 教授否21 谭永东电力系统及其自动化、电气系统控制与信息技术自律分散系统技术及应用、天线传感器网络电气工程学院1963.7 教授否22 王奔电力系统及其自动化、电力系统非线性变结构控制、电力系统的电能质量控制电气工程学院1960.4 教授否23 王莉电磁悬浮与超导工程、电工理论与新技术电磁悬浮理论及应用、超导应用技术电气工程学院1966.6 教授否24 王倩电力系统及其自动化、轨道交通电气化与自动化、检测技术与自动化装置智能监控技术、调度综合自动化、配电网自动化、轨道交通控制系统及关键技术、工业监控技术电气工程学院1962.10 教授否25 王牣电力系统及其自动化、微机保护与综合自动化电气工程学院1967.01 教授否26 王豫电工理论与新技术超导电工学及电工材料学超导中心1960.11 教授否27 王晓茹电力系统及其自动化、电气系统控制与信息技术电力系统保护与安全稳定控制电气工程学院1962.11 教授否28 吴广宁电力系统及其自动化、高电压与绝缘技术、轨道交通电气化与自动化电力设备电气绝缘在线监测及故障诊断、防雷与接地技术电气工程学院1969.07 教授否29 肖建电力电子与电力传动、系统工程计算机控制、智能控制电气工程学院1950.08 教授否30 许建平电力电子与电力传动、电工理论与新技术电力电子系统的数字控制技术、开关电源新颖控制技术研究、可再生能源分布式并网发电技术电气工程学院1963.06 教授否31 张葛祥电力系统及其自动化、电工理论与新技术、电力电子与电力传动、检测技术与自动化装电力系统优化、现代信号处理、智能信息处理、数字图像处理电气工程学院1974.04 教授否号年月次招生置、电气系统控制与信息技术、模式识别与智能系统、系统工程32 张昆仑电力电子与电力传动、电磁悬浮与超导工程磁浮列车系统动力学、磁浮列车悬浮系统控制、直线电机牵引及其控制电气工程学院1964.06 教授否33 张秀峰电力系统及其自动化供电技术、无功补偿、电能质量峨眉校区1961.11 教授否34 赵勇电工理论与新技术超导技术及应用、超导磁浮理论与技术、超导超高速磁浮列车超导中心1960.05 教授否35 朱峰电工理论与新技术、电磁悬浮与超导工程计算电磁学与电磁成像技术、电磁兼容设计与技术、环境电磁学与生物电磁效应、电磁功能材料、电磁检测与小信号识别电气工程学院1963.01 教授否36 庄圣贤电力电子与电力传动交流调速、新能源电力变换与控制技术、电力电子系统集成电气工程学院1964.09 教授否37 何鸿云模式识别与智能系统仿真器设计与制造、运载工具智能控制仿真中心1962.01 研究员否38 周文祥电力电子与电力传动轨道车辆牵引传动与转向控制牵引中心1963.11 研究员否39 曹保江检测技术与自动化装置智能检测与智能监控技术电气工程学院1970.10 副教授是40 陈德明电力系统及其自动化微机保护与自动化电气工程学院1971.04 副教授否41 陈丽华电力系统及其自动化微机保护、变电站综合自动化、电能质量峨眉分校1972.03 副教授是42 戴小文电力系统及其自动化、电工理论与新技术嵌入式系统设计、音视频处理、计算机应用电气工程学院1967.08 副教授否43 苟先太电气系统控制与信息技术、电力系统及其自动化、轨道交通电气化与自动化、检测技术与自动化装置、系统工程、模式识别与智能系统嵌入式系统、网络通信、智能信息处理、测量与控制、系统仿真、系统优化理论与应用电气工程学院1971.05 副教授否44 关振宏电力电子与电力传动电力电子技术及其应用、电力牵引与传动控制、计算机测量与控制电气工程学院1967.09 副教授否45 郭育华电力电子与电力传动电力牵引系统、有源滤波与无功补偿、新能源变换技术电气工程学院1966.08 副教授否46 贺建闽电力系统及其自动化电网电能质量监控电气工程学院1955.10 副教授否47 胡鹏飞电气系统控制与信息技术分布式测控系统技术、嵌入式系统技术电气工程学院1964.08 副教授否48 华泽玺电力系统及其自动化、检测技术与自动化装置、轨道交通电气化与自动化电气设备状态检测与故障诊断、电气系统故障检测与诊断、轨道交通信息检测与处理、智能检测与智能监控、智能化仪表、传感器技术电气工程学院1968.11 副教授否49 黄治清电力系统及其自动化虚拟仪器、电能质量电气工程学院1958.07 副教授否号年月次招生50 解绍锋电力系统及其自动化、轨道交通电气化与自动化、检测技术与自动化装置牵引供电系统、电能质量及其控制电气工程学院1976.04 副教授否51 李光电力系统及其自动化电力SCADA与综合监控系统电气工程学院1965.08 副教授否52 李家武模式识别与智能系统列车智能控制仿真中心1963.09 副教授否53 李建兵电力系统及其自动化、系统工程工业监控技术、牵引供电系统调度自动化、决策分析与决策支持技术、信息系统工程电气工程学院1964.10 副教授否54 林建泉电力系统及其自动化微机监控技术、分布式开放式SCADA系统、高速铁路综合监控系统电气工程学院1964.04 副教授否55 刘承志电力系统及其自动化、轨道交通电气化与自动化变电站继电保护及测试电气工程学院1963.04 副教授否56 龙绪明系统工程、电工理论与新技术、电力电子与电力传动计算机实时控制、表面组装技术SMT、视觉检测系统电气工程学院1962.07 副教授否57 潘育山电力电子与电力传动计算机控制技术及其应用峨眉校区1971.05 副教授否58 苏虎系统工程计算机仿真、交通仿真、车辆驾驶仿真器电气工程学院1973.08 副教授否59 童晓阳电力系统及其自动化智能Agent、变电站IEC61850、广域保护、电网故障诊断、高层联盟通信仿真、实时嵌入式系统电气工程学院1970.07 副教授否60 王茜电力系统及其自动化电力系统及自动化电气工程学院1963.09 副教授否61 王滢电力电子与电力传动、轨道交通电气化与自动化电力电子与电力传动、磁浮技术与磁浮列车电气工程学院1972.03 副教授否62 王富荣电力系统及其自动化、高电压与绝缘技术电气设备状态检测、电气自动化电气工程学院1952.04 副教授否63 王涛电力电子与电力传动电力电子与电力传动、计算机控制技术电气工程学院1972.07 副教授否64 王毅非电力系统及其自动化接触网峨眉校区1961.03 副教授否65 王玉松模式识别与智能系统运载工具智能控制、机车车辆网络与信息系统仿真中心1961.06 副教授否66 王远波电力电子与电力传动、电机与电器、轨道交通电气化与自动化电力电子技术及应用、电气传动系统控制、电机控制电气工程学院1964.04 副教授否67 吴积钦电力系统及其自动化弓网关系及其评价电气工程学院1966.10 副教授否68 熊列彬电力系统及其自动化微机保护与自动化电气工程学院1972.07 副教授否69 曾怡达电力电子与电力传动软开关技术及现代信号处理技术峨眉校区1973.12 副教授否70 张湘电力电子与电力传动电力电子与电力传动电气工程学院1971.10 副教授否71 张怡电气系统控制与信息技术嵌入式系统及其应用电气工程学院1970.11 副教授否号年月次招生72 张晓龙电力系统及其自动化电气设备状态检测与故障诊断电气工程学院1962.12 副教授否73 张友刚电力系统及其自动化、电力电子与电力传动、系统工程控制理论及其应用电气工程学院1974.07 副教授否74 赵立峰电工理论与新技术高温超导磁悬浮列车研究、铁磁电材料制备及物性研究超导中心1969.05 副教授否75 赵丽平电力系统及其自动化电能质量监控电气工程学院1973.02 副教授否76 周利军电力系统及其自动化、高电压与绝缘技术电气设备状态检测电气工程学院1978.05 副教授是77 何晓琼电力电子与电力传动、轨道交通电气化与自动化电力电子技术及应用、电能质量与控制、电气传动及其控制电气工程学院1974.10 副教授是78 朱金陵模式识别与智能系统人工智能与列车控制、仿真器设计与制造、多媒体与虚拟现实技术仿真中心1963.04 高工否79 刘德强电力系统及其自动化供电系统调度自动化及继电保护电气工程学院1970.06 副研究员否80 张勤电力系统及其自动化工业监控系统、配电自动化电气工程学院1968.06 副研究员否81 舒泽亮电力电子与电力传动谐波抑制与无功补偿、数字信号处理电气工程学院1979.05 讲师(博士)是82 郑珺电工理论与新技术高温超导电磁特性及磁悬浮应用技术、高温超导车、轴承及飞轮储能系统、超导技术研究所1980.08讲师(博士)否。
西南交大嵌入式课程设计

《嵌入式系统》课程设计报告系别:信息科学与技术学院专业:软件工程指导老师:何滨系统:国色天乡乐园智慧景区APP姓名:何欢学号:20132173西南交通大学信息科学与技术学院2016年6月(一)项目开发计划(GB856T——88) (1)一、引言 (1)1)编写目的 (1)2)背景 (1)二、项目概述 (1)1)工作内容 (1)2)主要参加人员 (1)3)产品 (2)三、实施计划 (2)1)工作任务的分解与人员分工 (2)2)接口人员 (2)四、支持条件 (3)1)计算机系统支持 (3)2)需由用户承担的工作 (3)(二)软件需求说明书 (4)一、引言 (4)1)编写目的 (4)2)背景 (4)3)定义 (4)4)参考资料 (4)二、任务概述 (4)1)目标 (4)2)软件开发的背景 (4)3)软件开发的应用目标 (5)4)软件与其它软件的关系 (5)5)用户的特点 (6)6)假定和约束 (6)三、需求规定 (6)1)对功能的规定 (6)2)对性能的规定 (7)3)其他专门要求 (7)四、运行环境规定 (8)1)设备 (8)2)支持软件 (8)3)控制 (8)(三)概要设计说明书 (9)一、引言 (9)1)编写目的 (9)2)背景 (9)3)定义 (9)4)参考资料 (9)二、总体设计 (10)1)需求规定 (10)2)运行环境 (10)3)基本设计概念和处理流程 (10)4)结构 (11)5)功能器求与程序的关系 (12)6)人工处理过程 (14)三、接口设计 (14)1)用户接口 (14)2)外部接口 (14)四、运行设计 (15)1)运行模块组合 (15)2)运行控制 (15)五、系统数据结构设计 (15)1)逻辑结构设计要点 (15)六、系统出错处理设计 (16)1)出错信息 (16)2)补救措施 (16)(四)详细设计说明书 (17)一、引言 (17)1)编写目的 (17)2)背景 (17)3)定义 (17)4)参考资料 (17)二、程序系统的结构 (18)三、程序(标识符)设计说明 (18)1)程序描述 (18)2)功能 (19)3)输人项 (20)4)流程逻辑 (22)5)存储分配 (22)6)限制条件 (23)(五)测试分析报告(GB8567——88) (24)一、引言 (24)1)编写目的 (24)2)背景 (24)3)定义 (24)4)参考资料 (24)二、测试概要 (24)三、测试结果及发现 (25)四、对软件功能的结论 (25)五、分析摘要 (25)1)能力 (25)2)缺陷和限制 (26)3)建议 (26)4)评价 (26)六、测试资源消耗 (26)(一)项目开发计划(GB856T——88)一、引言1)编写目的明确项目计划,在了解项目内容的基础上,按时间段合理安排该项目参与者的工作,为后续工作提供指导依据。
嵌入式系统和嵌入式操作系统

嵌入式系统和嵌入式操作系统【转载】本文作者张湘先生,西南交通大学电气学院讲师、博士研究生;肖建先生,教授、博士生导师.关键词:嵌入式系统嵌入式处理器嵌入式操作系统非实时操作系统实时操作系统一什么是嵌入式系统嵌入式系统?般指非PC系统,有计算机功能但又不称之为计算机地设备或器材.它是以应用为中心,软硬件可裁减地,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求地专用计算机系统.简单地说,嵌入式系统集系统地应用软件与硬件于一体,类似于PC中BIOS地工作方式,具有软件代码小、高度自动化、响应速度快等特点,特别适合于要求实时和多任务地体系.嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成,它是可独立工作地“器件”.嵌入式系?几乎包括了生活中地所有电器设备,如掌上PDA、移动计算设备、电视机顶盒、手机上网、数字电视、多媒体、汽车、微波炉、数字相机、家庭自动化系统、电梯、空调、安全系统、自动售货机、蜂窝式电话、消费电子设备、工业自动化仪表与医疗仪器等.嵌入式系统?硬件部分,包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等.嵌入式系统有别于一般地计算机处理系统,它不具备像硬盘那样大容量地存储介质,而大多使用EPROM、EEPROM或闪存(Flash Memory>作为存储介质.软件部分包括操作系统软件(要求实时和多任务操作>和应用程序编程.应用程序控制着系统地运作和行为;而操作系统控制着应用程序编程与硬件地交互作用.二嵌入式处理器嵌入式系统?核心是嵌入式微处理器.嵌入式微处理器一般具备4个特点:(1>对实时和多任务有很强地支持能力,能完成多任务并且有较短地中断响应时间,从而使内部地代码和实时操作系统地执行时间减少到最低限度;(2>具有功能很强地存储区保护功能,这是由于嵌入式系统地软件结构已模块化,而为了避免在软件模块之间出现错误地交叉作用,需要设计强大地存储区保护功能,同时也有利于软件诊断;(3>可扩展地处理器结构,以能迅速地扩展出满足应用地高性能地嵌入式微处理器;(4>嵌入式微处理器地功耗必须很低, 尤其是用于便携式地无线及移动地计算和通信设备中靠电池供电地嵌入式系统更是如此, 功耗只能为mW甚至μW级.据不完全统计,目前全世界嵌入式处理器地品种总量已经超过1000种,流行地体系结构有30多个系列.其中8051体系占多半,生产这种单片机地半导体厂家有20多个,共350多种衍生产品,仅Philips就有近100种.现在几乎每个半导体制造商都生产嵌入式处理器,越来越多地公司有自己地处理器设计部门.嵌入式处理器地寻址空间一般从64kB到16MB, 处理速度为0.1~2000MIPS,常用封装8~144个引脚.根据现状,嵌入式计算机可分成下面几类.(1>嵌入式微处理器(Embedded Microprocessor Unit, EMPU>嵌入式微处理器采用“增强型”通用微处理器.由于嵌入式系?通常应用于环境比较恶劣地环境中,因而嵌入式微处理器在工作温度、电磁兼容性以及可靠性方面地要求较通用地标准微处理器高.但是,嵌入式微处理器在功能方面与标准地微处理器基本上是一样地.根据实际嵌入式应用要求,将嵌入式微处理器装配在专门设计地主板上,只保留和嵌入式应用有关地主板功能,这样可以大幅度减小系统地体积和功耗.和工业控制计算机相比,嵌入式微处理器组成地系统具有体积小、重量轻、成本低、可靠性高地优点,但在其电路板上必须包括ROM、RAM、总线接口、各种外设等器件,从而降低了系统地可靠性,技术保密性也较差.由嵌入式微处理器及其存储器、总线、外设等安装在一块电路主板上构成一个通常所说地单板机系统.嵌入式处理器目前主要有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM系列等.(2>嵌入式微控制器(Microcontroller Unit, MCU>嵌入式微控制器又称单片机,它将整个计算机系统集成到一块芯片中.?入式微控制器一般以某种微处理器内核为核心,根据某些典型地应用,在芯片内部集成了ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、EEPROM等各种必要功能部件和外设.为适应不同地应用需求,对功能地设置和外设地配置进行必要地修改和裁减定制,使得一个系列地单片机具有多种衍生产品,每种衍生产品地处理器内核都相同,不同地是存储器和外设地配置及功能地设置.这样可以使单片机最大限度地和应用需求相匹配,从而减少整个系统地功耗和成本.和嵌入式微处理器相比,微控制器地单片化使应用系统地体积大大减小,从而使功耗和成本大幅度下降、可靠性提高.由于嵌入式微控制器目前在产品地品种和数量上是所有种类嵌入式处理器中最多地,而且上述诸多优点决定了微控制器是嵌入式系统应用地主流.微控制器地片上外设资源一般比较丰富,适合于控制,因此称为微控制器.通常,嵌入式微处理器可分为通用和半通用两类,比较有代表性地通用系列包括8051、P51XA、MCS-251、MCS-96/196/296、C166/167、68300等.而比较有代表性地半通用系列,如支持USB接口地MCU 8XC930/931、C540、C541;支持I2C、CAN总线、LCD等地众多专用MCU和兼容系列.目前MCU约占嵌入式系统市场份额地70%.(3>嵌入式DSP处理器(Embedded Digital Signal Processor, EDSP>在数字信号处理应用中,各种数字信号处理算法相当复杂,这些算法地复杂度可能是O (nm>地,甚至是NP地,一般结构地处理器无法实时地完成这些运算.由于DSP处理器对系统结构和指令进行了特殊设计,使其适合于实时地进行数字信号处理.在数字滤波、FFT、谱分析等方面,DSP算法正大量进入嵌入式领域,DSP应用正从在通用单片机中以普通指令实现DSP功能,过渡到采用嵌入式DSP处理器.嵌入式DSP处理器有两类:(1>DSP处理器经过单片化、EMC改造、增加片上外设成为嵌入式DSP处理器,TI地TMS320C2000/C5000等属于此范畴;(2>在通用单片机或SOC中增加DSP协处理器,例如Intel地MCS-296和Infineon(Siemens>地TriCore.另外,在有关智能方面地应用中,也需要嵌入式DPS处理器,例如各种带有智能逻辑地消费类产品,生物信息识别终端,带有加解密算法地键盘,ADSL接入、实时语音压解系统,虚拟现实显示等.这类智能化算法一般都是运算量较大,特别是向量运算、指针线性寻址等较多,而这些正是DSP处理器地优势所在.嵌入式DSP处理器比较有代表性地产品是TI地TMS320系列和Motorola地DSP56000系列.TMS320系列处理器包括用于控制地C2000系列、移动通信地C5000系列,以及性能更高地C6000和C8000系列.DSP56000目前已经发展成为DSP56000、DSP56100、DSP56200和DSP56300等几个不同系列地处理器.另外,Philips公司最近也推出了基于可重置嵌入式DSP结构,采用低成本、低功耗技术制造地R. E.A. L DSP处理器,其特点是具备双Harvard结构和双乘/累加单元,应用目标是大批量消费类产品.(4>嵌入式片上系统(System On Chip, SOC>随着EDI地推广和VLSI设计地普及化,以及半导体工艺地迅速发展,可以在一块硅片上实现一个更为复杂地系统,这就产生了SOC技术.各种通用处理器内核将作为SOC设计公司地标准库,和其他许多嵌入式系统外设一样,成为VLSI设计中一种标准地器件,用标准地VHDL、Verlog等硬件语言描述,存储在器件库中.用户只需定义出其整个应用系统,仿真通过后就可以将设计图交给半导体工厂制作样品.这样除某些无法集成地器件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简单,对于减小整个应用系统体积和功耗、提高可靠性非常有利.SOC可分为通用和专用两类,通用SOC如Infineon(Siemens>地TriCore、Motorola地M-Core,以及某些ARM系列器件,如Echelon和Motorola联合研制地Neuron芯片等;专用SOC一般专用于某个或某类系统中,如Philips地Smart XA,它将XA单片机内核和支持超过2048位复杂RSA算法地CCU单元制作在一块硅片上,形成一个可加载Java或C语言地专用SOC,可用于互联网安全方面.三嵌入式操作系统嵌入?操作系统是一?支持嵌入式系?应用地操作系统软件,它是嵌入式系统(包括硬、软件系统>极为重要地组成部分,通常包括与硬件相关地底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等Browser.嵌入式操作系统具有通用操作系统地基本特点,如能够有效管理越来越复杂地系统资源;能够把硬件虚拟化,使得开发人员从繁忙地驱动程序移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及应用程序 .与通用操作系统相比较,嵌入式操作系统在系统实时高效性、硬件地相关依赖性、软件固态化以及应用地专用性等方面具有较为突出地特点.1. 嵌入式操作系统地种类一般情况下,嵌入式操作系统可以分为两类,一类是面向控制、通信等领域地实时操作系统,如WindRiver公司地VxWorks、ISI地pSOS、QNX系统软件公司地QNX、ATI地Nucleus等;另一类是面向消费电子产品地非实时操作系统,这类产品包括个人数字助理(PDA>、移动电话、机顶盒、电子书、WebPhone等.a. 非实时操作系统早期地嵌入式系统中没有操作系统地概念,程序员编写嵌入式程序通常直接面对裸机及裸设备.在这种情况下,通常把嵌入式程序分成两部分,即前台程序和后台程序.前台程序通过中段来处理事件,其结构一般为无限循环;后台程序则掌管整个嵌入式系统软、硬件资源地分配、管理以及任务地调度,是一个系统管理调度程序.这就是通常所说地前后台系统.一般情况下,后台程序也叫任务级程序,前台程序也叫事件处理级程序.在程序运行时,后台程序检查每个任务是否具备运行条件,通过一定地调度算法来完成相应地操作.对于实时性要求特别严格地操作通常由中断来完成,仅在中断服务程序中标记事件地发生,不再做任何工作就退出中断,经过后台程序地调度,转由前台程序完成事件地处理,这样就不会造成在中断服务程序中处理费时地事件而影响后续和其他中断.实际上,前后台系统地实时性比预计地要差.这是因为前后台系统认为所有地任务具有相同地优先级别,即是平等地,而且任务地执行又是通过FIFO队列排队,因而对那些实时性要求高地任务不可能立刻得到处理.另外,由于前台程序是一个无限循环地结构,一旦在这个循环体中正在处理地任务崩溃,使得整个任务队列中地其他任务得不到机会被处理,从而造成整个系统地崩溃.由于这类系统结构简单,几乎不需要RAM/ROM地额外开销, 因而在简单地嵌入式应用被广泛使用.b. 实时操作系统实时系统是指能在确定地时间内执行其功能并对外部地异步事件做出响应地计算机系统.其操作地正确性不仅依赖于逻辑设计地正确程度,而且与这些操作进行地时间有关.“在确定地时间内”是该定义地核心.也就是说,实时系统是对响应时间有严格要求地.实时系统对逻辑和时序地要求非常严格,如果逻辑和时序出现偏差将会引起严重后果.实时系统有两种类型:软实时系统和硬实时系统.软实时系统仅要求事件响应是实时地,并不要求限定某一任务必须在多长时间内完成;而在硬实时系统中,不仅要求任务响应要实时,而且要求在规定地时间内完成事件地处理.通常,大多数实时系统是两者地结合.实时应用软件地设计一般比非实时应用软件地设计困难.实时系统地技术关键是如何保证系统地实时性.实时多任务操作系统是指具有实时性、能支持实时控制系统工作地操作系统.其首要任务是调度一切可利用地资源完成实时控制任务,其次才着眼于提高计算机系统地使用效率,重要特点是要满足对时间地限制和要求.实时操作系统具有如下功能:任务管理(多任务和基于优先级地任务调度>、任务间同步和通信(信号量和邮箱等>、存储器优化管理(含ROM地管理>、实时时钟服务、中断管理服务.实时操作系统具有如下特点:规模小,中断被屏蔽地时间很短,中断处理时间短,任务切换很快.实时操作系统可分为可抢占型和不可抢占型两类.对于基于优先级地系统而言,可抢占型实时操作系统是指内核可以抢占正在运行任务地CPU使用权并将使用权交给进入就绪态地优先级更高地任务,是内核抢了CPU让别地任务运行.不可抢占型实时操作系统使用某种算法并决定让某个任务运行后,就把CPU地控制权完全交给了该任务,直到它主动将CPU 控制权还回来.中断由中断服务程序来处理,可以激活一个休眠态地任务,使之进入就绪态;而这个进入就绪态地任务还不能运行,一直要等到当前运行地任务主动交出CPU地控制权.使用这种实时操作系统地实时性比不使用实时操作系统地系统性能好,其实时性取决于最长任务地执行时间.不可抢占型实时操作系统地缺点也恰恰是这一点,如果最长任务地执行时间不能确定,系统地实时性就不能确定.可抢占型实时操作系统地实时性好,优先级高地任务只要具备了运行地条件,或者说进入了就绪态,就可以立即运行.也就是说,除了优先级最高地任务,其他任务在运行过程中都可能随时被比它优先级高地任务中断,让后者运行.通过这种方式地任务调度保证了系统地实时性,但是,如果任务之间抢占CPU控制权处理不好,会产生系统崩溃、死机等严重后果.2. 嵌入式操作系统地发展嵌入?操作系统伴随着嵌入式系统?发展经历了4个比较明显地阶段.第一阶段是无操作系统地嵌入算法阶段,是以单芯片为核心地可编程控制器形式地系统,同时具有与监测、伺服、指示设备相配合地功能.这种系统大部分应用于一些专业性极强地工业控制系统中,一般没有操作系统地支持,通过汇编语言编程对系统进行直接控制,运行结束后清除内存.这一阶段系统地主要特点是:系统结构和功能都相对单一,处理效率较低,存储容量较小,几乎没有用户接口.由于这种嵌入式系统使用简便、价格很低,以前在国内工业领域应用较为普遍,但是已经远远不能适应高效地、需要大容量存储介质地现代化工业控制和新兴地信息家电等领域地需求.第二阶段是以嵌入式CPU为基础、以简单操作系统为核心地嵌入式系统.这一阶段系统地主要特点是:CPU种类繁多,通用性比较差;系统开销小, 效率高;一般配备系统仿真器,操作系统具有一定地兼容性和扩展性;应用软件较专业,用户界面不够友好;系统主要用来控制系统负载以及监控应用程序运行.第三阶段是通用地嵌入式实时操作系统阶段,是以嵌入式操作系统为核心地嵌入式系统.这一阶段系统地主要特点是:嵌入式操作系统能运行于各种不同类型地微处理器上,兼容性好;操作系统内核精小、效率高,并且具有高度地模块化和扩展性;具备文件和目录管理、设备支持、多任务、网络支持、图形窗口以及用户界面等功能;具有大量地应用程序接口(API>,开发应用程序简单;嵌入式应用软件丰富.第四阶段是以基于Internet为标志地嵌入式系统,这是一个正在迅速发展地阶段.目前大多数嵌入式系统还孤立于Internet之外,但随着Internet地发展以及Internet技术与信息家电、工业控制技术等结合日益密切,嵌入式设备与Internet地结合将代表着嵌入式技术地真正未来.3. 使用实时操作系统地必要性嵌入式实时操作系统在目前地嵌入?应用中用得越来越广?,尤其在功能复杂、系统庞大地应用中显得愈来愈重要.首先,嵌入式实时操作系统提高了系统地可靠性.在控制系统中,出于安全方面地考虑,要求系统起码不能崩溃,而且还要有自愈能力.不仅要求在硬件设计方面提高系统地可靠性和抗干扰性,而且也应在软件设计方面提高系统地抗干扰性,尽可能地减少安全漏洞和不可靠地隐患.长期以来地前后台系统软件设计在遇到强干扰时,使得运行地程序产生异常、出错、跑飞,甚至死循环,造成了系统地崩溃.而实时操作系统管理地系统,这种干扰可能只是引起若干进程中地一个被破坏,可以通过系统运行地系统监控进程对其进行修复.通常情况下,这个系统监视进程用来监视各进程运行状况,遇到异常情况时采取一些利于系统稳定可靠地措施,如把有问题地任务清除掉.其次,提高了开发效率,缩短了开发周期.在嵌入式实时操作系统环境下,开发一个复杂地应用程序,通常可以按照软件工程中地解耦原则将整个程序分解为多个任务模块.每个任务模块地调试、修改几乎不影响其他模块.商业软件一般都提供了良好地多任务调试环境.再次,嵌入式实时操作系统充分发挥了32位CPU地多任务潜力.32位CPU比8、16位CPU快,另外它本来是为运行多用户、多任务操作系统而设计地,特别适于运行多任务实时系统.32位CPU采用利于提高系统可靠性和稳定性地设计,使其更容易做到不崩溃.例如,CPU 运行状态分为系统态和用户态.将系统堆栈和用户堆栈分开,以及实时地给出CPU地运行状态等,允许用户在系统设计中从硬件和软件两方面对实时内核地运行实施保护.如果还是采用以前地前后台方式,则无法发挥32位CPU地优势.从某种意义上说,没有操作系统地计算机(裸机>是没有用地.在嵌入式应用中,只有把CPU嵌入到系统中,同时又把操作系统嵌入进去,才是真正地计算机嵌入式应用.4. 实时操作系统地优缺点在嵌入式实时操作系统环境下开发实时应用程序使程序地设计和扩展变得容易,不需要大地改动就可以增加新地功能.通过将应用程序分割成若干独立地任务模块,使应用程序地设计过程大为简化;而且对实时性要求苛刻地事件都得到了快速、可靠地处理.通过有效地系统服务,嵌入式实时操作系统使得系统资源得到更好地利用.但是,使用嵌入式实时操作系统还需要额外地ROM/RAM开销,2~5%地CPU额外负荷,以及内核地费用.。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、嵌入式系统的特点:嵌入式系统通常是形式多样、面向特定应用的软硬件综合体;嵌入式系统得到多种类型的处理器和处理器体系结构的支持;嵌入式系统通常极其关注成本;嵌入式系统有实时性和可靠性的要求;嵌入式系统使用的操作系统是适应多种处理器、可剪裁、轻量型、实时可靠、可固化的嵌入式操作系统;嵌入式系统开发需要专门工具和特殊方法。
2、嵌入式系统的分类:(1)按嵌入式处理器的位数来分类:4、8、16、32、64位嵌入式系统;(2)按应用来分类:信息家电类、移动终端类、通信类、汽车电子类、工业控制类;(3)按速度分类:强实时系统, 其系统响应时间在毫秒或微秒级。
一般实时系统, 其系统响应时间在几秒的数量级上,其实时性的要求比强实时系统要差一些。
弱实时系统, 其系统响应时间约为数十秒或更长。
这种系统的响应时间可能随系统负载的轻重而变化;(4)按确定性来分类:硬实时:系统对系统响应时间有严格的要求,如果系统响应时间不能满足,就要引起系统崩溃或致命的错误。
软实时:系统对系统响应时间有要求,但是如果系统响应时间不能满足,不会导致系统出现致命的错误或崩溃;(5)按嵌入式系统软件复杂程度来分类:循环轮询系统、有限状态机系统、前后台系统、单处理器多任务系统、多处理器多任务系统。
3、嵌入式系统的应用领域:(1)嵌入式系统广泛地应用于消费电子、通信、汽车、国防、航空航天、工业控制、仪表、办公自动化等领域;(2)消费电子领域;(3)通信领域;(4)工控、汽车电子、仿真、医疗仪器等;(5)国防、航空航天领域。
4、嵌入式系统的发展趋势:(1)以信息家电、移动终端、汽车电子、网络设备等为代表的互联网时代的嵌入式系统,不仅为嵌入式市场展现了美好前景,注入了新的生命,同时也对嵌入式系统技术,提出新的挑战;(2)形成行业的标准:行业性嵌入式软硬件平台;(3)面向应用领域的、高度集成的、以32位嵌入式微处理器为核心的SOC将成为应用主流;(4)嵌入式应用软件的开发需要强大的开发工具和操作系统的支持;(5)嵌入式系统联网成为必然趋势,驱动了大量新的应用。
5、互联的价值:(1)嵌入式设备的互联性可提高对各种服务、内容和信息的访问能力;(2)为动态修改嵌入式软件提供了可能;(3)增强了系统和设备的可管理性。
6、嵌入式硬件系统的基本组成:嵌入式系统的硬件是以嵌入式微处理器为核心,主要由嵌入式微处理器、总线、存储器、输入/输出接口和设备组成。
7、嵌入式微处理器的特点及主流类型:体积小、重量轻、成本低、可靠性高、功耗低、工作温度、抗电磁干扰、可靠性等方面增强据不完全统计,目前全世界嵌入式微处理器的品种总量已经超过千种,有几十种嵌入式微处理器体系,主流的体系有ARM、MIPS、PowerPC、SH、 X86等。
8、总线、存储器、I/O接口和设备:(1)总线:嵌入式系统的总线一般集成在嵌入式微处理器中;从微处理器的角度来看,总线可分为片外总线(如:PCI、ISA等)和片内总线(如:AMBA、 AVALON、OCP、WISHBONE等);选择总线和选择嵌入式微处理器密切相关,总线的种类随不同的微处理器的结构而不同。
(2)存储器:嵌入式系统的存储器包括主存和外存;大多数嵌入式系统的代码和数据都存储在处理器可直接访问的存储空间即主存中。
系统上电后在主存中的代码直接运行。
主存储器的特点是速度快,一般采用ROM、EPROM、Nor Flash、SRAM、DRAM等存储器件。
目前有些嵌入式系统除了主存外,还有外存。
外存是处理器不能直接访问的存储器,用来存放各种信息,相对主存而言具有价格低、容量大的特点。
在嵌入式系统中一般不采用硬盘而采用电子盘做外存,电子盘的主要种类有NandFlash、 SD (Secure Digital)卡、CompactFlash、SmartMedia、Memory Stick、MultiMediaCard、、 DOC(Disk On Chip)等。
(3)输入/输出接口和设备:嵌入式系统的大多数输入/输出接口和部分设备已经集成在嵌入式微处理器中。
输入/输出接口主要有中断控制器、DMA、串行和并行接口等,设备主要有定时器(Timers)、计数器(counters)、看门狗(watchdog timers)、RTC、UARTs、PWM(Pulse width modulator)、AD/DA、显示器、键盘和网络等。
9、嵌入式软件系统的分类:(1)系统软件:控制、管理计算机系统的资源;(2)支撑软件:辅助软件开发的工具;(3)应用软件:面向应用领域。
从运行平台分类:运行在开发平台上的软件、运行在嵌入式系统上的软件。
、10嵌入式实时操作系统的特点:源代码、可移植、可固化、可裁减、可抢占性、支持多任务、可确定性、任务栈、系统服务、中断管理、稳定性和可靠性。
•任务的定义及其主要特性: 任务是一个具有独立功能的无限循环的程序段的一次运行活动,是实时内核调度的单位,具有以下特性:1动态性:任务状态是不断变化的。
一般分为就绪态、运行态和等待态。
在多任务系统中,任务的状态将随着系统的需要不断进行变化。
2并行性:系统中同时存在多个任务,这些任务在宏观上是同时运行的。
3异步独立性:每个任务各自按相互独立的不可预知的速度运行,走走停停。
•任务的内容: 代码:一段可执行的程序;数据:程序所需要的相关数据(变量、工作空间、缓冲区等);堆栈;程序执行的上下文环境•任务通常包含一个具有无限循环的程序•任务与程序的区别: 1任务能真实地描述工作内容的并发性,而程序不能;2程序是任务的组成部分3除程序外,任务还包括数据、堆栈及其上下文环境等内容;4程序是静态的,任务是动态的;5任务有生命周期,有诞生、有消亡,是短暂的;而程序是相对长久的;6一个程序可对应多个任务,反之亦然;7任务具有创建其他任务的功能,而程序没有•任务的分类: 按照到达情况的可预测性,任务可以划分为:1周期任务(periodic task)2非周期任务;按照重要程度,可分为:1关键任务(critical task)2非关键任务(noncritical task•任务参数:1优先级(priority) 2周期(period) 3计算时间(computation time)4就绪时间(ready time) 5截止时间(deadline)•任务管理:3个状态: 等待(waiting):任务在等待某个事件的发生;•就绪(ready):任务等待获得处理器资源;•执行(running):任务获得处理器资源,所包含的代码内容正在被执行•任务控制块: 任务管理是通过对任务控制块(Task Control Block,TCB)的操作来实现的。
•任务控制块是包含任务相关信息的数据结构•包含了任务执行过程中所需要的所有信息。
•任务控制块大都包括以下信息:1任务的名字2任务执行的起始地址3任务的优先级4任务的状态5任务的硬件上下文(堆栈指针、PC和寄存器等)6任务的队列指针等内容•任务切换: 任务切换(context switching):保存当前任务上下文,并恢复需要执行的任务的上下文的过程。
•当发生任务切换时:1当前正在运行的任务的上下文就需要通过该任务的任务控制块保存起来;2把需要投入运行的任务的上下文从对应的任务控制块中恢复出来•任务切换基本步骤: 1 保存任务上下文环境2 更新当前运行任务的控制块内容,将其状态改为就绪或等待状态3 将任务控制块移到相应队列(就绪队列或等待队列)4 选择另一个任务进行执行(调度)5 改变需投入运行任务的控制块内容,将其状态变为运行状态 6 恢复需投入运行任务的上下文环境•任务管理机制: 任务管理用来实现对任务状态的直接控制和访问。
•内核的任务管理是通过系统调用来体现,主要包括任务创建、任务删除、任务挂起、任务唤醒、设置任务属性等内容•任务管理功能:1 创建任务2删除任务3挂起任务4唤醒任务5设置任务属性6改变任务优先级7获取任务信息•任务调度: 设计调度程序时,通常需要综合考虑如下因素:1CPU的使用率(CPU utilization)2输入/输出设备的吞吐率3响应时间(responsive time)4公平性5截止时间•调度方法划分: 1离线(off-line)和在线(on-line)调度2抢占(preemptive)和非抢占(non-preemptive)调度3静态(static)和动态(dynamic)调度4最佳(optimal)和试探性(heuristic)调度•抢占式调度和非抢占式调度:任务在运行过程中能否被打断的处理情况。
•抢占式调度:正在运行的任务可能被其他任务所打断。
•非抢占式调度:一旦任务开始运行,该任务只有在运行完成而主动放弃CPU资源,或是因为等待其他资源被阻塞的情况下才会停止运行•时间管理功能: 1维持日历时间; 2任务有限等待的计时; 3软定时器的定时管理; 4维持系统时间片轮转调度•通常来说,实时内核提供以下主要与时间相关的管理: 1维持相对时间(时间单位为tick)和日历时间;2任务有限等待的计时;3定时功能;4时间片轮转调度的计时•时间管理功能是通过tick处理程序来实现的1、信号量的种类及用途:(1)互斥信号量:用于解决互斥问题。
它比较特殊,可能会引起优先级反转问题。
互斥信号量是一种特殊的二值信号量,一般它支持所有权、递归访问、任务删除安全和一些避免优先级反转、饥饿、死锁等互斥所固有问题的协议。
(2)二值信号量:用于解决同步问题。
(3)计数信号量:用于解决资源计数问题。
2、信号量机制的主要数据结构:信号量控制块:管理所有创建的信号量,内核在系统运行时动态分配和回收信号量控制块;互斥和二值信号量控制块结构: Binary_Semaphore_Control_Block wait_queue 任务等待队列 attributes 信号量属性lock_nesting_behavior试图嵌套获得时的规则 wait_discipline任务等待信号量的方式 priority_ceiling优先级天花板值 lock是否被占有 holder拥有者nest_count嵌套层数。
3、典型的信号量操作:(1)创建信号量获取(申请),信号量释放信号量,删除信号量,清除信号量的任务等待列表,获取有关信号量的各种信息。
4、通信方式概述:任务间的通信方式,直接通信。
在通信过程中双方必须明确地知道(命名)彼此;间接通信,通信双方不需要指出消息的来源或去向,而通过中间机制来通信。
5、消息队列机制的主要数据结构:消息队列控制块:管理所有创建的消息队列,系统运行时动态分配和回收消息队列控制块;消息队列缓冲区:存放发送到该队列的消息。
接收者从缓冲区中取出消息,消息的发送或接收有两种方法。