分布式操作系统的特点
分布式操作系统是在比单机复杂的多机环境下得到实现的,操作系统在进行任何一项任务的始终都要依赖于通信软件模块,故而分布式操作系统具有区别于单机操作系统的下列显著特点:
(1)具有干预互连的各处理机之间交互关系的责任。分布式操作系统必须保证在不同处理机上执行的进程彼此互不干扰,并严格同步,以及保证避免或妥善解决各处理机对某些资源的竞争和引起的死锁等问题。
(2)分布式操作系统的控制结构是分布式的。分布式操作系统一般由内核和实用程序组成。内核主要负责处理各种中断、通信和调度实用程序。而实用程序有多个,它们分别完成一部分的系统功能。由于分布计算机系统由多台计算机组成,分布式操作系统的内核就必须有多个,每台计算机上都应有一个内核,而每台计算机上所配置的实用程序可以各不相同,且可以以多副本形式分布于不同的计算机上。内核一般由基本部分和外加部分组成。外加部分主要用来控制外部设备,它根据各台计算机所配置的外部设备而定。各台计算机的内核的基本部分是相同的,它运行于硬件之上,是一种具有有限功能的较小的操作系统内核,主要用于让系统管理员以它为基础建立操作系统,其主要功能为进程通信、低级进程管理、低级存储管理、输入/输出管理等。
(3)分布式操作系统按其逻辑功能可分为全局操作系统和局部操作系统两部分。由于分布式操作系统把资源看成统一的整体来处理,系统基于单一策略来控制和管理,因而在操作系统的设计上要体现出各处理机间的协调一致,整体地去分配任务及公共事务、特殊事务(意外处理、错误捕获等),即把整体性分散于内核和管理程序之中,这一部分称为全局操作系统。但在每台计算机上的操作系统又有独立于其它机器的管理功能,这一部分称之为局部操作系统。它主要负责属于本机独立运行的基本管理功能以及本机与其它机器的同步通信、消息发送的事务管理。这样的划分是为了使各处理机在运行中既具有独立性和一定的自主权,又能保持系统中各机的步调一致并能良好地合作。
(4)分布式操作系统的基本调度单位不是一般系统中的进程,而是一种任务队列,即多个处理机上的并发进程的集合。多处理机系统以任务级并行为特征。同一任务队列的各进程可分布在不同的处理机上并行地执行,同一处理机也可执行多个不同的任务队列的进程。任务队列的各进程或各个任务队列之间都有很复杂的内在联系。
(5)分布式操作系统的组成情况与系统的耦合方式关系很大。紧耦合的分布式系统中,系统资源的耦合程度很高,需使用专门的各种软件/硬件机制来解决冲突和竞争等问题,在松耦合的分布式系统中,各处理机配有自己的本地资源,系统的重要问题是机间的同步与通信的管理。
(6)分布式操作系统为加强各处理机间的动态协作,借鉴了网络操作系统中的消息传送协议技术,具体采取什么协议则根据系统的互连模式而定。