ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:30.34KB ,
资源ID:10024161      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10024161.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微实时操作系统设计与实现毕业设计精选.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微实时操作系统设计与实现毕业设计精选.docx

1、微实时操作系统设计与实现毕业设计精选微实时操作系统设计与实现毕业设计目录摘要 . 错误! 未定义书签。1.1 选题目标和意义 . 错误! 未定义书签。1.2中国外研究现实状况和趋势 . 错误! 未定义书签。1.2.1 ARM 处理器 . 错误! 未定义书签。1.2.2 操作系统 . 错误! 未定义书签。2 系统设计 . 错误! 未定义书签。2.1 可行性分析 . 错误! 未定义书签。2.2 需求分析 . 错误! 未定义书签。2.3 系统功效设计 . 错误! 未定义书签。2.3.1 总体结构 . 错误! 未定义书签。2.3.2 RTOS 内核处理步骤 . 错误! 未定义书签。3 系统开发环境和工

2、具 . 错误! 未定义书签。3.1 开发环境 . 错误! 未定义书签。3.2 开发工具 . 错误! 未定义书签。4 系统具体设计 . 错误! 未定义书签。4.1 任务创建模块 . 错误! 未定义书签。4.2 任务调度模块 . 错误! 未定义书签。4.3 任务通信模块 . 错误! 未定义书签。5 系统具体实现 . 错误! 未定义书签。5.1 任务创建模块 . 错误! 未定义书签。5.1.1 任务 . 错误! 未定义书签。5.1.2 任务状态 . 错误! 未定义书签。5.1.3 任务控制块 . 错误! 未定义书签。5.1.4 任务就绪表 . 错误! 未定义书签。5.2 任务调度模块 . 错误! 未

3、定义书签。5.2.1 基于优先级抢占调度 . 错误! 未定义书签。5.2.2 时钟节拍函数 . 错误! 未定义书签。5.3 任务间通信 . 错误! 未定义书签。6 系统测试 . 错误!未 未 定义书签。6.1 项目一:内核移植到周立功 LPC2138 测试及 RS232 串口实现 错误! 未定义书签。6.2 项目二:内核多任务抢占调度及任务睡眠机制 . 错误! 未定义书签。6.3 项目三:任务管理测试 . 错误! 未定义书签。6.4 项目四:任务间通信测试-互斥信号量 . 错误! 未定义书签。7 总结和展望 . 错误! 未定义书签。Abstract . 错误! 未定义书签。参考文件 . 错误!

4、 未定义书签。摘要微实时操作系统设计和实现田德伟 (德州学院计算机系,山东德州 253023)摘要:伴随物联网发展,嵌入式系统在大家生活中作用日益凸显。嵌入式操作系统在嵌入式开发中也逐步得到了开发人员关注,怎样在确保嵌入式系统效率前提下,降低开发成本,成为很多厂商关注焦点。该微实时操作系统和现行 linux 系统含有相比,含有更高实时性;和 µ/COS-ii 相比内核更精简、在控制产品成本中有巨大优势。该系统关键针对低端微处理器平台,意在降低开发成本同时提升嵌入式系统对外围设备管理效率。该系统支持八个优先级,每个优先级能够创建一个任务,任务间同时采取信号量机制。关键字:嵌入式实时操

5、作系统,µ/COS-ii,嵌入式系统1 引言1.1 选题目标和意义伴随微电子技术快速发展,芯片功效愈加强大,微嵌入式实时操作系统必将成为嵌入式操作系统发展趋势,这不仅能降低成本,缩小产品体积,还能增强产品可靠性。同时,软件硬件紧密结合,嵌入式软件和硬件界线愈加模糊,嵌入式软件时常以硬件形态存在,这种方法可提升实时性,增强可维护性。1.2 中国外研究现实状况和趋势嵌入式操作系统种类繁多,有资源开销极少 IC 卡操作系统,也有功效较强网络计算机操作系统。这些嵌入式操作系统从功效到性能各具特色,为多种硬件环境及应用提供了对应支持和服务。现在市场上共有几十种操作系统,有多任务系统,也有单任

