⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 futurertos.htm

📁 嵌入式系统
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0041)http://mcu21cn.topcool.net/futurertos.htm -->
<HTML><HEAD><TITLE>单片机编程世界——编程实战---C51</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META content="MSHTML 5.00.2920.0" name=GENERATOR></HEAD>
<BODY background=futurertos.files/weave.gif><FONT face=宋体 size=4>
<P align=center><STRONG>实时多任务操作系统(RTOS)简介</STRONG></FONT></P>
<P>&nbsp;&nbsp;&nbsp; <FONT face=宋体>目前嵌入式应用领域的一个发展倾向是采用实时多任务操作系统(Real Time 
Operation 
System,RTOS)。RTOS的应用是和前面所述的应用复杂化直接相关的。过去一个单片机应用程序所控制的外设和履行的任务不多,采取一个主循环和几个顺序调用的子程序模块 
即可满足要求。目前单片机芯片本身的性能大幅度提高,可以适应应用复杂化这一要求,问题在于软件上。随着应用的复杂化,一个嵌入式控制器系统可能要同时控制/监视很多外设,要求有实时响应,有很多处理任务,各个任务之间有多种信息传递,如果仍采用原来 
的程序设计方法存在两个问题。一是中断可能得不到及时响应,处理时间过长,这对于一 
些控制场合是不允许的,对于网络通信方面则会降低系统整体的信息流量。二是系统任务多,要考虑的各种可能也多,各种资源如调度不当就会发生死锁,降低软件可靠性,程序编写任务量成指数增加。实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等) 
管理、消息管理、任务调度、异常处理等工作。在RTOS支持的系统中,每个任务均有一个优先级,RTOS根据各个任务的优先级,动态地切换各个任务,保证对实时性的要求。 
工程师在编写程序时,可以分别编写各个任务,不必同时将所有任务运行的各种可能情况 记在心中,大大减小了程序编写的工作量,而且减小了出错的可能,保证最终程序具有高 
可靠性。</FONT><BR>&nbsp;&nbsp;&nbsp; <FONT 
face=宋体>实时多任务操作系统,以分时方式运行多个任务,看上去好象是多个任务“同时”运行。任务之间的切换应当以优先级为根据,只有优先服务方式的RTOS才是真正的实时操作系统,时间分片方式和协作方式的RTOS并不是真正的“实时”。美国CMX公司的RTOS 
采用全优先服务方式的任务调度,可以使中断潜伏时间减到最小。其RTOS的主要功能模 块有调度和中断处理(为了优化用汇编编写),任务管理,事件管理,定时器管理,报文 
管理,循环队列管理,资源管理,固定存储块管理,规范的UART管理,自动掉电管理。这些也是标准的RTOS所应具有的基本功能。RTOS也体现了一种新的系统设计思想和一个开放的软件框架,工程师可以在不大量变动系统其它任务的情况下增加或去掉一个任务;一个项目开发的过程中,可以有多个工程师同时进行系统的软件开发,各个人之间只要制订好规程和协议即可,既缩短了开发时间, 
又降低了最终软件产品对于具体某个开发者个人的依赖性。为RTOS设计的成熟和通用的任务可以以库函数的形式供其它人继续利用,和C语言的设计思想一致。因此可以说RTOS 
是嵌入式软件的编写从“小生产方式”进入“大生产方式”的必然产物。在RTOS基础上可以很容易地实现各种通信协议库函数,CMX针对目前单片机网络系统中广泛使用的CAN总线协议,开发了CAN总线协议接口库函数。这些函数包括消息 
接收,消息发送,初始化CAN控制器芯片,管理CAN控制器中断,管理节点地址和CAN 
标识,管理用于CAN信息包的缓冲存储区,通知一个任务消息已经收到等等。</FONT><BR><FONT face=宋体>&nbsp;&nbsp;&nbsp; 
实时多任务操作系统一般以源代码形式供应用户,作为Project源程序的一部分参加编译和汇编,最终在用户代码中占有一部分。例如CMX的RTOS在80C51XA系统中采用大 
模式编译增加代码量3310字节,最大中断潜伏时间在30M时钟下为2.9微秒</FONT> </P>
<P align=center><A href="http://mcu21cn.topcool.net/mcufuture.htm" 
target=_self>返回</A></P></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -