现代操作系统的特征
不论是批处理操作系统、分时操作系统、实时操作系统等这些不同类型的操作系统有着自己的特色,但是他们都具有操作系统的四个基本特征:并发性、共享性、虚拟和异步性。其中,并发性是操作系统最重要的特征。
今天,我们不讨论操作系统的四个基本特征,专门讨论一下现代操作系统的特征。
促使现代操作系统形成的三方面主要原因
- 硬件技术的发展
CPU本身速度的大幅提升
多处理器系统
高速网络连接
大容量的存储设备。
- 新应用的出现
多媒体应用
互联网的和Web访问
客户/服务器计算等应用
- 安全问题
互联网的访问增加了潜在的威胁和更加复杂的攻击,比如病毒、蠕虫和黑客技术等。
现代操作系统特征
基于以上原因,不仅仅需要修改和增强现有的操作系统体系结构,而且需要有新的操作系统组织方法。现代操作系统有很多不同的方法和设计要素,大致可以分为以下几类:
微内核体系结构
多线程
对称多处理
分布式操作系统
面向对象设计
微内核体系结构
传统的单体内核结构如下图示:
单体内核
在单体内核中,操作系统提供的功能有该内核提供,该内核包括调度、文件系统、网络、设备驱动、存储管理等功能。典型情况下,该内核实作为一个进程实现的,所有应用都共享相同的地址空间。
后来在此基础上,对内核作了分离,将它分为基础核心和核心功能两部分,如下图示:
可扩展内核
我们把这种结构称为可扩展内核结构。 在这种结构下,将内核分为基础核心和核心功能。基础核心包含公共必须的基本功能集合,供上层功能模块调用。
在可扩展内核结构的基础上发展出微内核操作系统。其结构示意如下:
微内核结构示意图
微内核结构基于客户/服务器模型。微内核只给内核分配最基本的功能,包括地址空间、进程通信和基本的调度。其他的操作系统服务都是由运行在用户态下且与其他应用程序类似的进程提供的,这些进程可根据特定的应用和环境需求定制,也把这些进程称为服务器。微内核结构可以使系统结构设计更加简单,灵活,很适用于分布是环境。
但是,微内核结构由于采用客户/服务器模式,在完成一次客户对OS提出的服务请求时,需要利用消息实现多次交互和进行用户/内核模式及上下文的多次切换,导致其效率比传统的OS效率略低。
多线程
多线程技术是指把执行一个应用程序的进程划分成可以同时运行的多个线程,以达到提高执行的并行效率的目的。
多线程对执行许多本质上独立、不需要串行处理的应用程序非常有用。
多对称处理
它不仅仅指硬件结构,也反映了该硬件体系结构的操作系统行为。对称多处理器系统可调度进程或线程到所有的处理器上运行。对称多处理器结构比单处理器结构具有更多的潜在优势。
当然,这些优势只是潜在的,如果要发挥出来, 操作系统必须提供发掘队成多处理器计算机系统中并行性的工具和功能。多处理器对于用户而言是透明的,操作系统负责多个处理器中调度线程或者进程,并且负责处理器间的同步。
分布式操作系统
分布是操作系统给用户的错觉是多机系统共享一个单独的内存空间、外存空间及其他的统一存储措施。比如Hadoop的文件系统HDFS。
面向对象设计
面向对象设计的原理用于给小内核增加模块化的扩展。在操作系统层面,基于对象的结构使程序员可以定制操作系统,而不会破坏操作系统的完整性。面向对象技术使得分布式工具和分布式操作系统开发变得更容易。
总结
本文对现代操作系统的一些特征进行了简单分析、比较。这些特征并不是所有现代操作系统都具有,而是某操作系统具有其中一项或者多项。在计算机体系结构没有发生巨大变化之前,这写特点也将是现在或者以后操作系统发展的方向。