6、务系统;有实时系统系统,也有分时系统。总而言之,不一样厂商推出操作系统或多或少全部有差异,但很多嵌入式操作系统通常含有以下部分内容和功效:系统关键、窗口图形系统、文件系统、设备驱动程序和网络协议等。嵌入式操作系统系统将有以下方向趋势:1. 伴随微电子技术快速发展,芯片功效愈加强大,嵌入式实时操作系统必将成为嵌入式操作系统发展趋势,这不仅能降低成本,缩小产品体积,还能增强产品可靠性。同时,软件硬件紧密结合,嵌入式软件和硬件界线愈加模糊,嵌入式软件时常以硬件形态存在,这种方法可提升实时性,增强可维护性。2.嵌入式操作系统会和嵌入应用软件协同发展。嵌入式系统中关键角色包含嵌入式应用软件,嵌入式系统应

7、用领域千差万别,只有充足重视应用软件发展,才能满足丰富多彩应用要求。1.2.1 M ARM 处理 器ARM(Advanced RISC Machines)是微处理器行业一家著名企业,设计了大量高性能、廉价、耗能低 RISC 处理器、相关技术及软件。技术含有性能高、成本低和能耗小特点。适适用于多个领域,比如嵌入控制、消费/教育类多媒体、DSP 和移动式应用等。ARM 处理器共有 7 种运行模式:用户模式(user,use)正常程序实施模式 快速中止模式(fiq)用于高速数据传输和通道处理 外部中止模式(irq)用于通常中止处理 管理模式(sve)操作系统使用一个保护模式 数据访问终止模式(abt

8、)用于虚拟存放及存放保护 未定义指令终止模式(und)用于支持经过软件方针硬件协处理器 系统模式(sys)用于运行特权级操作系统任务 除了用户模式之外 6 种处理器模式称为特权模式(privileged modes)。在这些模式下,程序能够访问全部系统资源,也能够任意进行处理器模式切换。除系统模式外,其它 5 种特权模式又称为异常模式。处理器模式能够经过软件控制进行切换,也能够经过外部中止或异常处理过程进行切换。大多数用户程序运行在用户模式下。这时,应用程序不能够访问部分受操作系统保护系统资源,应用程序也不能直接进行处理器模式切换。当需要进行处理器模式切换时,应用程序能够产生异常处理,在异常处

9、理过程中进行处理器处理器模式切换。这种体系结构能够使系统控制整个系统资源。当应用程序发生异常中止时,处理器进入对应异常模式。在每一个异常模式中全部有一组寄存器,供对应异常处理程序使用,这么就能够确保在进入异常模式时,拥护模式下寄存器(保留了程序运行状态)不被破坏。系统模式并不是经过异常过程进入,它和用户模式含有完全一样寄存器。不过系统模式属于特权模式,能够访问全部系统资源,也能够直接进行处理器模式切换。它关键供操作系统任务使用。通常操作系统任务需要访问全部系统资源,同时该任务仍然使用拥护模式寄存组,而不是使用异常模式下对应寄存器组,这么能够确保当异常中止发生时任务状态不被破坏。ARM 处理器含

10、有 37 个寄存器,这些寄存器包含以下两类寄存器。(1)31 个通用寄存器:包含程序计数器 PC 等,这些寄存器全部是 32 位寄存器。(2)6 个状态寄存器:状态寄存器也是 32 位寄存器,不过只使用了其中 12 位。在 ARM 处理器 7 种模式下全部有一组对应寄存器组。在任意时刻,可见寄存器组包含 15 个通用寄存器 R0R14、一个或两个状态寄存器和 PC。在全部寄存器中,有些是多种模式下共用同一个物理寄存器,有些是多种模式自己独立拥有物理寄存器。七种运行模式下寄存器分配以下图 1.1 所表示:图 1-1 1.2.2 操作系统现在操作系统种类繁多,极难用单一标准统一分类。依据操作系统使

11、用环境和对作业处理方法来考虑,可分为批处理系统、分时系统、实时系统。下面介绍一操作系统五大类型:批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统。1.批处理操作系统批处理(Batch Processing)操作系统工作方法是:用户将作业交给系统操作员,系统操作员将很多用户作业组成一批作业,以后输入到计算机中,在系统中形成一个自动转接连续作业流,然后开启操作系统,系统自动、依次实施每个作业,最终由操作员将作业结果交给用户。批处理操作系统特点是:多道和成批处理。2.分时操作系统分时(Time Sharing)操作系统工作方法是:一台主机连接了若干个终端,每个终端有一个用户在

