您的位置:首页 > 其它

实时操作系统基础概念总结——基于ucosii的使用

2013-10-23 14:36 399 查看
代码临界段:指处理时不可分割的代码。一旦这部分代码开始执行则不允许中断打入;在Linux中常用的方法:中断屏蔽,自旋锁,互斥体等。任务之间的并发执行一般使用信号量,即A任务执行之后会释放信号量,此时B任务才能“拿到”信号量执行。

资源:任何为任务所占用的实体;包括硬件资源和软件资源。如中断,定时器,IO口,内存;数组,全局变量,堆栈等。

共享资源:可以被一个以上任务使用的资源;(如打印机,一次只能被一个任务使用,这里就涉及到进程间的互斥机制)。

任务:也称作一个线程,是一个简单的程序。每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。典型地,每个任务都是一个无限的循环,每个任务都处在以下五个状态下:休眠态,就绪态,运行态,挂起态,被中断态;在一个任务被执行过程中,其他任务(包括自己)可以被创建,挂起删除等操作。

任务切换:将正在运行任务的当前状态(CPU寄存器中的全部内容)保存在任务自己的栈区,然后把下一个将要运行的任务的当前状态从该任务的栈中重新装入CPU的寄存器,并开始下一个任务的运行;(任务的切换需要花费时间!这是衡量一个系统实时性的重要参数!)

内核:负责管理各个任务,为每个任务分配CPU时间,并负责任务之间通讯。分为不可剥夺型内核和可剥夺型内核;Linux内核提供了文件系统,内存管理,网络协议栈,io管理等策略。

调度内核的主要职责之一,决定轮到哪个任务运行。一般基于优先级调度法;

关于实时操作系统的特征有以下三点:

1)高精度计时系统;

2)多级中断机制;

3)实时调度机制;(内核调度算法)

rots可实现一个能够在指定或者确定的时间内完成系统功能和对外部环境做出响应的系统!

参考百度百科:http://baike.baidu.com/link?url=JMLZJZw5CuHesOftUwA5tXcGPDUBe8zromxyk4O3-iVm4zgsH0RUEtcRKBVfE3nl
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: