阅读:1478回复:0
操作系统与应用程序
操作系统与应用程序
在多数的现代操作系统中,应用程序和操作系统是相互隔离的。操作系统的核心代码运行在特权模式下,即内核模式。而应用程序运行在非特权模式下,即用户模式。操作系统和应用程序的关系类似于服务器和客户端的关系,如图: 内核模式 用户模式 在服务器和客户端的关系中,多个客户端对应一个服务器。各个客户端会并发的向服务器发起请求,服务器会判断请求的合理性,从而完成请求或者拒绝请求。 操作系统和应用程序的关系类似这种关系。在操作系统上,会同时运行多个应用程序。每个应用程序会想操作系统提出请求,例如,分配回收内存、读写文件、操作硬件等。优秀的操作系统会调度好每一个应用程序,并根据请求快速地做出反应,即拥有很大的吞吐能力。并且操作系统会根据请求,做出合法性的判断,拒绝一些危险的操作,如:空指针读写操作等。 对计算机任何硬件设备的访问,例如,访问设备的映射内存、物理端口、中断等,必须通过操作系统的调用。早期的DOS或者Win 9X的很多程序,它们需要直接访问硬件,(例如,某些游戏需要对某段显卡内存操作,或者某些磁盘软件需要直接改写物理扇区等),因此这些软件是无法在Windows2000及以后版本的Windows上正确运行的。 |
|