▶1. windows系统结构

目前使用的 win do ug系统属于 NT系列,。系统分为核心态和用户态两大层次,这样的分层避免了用户程序对系统内核的破坏。

▶2.用户模式(用户态)


用户模式部分包括Windows子系统进程(csrss.exe)以及一组动态链接库(DLL)。csrss.exe进程主要负责控制台窗口的功能,以及创建或删除进程和线程等。子系统DLL则被直接链接到应用程序进程中,包括kernel32.dll、user32.dll、gdi32.dll和advapi.dll等。

▶3.内核模式(核心态)

1)硬件抽象层

硬件抽象层(HAL)是一个独立的DLL(动态链接库),通过HAL可以隔离不同硬件设备的差异,使系统上层模块无须考虑下层硬件之间的差异性。上层模块不能直接访问硬件设备,它们通过HAL来访问硬件设备。由于硬件设备并不一致,所以操作系统有多个HAL。例如,有些计算机CPU为Intel产品,而有些为AMD的CPU;有的CPU为2核,有些为4核,这些差异会造成硬件的不一致。为了解决这个问题,Windows安装程序附带多个HAL,系统安装时会自动识别CPU是AMD还是Intel产品,然后自动选择一个合适的HAL进行安装。

2)设备驱动程序

win32k.sys的形式是一个驱动程序,但实际上它并不处理I/O(输入/输出)请求,相反,它向用户提供了大量的系统服务。从功能上讲,它包含两部分:窗口管理和图形设备接口(GDI)。其中窗口管理部分负责收集和分发消息,以及控制窗口显示和管理屏幕输出;图形设备接口部分包含各种形状绘制以及文本输出功能。

3)系统内核

Windows系统内核文件为ntoskrnl.exe,安装在C:\Windows\System32目录下,在Windows 7下文件大小为3.73MB。WRK(Windows研究内核)是微软公司2006年开放的Windows内核部分源代码。WRK建立在真实的Windows内核基础上,实现了线程调度、内存管理、I/O管理、文件系统等操作系统所必需的基本功能。WRK给出了Windows系统内核的大部分源程序代码,可以对其中的源程序进行修改、编译,并且用这个内核启动Windows操作系统。

4)图形设备接口

Windows的图形引擎有两个特点:一是提供了一套与设备无关的图形编程接口(GDI),这使得应用程序可以适应各种显示设备;二是应用程序与图形设备驱动程序之间的通信非常高效,能够为用户提供良好的视觉效果。Windows图形系统除支持GDI外,还提供了对DirectX(读[DX]或[迪瑞克特-叉])的支持,从而允许游戏、多媒体软件等绕过GDI图形引擎,直接操作显示器等硬件,从而获得更快的显示速度,并且避免屏幕图像的抖动。

01-25 03:55