|
中断是硬件与软件打交道的重要方法,所以大多数驱动程序都涉及到中断处理。要想了解驱动的开发过程,必须先了解WindowsCE中断机制。下面由卓跃教育为您介绍WindowsCE。
WindowsCE.NET是微软专门为信息设备、移动应用、消费类电子产品、嵌入式应用等非PC领域而从头设计的战略性操作系统产品,是一个抢先式多任务并具有强大通信能力的Windows32位嵌入式操作系统。WindowsCE与Windows桌面操作系统并不相同。CE系统提供了设备驱动程序,以
驱动内部或者外围硬件设备。驱动程序将操作系统和设备链接起来,使得操作系统能够识别设备,并为应用程序提供相应的服务。
WindowsCE包含内核模块;对象存储模块;图形、窗口和事件子系统(GWES)模块以及通信模块这4个提供操作系统最关键功能的模块。还包含有一些附加的可选择模块,这些模块可支持的任务有管理流设备驱动程序、支持COM等。
内核是0S的核心。通过CoreDII模块表示,它所提供的设备中都出现基本操作系统的功能。内核负责内存管理、进程管理、以及特定文件管理等功能,还管理虚拟内存、调度、多重任务处理以及例外处理等。
GWES是用户、应用程序和0S之间的图形用户接口,通过处理键盘、笔针动作来接受用户输入,并选择传送到应用程序和0S的信息。GWES通过创建并管理在显示设备和打印机上显示的窗口、图形以及文本来处理输出。
通信组件提供对下列通信硬件和数据协议的支持:串行I/O支持,远程访问服务(RAS),传输控制协议/Internet协议(TCP/IP),局域网(LA娜,电话技术API,WindowsCE的无线服务。
在CE的中断处理中,CEKernel完成一部分工作,另一部分是由OEM完成的。WindowsCE的中断服务例程是由OAL(对象抽象层)实现的,硬件中断被发送到内核的异常处理器。内核的中断支持处理器调用OAL函数OEMInterruptDisable来屏蔽此硬件的特定中断。然后内核调用ISR来进行物理中断,以中断标志符的形式返回逻辑中断给系统的任务调度程序。系统得到该中断号后,就会找到该中断号,并唤醒等待相应事件的线程(IsD,然后IST就可以在用户模式下进行中断处理。处理完成后。IST需要调用InterruptDONe来通知操作系统中断处理结束。
|
|