环境子系统
操作系统中的名词
环境子系统是操作系统中名词。环境子系统向应用程序提供环境和应用程序编程接口(Appplication Programming Interface, API)。Windows 2000/XP支持三种环境子系统:Win32、POSIX和OS/2,其中最重要的环境子系统是Win32子系统,其他子系统都要通过Win32子系统接收用户的输入和显示输出。环境子系统的作用是将基本的执行体系统服务的某些子集提供给应用程序。 用户应用程序调用系统服务时必须通过一个或多个子系统动态链接库作为中介才可以完成。
发展
环境子系统的作用也就是将一些基础的 Windows 可执行系统服务暴露给应用程序,用户程序不直接调用系统服务,而是经由一个或者多个子系统DLL 进行,这些库导出公开的接口,供连接到当前子系统的应用程序调用。
Win32
Win32 子系统提供 Win32 API 。符合 Win32 API 的应用程序可以不加修改地运行在所有32位平台上。Win32 子系统DLL (如 Kernel32.dll , Advapi32.dll , User32.dll , Gdi32.dll )实现了Win32 API 函数。
Windows拥有一个内核, 多个子系统.
Window的环境子系统其实就是内核的client, 内核为环境子系统提供服务.
最早时设计了三个环境子系统, OS/2, POSIX, Windows. 到今天Windows操作系统中就只剩下了Windows环境子系统了.
Windows的环境子系统的服务器进程是CSRSS.EXE, 全称是Client/Server Runtime Server Subsystem. 它包括三个DLL.
WINSRV.DLL 最基本的dll, 提供包括管理控制台窗口, hard error(内核的驱动程序发起, 有csrss.exe报告的错误).
CSRSRV.DLL 进程,线程维护, 调试
BASESRV.DLL 负责安全和登录.
Windows子系统还有一个内核模块, 它工作在内核之中, Win32K.sys
包括
GDI, 窗口绘制.
USER 用户输入
OS、2子系统
OS/2子系统使OS/2应用程序能够运行
POSIX
POSIX子系统提供遵从 POSIX 1003.1 标准的API
Win32 子系统是最重要的子系统,因为它控制着到图形设备的访问。其他两个子系统如OS/2 主要是为了向前兼容,而POSIX子系统在功能上受到严格限制。后两个子系统实际上也是Win32 应用程序,它们使用 Win32 API 来提供自己的API 集。 本质上,所有子系统都是基于 Win32 子系统内核的。
参考资料
最新修订时间:2024-06-20 01:53
目录
概述
发展
Win32
参考资料