标签:允许 重要 比较 线程 调用 一个 优点 逻辑地址 环境
what: 操作系统是配置在计算机硬件上的第一层软件,对并对硬件系统的首次扩充。方便计算机使用者使用,因为机器只能识别0,1二进制码。作为用户与计算机硬件系统之间的接口,和作为计算机系统资源的管理者(管理处理器,存储器,I/o设备,文件管理),对计算机资源的抽象。
操作系统最重要的特征有并发,共享,虚拟和异步。并发是最重要的特征。
微内核OS: 提高操作系统的正确性、灵活性、易维护性。多采用基于客户/服务器模式的微内核结构,将OS分为两部分:微内核和多个服务器。
5.1 微内核的特点
1. 足够小的内核
内核是指经过精心设计、能实现现代OS最基本核心功能的部分。微内核并不是一个完整的OS,而只是操作系统中最基本的部分,它通常用于实现与硬件紧密相关的处理、实现一些比较基本的功能、负责客户和服务器之间的通信。
2. 基于客户/服务器模式
将操作系统中最基本的功能放入内核中,把其他绝大部分功能放在微内核外面的一组服务器(进程)中实现。如用于提供对进程进行管理的进程服务器,提供对虚拟存储器管理的虚拟存储器服务器,提供I/O设备管理的I/O设备管理服务器。他们都是被作为进程来实现的,运行在用户态,客户与服务器之间是借助微内核提供的消息传递机制来实现信息交互的
说明:可以看到客户进程与服务器是通过微内核来完成通信的。
3. 应用"机制与策略分离"原理
所谓机制,是指实现某一功能的具体执行结构,而策略,则是在机制的基础上,借助于某些参数或算法来实现该功能的优化,或达到不同的功能目标。通常,机制处于一个系统的基层,而策略则处于系统的高层。在微内核系统中,机制通常放在OS的微内核中。
4. 采用面向对象技术
利用面向对象技术的抽象和隐蔽原则来控制系统的复杂性,利用对象、封装、继承等概念来确保操作系统的正确性、可靠性、易修改性等。
5.2 微内核的基本功能
1. 进程(线程)管理
为实现进程(线程)调度功能,必须在进程管理中设置一个或多个进程(线程)优先级队列,能将指定优先级进程(线程)从所在队列中取出,并将其投入执行。由于这部分属于调度功能的机制部分,应将它放入微内核中。而如何确定每类用户进程的优先级,以及如何修改他们的优先级,都是属于策略问题,可将他们放在微内核外的进程管理服务器中。由于进程之间的通信功能是微内核OS最基本的功能,因此几乎所有的微内核OS都将进程通信功能放在微内核中,此外,还将进程的切换、线程的调度、以及处理机之间的同步功能也放入微内核中。
2. 低级存储器管理
在微内核中,配置了最基本的低级存储器管理机制。如用于将用户控件的逻辑地址变换Wie内存空间的物理地址的页表机制和地址变换机制,这部分是依赖于机器的,因此放入微内核汇中,而采取何种页面算法、采用何种内存分配和回收策略都是具体的策略,放在微内核外的存储器管理服务器中去实现。
3. 中断和陷入处理
微内核可以捕获所发生的中断和陷入事件,并进行相应的前期处理。如进行中断现场保护,识别中断和陷入的类型,然后将有关事件的信息转化成消息后,把它发送给相关的服务器。有服务器根据中断和陷入的类型,调用相应的处理程序来进行后期处理。
5.3 微内核存在的问题
微内核OS采用客户/服务器模式,有许多优点,但是也存在一些缺点,如客户进程与服务进程,服务进程与服务进程通信时,都需要经过微内核,会存在多次用户/内核模式及上下文切换,这使得开销较大。
进程是操作系统分配资源的基本单位,线程是独立运行和独立调度的基本单位,线程不占据资源,一个进程的多个线程共享该进程的资源。
标签:允许 重要 比较 线程 调用 一个 优点 逻辑地址 环境
原文地址:http://www.cnblogs.com/fanhaha/p/7261178.html