《深入解析Windows操作系统》笔记第2章

来源:互联网 发布:为什么要发展人工智能 编辑:程序博客网 时间:2024/04/30 08:58

第2章很长,随便做点记录


windows是微内核系统吗

在微内核系统里面,内存管理器,进程管理器,I/O管理器运行在各自独立的进程里

就是说内核里面只剩下线程调读,消息传递,虚拟内存,和设备驱动等程序

简单来说, windows不是微内核系统. 

FYI, 微内核系统会由于太多的内核态与用户态的切换,会导致系统运行效率低下


windows总体结构


其中windows内核用于线程调度 中断 异常分发 处理器同步等

HAL应该算是windows内核与硬件之间沟通的中间人吧




Windows的环境子系统

OS/2    POSIX   Windows

第三个是我们经常用的

各个子系统不能混合使用

什么是子系统??我的理解就是API接口的集合吧,其实POSIX 和OS/2最后也是调用了Windows子系统。




GDI在应用程序和图形设备之间,他把应用程序的命令传递给图形设备,并且在传递的之前会将命令解析成图形设备能看懂的命令

例如画一条线,GDI会将命令解析成 画N个点



Windows上只实现了POSIX子系统的1.1版本,而且有很大的限制,可以说POSIX的存在只是为了符合政府采购要求,但是后来有了POSIX子系统的增强版

还有了Windows Service For Unix, 可以将Unix程序转换为Windows的,做了各种这样的事大概都是为了可移植性吧,不过好像也没见到多大的用处。

要写posix程序的话要包含特定的库,不过有强大的windows子系统,谁还有那个闲工夫搞posix?



原创粉丝点击