完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嵌入式系统
1、嵌入式系统概念:嵌入式计算机系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪,同时适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2、嵌入式系统的组成
嵌入式系统发展至今,具备了许多与通用计算机不同的特点,主要包括以下五点:
该开发环境包括专门的开发工具(包括设计、编译、调试、测试等工具),采用交叉开发的方式进行。 嵌入式操作系统 1、嵌入式操作系统概念:顾名思义,用于嵌入式系统的操作系统。具有通用操作系统的基本特点,又具有系统实时性、硬件的相关依赖性、软件固态化以及应用的专用性等特点。 2、嵌入式操作系统通常包括与硬件相关的底层驱动协议、系统内核、设备 驱动接口、通信协议、图形界面、标准化浏览器BrowSer等。 3、嵌入式操作系统的重要指标
[tr]类别描述[/tr]
嵌入式硬件系统基本组成
嵌入式微处理器体系结构: 传统的微处理器采用的冯·诺依曼结构将指令和数据存放在同一存储空间中,统一编址,指令和数据通过同一总线访问。 哈佛结构则是不同于冯·诺依曼结构的一种并行体系结构,其主要特点是程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编制、独立访问。与之相对应的是系统中设置的两条总线(程序总线和数据总线),从而使数据的吞吐率提高了一倍。 嵌入式微处理器分类:
嵌入式系统存储结构 存储结构: 嵌入式软件体系结构 1、软件(software)是计算机系统中与硬件(hardware)相互依存的另一部分,它包括程序(program)、相关数据(data)及其说明文档(document)。 其中:
[tr]类别描述举例[/tr]
嵌入式操作系统体系结构
操作系统基础知识 1、操作系统定义:操作系统是用以控制和管理计算机硬件和软件资源、合理地组织计算机的工作流程以及方便用户使用计算机的程序的集合。
μC/OS-II应用编程 1、μC/OS-II是一种专门为嵌入式设备设计的,基于优先级的可抢先式的硬实时EOS内核。 内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。2、μC/OS-II特点:
4、一个实时操作系统面对变化的负载时必须确定性地保证满足时间要求。请注意,必须要满足确定性,而不是要求速度足够快! 5、硬实时:硬实时系统指系统要有确保的最坏情况下的服务时间,即对于事件的响应时间的截止期限是无论如何都必须得到满足。 6、软实时:软实时系统就是那些从统计的角度来说,一个任务能够得到有确保的处理时间,到达系统的事件也能够在截止期限到来之前得到处理,但违反截止期限并不会带来致命的错误。 7、μC/OS-II的内核功能:
9、EOS任务的特性:
程序:程序(program)是一组指令的有序集合。10、任务的内容:
11.1 任务的优先级 (1)任务对应工作内容在处理上的优先程度 (2)优先级越高,表明任务越需要得到优先处理 (3)任务的优先级分为静态优先级和动态优先级:
11.3 任务的计算时间:任务在特定硬件环境下被完整执行所需要的时间,也被称为是任务的执行时间(execution time)。 11.4 就绪时间:任务具备了在处理器上被执行所需要条件时的时间 11.5 截止时间:任务需要在该时间到来之前被执行完成
任务拥有的资源情况发生变化导致任务状态发生改变。 补充: 空闲任务定义:
13、任务管理:任务管理是通过对任务控制块(Task Control Block,TCB)的操作来实现的。 14、任务控制块:任务控制块是包含任务相关信息的数据结构,包含了任务执行过程中所需要的所有信息
任务扩展表用来存放实现任务扩展处理的例程,实时内核通过查找任务扩展表来获取扩展处理的入口函数。16、任务调度 1)任务队列:由任务控制块组成 单等待队列: 多等待队列: 2)任务调度-优先级位图算法:优先级位图算法详解 3)任务切换时机: 4)任务切换基本步骤:
18、离线调度和在线调度:根据获得调度信息的时机。 19、抢占式调度和非抢占式调度:任务在运行过程中能否被打断的处理情况。 20、内核的可抢占性 不可抢占内核: 可抢占内核: 21、静态和动态调度 22、基于优先级的可抢占调度方式:如果出现具有更高优先级的任务处于就绪状态时,当前任务将停止运行,把CPU的控制权交给具有更高优先级的任务,使更高优先级的任务得到执行。 23、时间片轮转调度:当有两个或多个就绪任务具有相同的优先级,且它们是就绪任务中优先级最高的任务时,任务调度程序按照这组任务就绪的先后次序调度第一个任务,让第一个任务运行一段时间,然后又调度第二个任务,让第二个任务又运行一段时间,依次类推,到该组最后一个任务也得以运行一段时间后,接下来又让第一个任务运行。任务运行的这段时间称为时间片 24、小结: 调度用来确定多任务环境下任务执行的顺序和在获得CPU资源后能够执行的时间长度。25、优先级反转(Priority Inversion):高优先级任务需要等待低优先级任务释放资源,而低优先级任务又正在等待中等优先级任务的现象。 优先级反转和“死锁”的区别?26、动态优先级为EOS解决优先级反转问题提供了思路,解决优先级反转现象的常用协议为: 优先级继承协议、优先级天花板协议。 27、优先级继承协议基本思想:
30、优先级继承协议——死锁: 假定在时刻t1,任务T2获得信号量S2,进入临界区。在时刻t3,任务T2又试图获得信号量S1,但一个高优先级任务T1在这个时候就绪,抢占任务T2并获得信号量S1,接下来任务T1又试图获得信号量S2。这样就出现了死锁现象。 31、优先级继承协议——阻塞链: 任务T3在S1控制的临界区中被T2抢占,然后T2进入S2控制的临界区。这个时候,任务T1被激活而获得CPU资源,发现信号量S1和S2都分别被低优先级任务T2和T3加锁,使得T1将被阻塞两个临界区,需要先等待任务T3释放信号量S1,然后等待任务T2释放信号量S2,这样就形成了关于任务T1的阻塞链。 32、优先级天花板协议 33、优先级天花板协议的主要处理内容:
35、任务间的通信方式分类: 36、系统调用:是操作系统提供给用户程序调用的一组特殊接口。用户程序可以通过这组特殊接口来获得操作系统内核提供的服务。 37、用户编程接口:遵循了在Unix世界中最流行的应用编程界面标准——POSIX标准,这套标准定义了一系列API。 38、系统命令:系统命令相对编程接口更高了一层,它是内部引用API的可执行程序,如常用的系统命令ls、hostname等。 39、内核函数其实它们和普通函数很像,只不过在内核实现,因此要满足一些内核编程的要求。 40、关系:
Linux编程部分就省了,熟悉一下命令、shell编程就可以啦… 点个赞吧,祝大家考个好成绩!!! |
||
|
||
只有小组成员才能发言,加入小组>>
791 浏览 0 评论
1151 浏览 1 评论
2527 浏览 5 评论
2860 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2710 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1070浏览 3评论
193浏览 2评论
455浏览 2评论
368浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
453浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 11:50 , Processed in 1.228549 second(s), Total 77, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号