在PC机的主板上,有一种类型的接口可能为我们所忽视,那就是RS-232C串行接口,在微软的Windows系统中称其为COM。
MFC引入了“文档/视图”结构的概念,理解这个结构是编写基于MFC编写复杂Visual C++程序的关键。
中断处理是整个运行系统中优先级最高的代码,可以抢占任何任务级代码运行。中断机制是多任务环境运行的基础,是系统实时性的保证。几乎所有的实时多任务操作系统都需要一个周期性系统时钟中断的支持,用以完成时间片调度和延时处理。VxWorks 提供tickAnnounce(),由系统时钟中断调用,周期性地触发内核。
管道可以看作受驱动器pipeDrv管理的虚拟I/O设备,使用基本的I/O系统接口可以读、写和操作管道
VxWorks提供了多种任务间通信方式,主要有:(1)共享内存(Shared Memory),用于简单的数据共享;(2)信号量(Semaphore),用于互斥和同步;(3)消息队列(Message queues)和管道(Pipe),单CPU内任务间的信息传送;(4)套接字(Socket)和远程过程调用(RPC),用于网络间任务消息传送;(5)信号(Signals),用于异常处理(Exception handling)。
VxWorks支持两种方式的任务调度:(1)基于优先级的抢占调度(Preemptive Priority Based Scheduling) (2)时间片轮转调度(Round-Robin Scheduling)
VxWorks实时内核Wind提供了基本的多任务环境。对用户而言,宏观上看起来,多个任务同时在执行。而本质而言,在微观上,系统内核中的任务调度器总是在根据特定的调度策略让它们交替运行。系统调度器需要使用任务控制块(TCB)数据结构来管理任务调度功能,TCB被用来描述一个任务。TCB中存放了任务的上下文(context)信息,主要包括程序计数器PC、CPU内部寄存器、浮点寄存器、堆栈指针SP、任务信息等。每一任务都与一个TCB关联,当执行中的任务被停止时,任务的上下文信息需要被写入TCB;而当任务被重新执行时,必须要恢复这些上下文信息。
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号