12、使用。用户交互式地向系统提出命令请求,系统接收每个用户命令,采取时间片轮转方法处理服务请求,并经过交互方法在终端上向用户显示结果。用户依据上步结果发出下道命。分时操作系统将 CPU 时间划分成若干个片段,称为时间片。操作系统以时间片为单位,轮番为每个终端用户服务。每个用户轮番使用一个时间片而使每个用户并不感到有别用户存在。分时系统含有多路性、交互性、独占性和立即性特征。多路性指,伺时有多个用户使用一台计算机,宏观上看是多个人同时使用一个 CPU,微观上是多个人在不一样时刻轮番使用 CPU。交互性是指,用户依据系统响应结果深入提出新请求(用户直接干预每一步)。独占性是指,用户感觉不到计算机为其它

13、人服务,就像整个系统为她所独占。立即性指,系统对用户提出请求立即响应。它支持在不一样终端多个用户同时使用一台计算机,相互独立互不干扰,用户感到仿佛一台计算机全为她所用。常见通用操作系统是分时系统和批处理系统结合。其标准是:分时优先,批处理在后。前台响应需频繁交互作业,如终端要求; 后台处理时间性要求不强作业。3.实时操作系统实时操作系统(Real Time Operating System,RTOS)是指使计算机能立即响应外部事件请求在要求严格时间内完成对该事件处理,并控制全部实时设备和实时任务协调一致地工作操作系统。实时操作系统要追求目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完

14、整性。其关键特点是资源分配和调度首先要考虑实时性然后才是效率。另外,实时操作系统应有较强容错能力。4.网络操作系统网络操作系统是基于计算机网络,是在多种计算机操作系统上按网络体系结构协议标准开发软件,包含网络管理、通信、安全、资源共享和多种网络应用。其目标是相互通信及资源共享。在其支持下,网络中各台计算机能相互通信和共享资源。其关键特点是和网络硬件相结合来完成网络通信任务。5.分布式操作系统它是为分布计算系统配置操作系统。大量计算机经过网络被连结在一起,能够取得极高运算能力及广泛数据共享。这种系统被称作分布式系统(Distributed System) 。它在资源管理,通信控制和操作系统结构等

15、方面全部和其它操作系统有较大区分。因为分布计算机系统资源分布于系统不一样计算机上,操作系统对用户资源需求不能像通常操作系统那样等候有资源时直接分配简单做法而是要在系统各台计算机上搜索,找到所需资源后才可进行分配。对于有些资源,如含有多个副本文件,还必需考虑一致性。所谓一致性是指若干个用户对同一个文件所同时读出数据是一致。为了确保一致性,操作系统须控制文件读、写、操作,使得多个用户可同时读一个文件,而任一时刻最多只能有一个用户在修改文件。分布操作系统通信功效类似于网络操作系统。因为分布计算机系统不像网络分布得很广,同时分布操作系统还要支持并行处理,所以它提供通信机制和网络操作系统提供有所不一样,

16、它要求通信速度高。分布操作系统结构也不一样于其它操作系统,它分布于系统各台计算机上,能并行地处理用户多种需求,有较强容错能力。2 2系统设计2.1可行性分析(1)技术可行性:依据开发人员提供系统函数接口、实时性及实现系统各项条件,从技术角度研究实现系统可行性。(2)经济可行性:经济可行性是可行性研究关键组成部分,它用于评定基于计算机系统经济合理性,给出系统开发成本论证。本系统是为保险企业信息管理而做系统,装上该应用系统后即可使用,在系统移植方面简单,对硬件设备要求深入降低,节省了无须要支出,所带来效益大于系统开发成本,在经济上完全可行。(3)法律可行性:研究在系统开发过程中可能包含多种协议、侵

17、权、责任和多种和法律相关抵触问题。本系统开发不触犯国家任何法律规章,不包含侵权等内容,法律上完全可行。总而言之,该系统符合全部开发目标,能够确保系统开发有一定实时性和稳定性。所以,该微实时操作系统开发是可行。2.2需求分析1参考硬件平台为:ARM9 2410。实际上,也可用其它博创科技系列 CPU 和试验班,只要 CPU 有足够 RAM、Flash 存放器和一个串口扩展就能够了。但和 ARM9 2410 区分越小越好,最终验证功效在全部统一在 ARM9 2410 上进行测试; 2硬件抽象层接口遵照 μC/OS-II 借口规范; 3操作系统调用采取函数调用方法,不用中止陷入方法; 4每个任

18、务拥有自己独立任务堆栈,作为任务私有存放区; 5同时支持任务数不多于 8 个,空闲任务编号为 0; 7串口接口参数:波特率 115200,8 位数据,1 为停止位,无硬件流控制; 8任务优先级级数多于 8 级,最高优先级为 0,最低优先级为 7,空闲任务优先级为 7。2.3 3系统功效设计2.3 31 .1 总体结构硬件层驱动层RTOS内核应用层互斥信号量任务调度模块任务间通信用户任务1用户任务n用户任务2周立功LPC2138海量存储器串口RS232Uart.H Flash.h 图 2-11.硬件层 硬件层关键包含:含量 Flash 存放器、串口 RS232 等,它是确保系统实现指定任务最底层

19、部件。2.驱动层 驱动层作用是给操作系统提供接口,使其能管理对应硬件。3.RTOS 内核 RTOS 内核关键任务是完成多任务之间调度和同时。4.应用层 在用户应用程序中能够创建用户自己任务。任务之间通信关键依靠信号量。2.3 3S .2 RTOS 内核处理步骤S 1.RTOS 内核结构框架系统初始化任务创建任务间通信任务调度任务1任务n+1任务n 任务2任务1任务n+1任务n 任务2启动最高优先级任务 图 2-2 2. 查找最高优先级任务步骤查找最高优先级的TCB以任务优先级表为索引TCB列表OSTCBRdyTbl最高优先级TCB任务切换 图 2-3 3.:任务通信中使等候状态优先级最高任务从

20、等候列表中删除,并把其放入就绪列表中步骤以下:查找等待状态最高优先优先级Pvent.OSEventTbl 优先级位图存储就绪列表最高优先级任务控制块放入就绪表OSRdyTbl优先级位图存储就绪列表 图 2-4 3 3系统开发环境和工具3.1 1开发环境硬件平台:博创科技 ARM9 2410,也可用其它博创科技系列 CPU 和试验板,只要 CPU 有足够 RAM、Flash 存放器和一个串口扩展就能够了。但和 ARM9 2410区分越小越好,最终验证全部统一在 ARM9 2410 上进行。内存:4MB ROM:64MB 开发工具:ADS 1.2 3.2开发工具ADS1.2 ADS 是 ARM 企

21、业集成开发环境软件,她功效很强大。她前身是 SDT,SDT 是 ARM 企业几年前开发环境软件,现在 SDT 早已经不再升级。ADS 包含了四个模块分别是:SIMULATOR;c 编译器;实时调试器;应用函数库。ADS 编译器调试器较 SDT 全部有了很大改观, ADS1.2 提供完整 WINDOWS 界面开发环境。c编译器效率极高,支持 c 和 c+,使工程师能够很方便使用 C 语言进行开发。提供软件模拟仿真功效,使没有 Emulators 学习者也能够熟悉 ARM 指令系统。配合FFT-ICE 使用,ADS1.2 提供强大实时调试跟踪功效,片内运行情况尽在掌握。ADS1.2 需要硬件支持才

22、能发挥强大功效。现在支持硬件调试器有 Multi-ICE 和兼容Multi-ICE 调试工具如 FFT-ICE。4 4系统具体设计该内核设计采取结构化设计方法,以算法为中心,从处理四处理数据流。内核一级数据流图图 4-1 所表示:空闲TCB池任务创建模块Shell界面模块任务调度模块进程间通信模块空闲TCB任务就绪列表任务编号任务控制块任务控制块Shell命令行空闲OS_EVENT池空闲OS_EVNET事件创建模块事件列表互斥信号量标示事件控制块超级终端显示键盘手动输入任务列表任务控制块任务控制块任务控制块 图 4-1 4.1任务创建模块首先,创建任务 taskCreate()函数从空闲 TC

23、B 池取得空闲 TCB,并依据用户分配堆栈大小确定任务堆栈栈顶指针,调用任务堆栈初始化函数 OSTaskStkInit()对任务堆栈进行初始化,返回任务堆栈栈顶指针;然后调用函数 OSTCBInit()完成对任务控制块初始化工作;最终把任务控制块存放任务就绪列表中,具体步骤图 4-2所表示:空闲TCB池空闲TCB任务控制块初始化任务堆栈初始化任务堆栈栈顶指针任务编号任务列表空闲TCB 图 4-2 4.2任务调度模块首先 taskStart()函数依据任务编号和任务列表得到任务控制块,把任务编号和优先级放存放到 OSIDPrioTbl和就绪列表中,然后开启任务调度器,依据OSIDPrioTbl和就绪列表查找进入就绪态优先级最高任务,最终调用函数OS_TASK_SW()完成任务切换。任务调度具体步骤图 4-3 所表示:OSTCBRdyTbl列表taskStart()

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1