分布式系统论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

论文

题目:分布式和分布式操作系统简介学院:计算机科学与工程学院

专业:计算机科学与技术

班级: 计算机科学与技术师范(1)班学生姓名:

学号:

指导教师:

摘要:

分布式操作系统中多任务的分配以及任务调度、负载均衡是实现的难点,其中进程和线程是红丝线任务执行和分配最重要的概念之一。如何在分布式系统中实现进程与线程的创建以及信息之间的交互是分布式系统设计至关重要的部分。通过对传统操作系统中进程和线程的实现机理以及比较,进一步论述在分布式操作系统中,如何实现多任务分配,如何在不同主机的进程间进行分配以及进行负载均衡。

关键字:

分布式操作系统;网络操作系统;进程;多任务调度;线程;负载均衡。

一、引言

分布式系统是计算机发展的一个大趋势,目前云计算、云存储的概念已经逐渐落地,实际上云计算就是分布式系统的一个实现。在分布式系统中,进程(在很多操作系统中也称为任务)是十分重要的概念,是实现任务调度与执行的关键,而线程是轻量级的进程,在响应速度与执行效率上相比进程有很大的改进。在分布式系统中如何实现多任务执行,如何在分布的主机以及cpu上进行创建和分配,涉及到调度策略。另外,如何实现分布式系统中进程以及线程间的通信,也是需要重点考虑的问题。并且关乎分布式系统执行的效率和效果。

我在对分布式操作系统的研究和学习中发现,许多传统单击操作操作系统的概念实际上是可以沿用的,但是由于分布式系统自身的特性决定了,这些概念的复用是需要根据分布式系统进行调整和完善的。希望通过本文对传统进程与线程的简单分析和比较,从而探讨如何在分布式环境中对多任务进行负载均衡。二、分布式系统概述

计算机系统正在经历着一场革命。从1945年现代计算机时代开始到1985年前后,计算机是庞大而又昂贵的。即使是微型机,通常也每台价值数万美元。因此,大多数机构只有少数的几台计算机,同时,由于缺乏一种把它们连接起来的方法,所以这些计算机只能相互独立地运行。

但是,从20世纪80年代中期开始,技术上的两大进步开始改变这种状况。首先是功能更强的微处理机的开发,开始出现了8位的机型,随后不久16位,32位,甚至64位的CPU也开始普及。其中许多机器具有较大主机(即,大型机)的计算能力,但价格却只是它的几分之一。

三、分布式系统特点

分布式操作系统是在比单机复杂的多机环境下得到实现的,操作系统在进行任何一项任务的始终都要依赖于通信软件模块,故而分布式操作系统具有区别于单机操作系统的下列显著特点:

(1)具有干预互连的各处理机之间交互关系的责任。分布式操作系统必须保证在不同处理机上执行的进程彼此互不干扰,并严格同步,以及保证避免或妥善解决各处理机对某些资源的竞争和引起的死锁等问题。

(2)分布式操作系统的控制结构是分布式的。分布式操作系统一般由内核和实用程序组成。内核主要负责处理各种中断、通信和调度实用程序。而实用程序有多个,它们分别完成一部分的系统功能。由于分布计算机系统由多台计算机组成,分布式操作系统的内核就必须有多个,每台计算机上都应有一个内核,而每台计算机上所配置的实用程序可以各不相同,且可以以多副本形式分布于不同的计算机上。内核一般由基本部分和外加部分组成。5'bDH部分主要用来控制外部设备,它根据各台计算机所配置的外部设备而定。各台计算机的内核的基本部分是相同的,它运行于硬件之上,是一种具有有限功能的较小的操作系统内核,主要作用是让系统管理员以它为基础建立操作系统,其主要功能为进程通信、低级进程管理、低级存储管理、输入/输出管理等。

(3)分布式操作系统按其逻辑功能可分为全局操作系统和局部操作系统两部分。由于分布式操作系统把资源看成统一的整体来处理,系统基于单一策略来控制和管理,因而在操作系统的设计上要体现出各处理机间的协调一致,整体地去分配任务及公共事务、特殊事务(意外处理、错误捕获等),即把整体性分散于内核和管理程序之中,这一部分称为全局操作系统。但在每台计算机上的操作系统又有独立于其他机器的管理功能,这一部分称之为局部操作系统。它主要负责属于本机独立运行的基本管理功能以及本机与其他机器的同步通信、消息发送的事务管理。这样的划分是为了使各处理机在运行中既具有独立性和一定的自主权,又能保持系统中各机的步调一致并能良好地合作。

(4)分布式操作系统的基本调度单位不是一般系统中的进程,而是一种任务队列,即多个处理机上的并发进程的集合。多处理机系统以任务级并行为特征。同一任务队列的各进程可分布在不同的处理机上并行地执行,同一处理机也可执行多个不同的任务队列的进程。任务队列的各进程或各个任务队列之间都有很复杂的内在联系。

(5)分布式操作系统的组成情况与系统的耦合方式关系很大。紧耦合的分布式系统中,系统资源的耦合程度很高,需使用专门的各种软件/硬件机制来解决冲突和竞争等问题,在松耦合的分布式系统中,各处理机配有自己的本地资源,系统的重要问题是机问的同步与通信的管理。

(6)分布式操作系统为加强各处理机间的动态协作,借鉴了网络操作系统中

的消息传送协议技术,具体采取什么协议则根据系统的互连模式而定。

四、分布式操作系统和网络操作系统

(一)、分布式操作系统

分布式操作系统,用于通信和资源共享的计算机网络中,除了共享文件系统外,用户知道网络中其他计算机的存在,每台计算机拥有自己的操作系统,整个网络并没有整体的协调。网络操作系统仅仅维护了全局文件系统和用户的帐户信息,并要求客尸和服务器间遵循一致的通信协议而已。对于应用于集群的分布式操作系统来说,试图让用户感觉不到多台计算机的存在,并提供较高的计算性能和可用性。因此分布式操作系统(DistributedOperatingSystem)的设计要充分地体现系统的透明性、可靠性和并行性。

透明性让用户感觉到面对的集群就和一台计算机一样是分布式系统设计首要解决的问题,也就是设计透明性的系统,包括:①位置透明性,使用户不需要关心所使用的系统资源的具体位置是在哪台机器上:②迁移透明性,使得系统资源可以在系统内任意移动却不影响它们在全局名字空间的名字;③复制透明性,允许系统在多个节点上复制使用频率很高的文件并自动维护文件的一致性,而用户仅感觉到复制文件的存在:④并发透明性,使得多个用户同时并发请求某资源时可能感觉到系统的迟钝但感觉不到其他用户的存在;⑤并行透明性,使得单个任务被系统并行处理,但用户仅仅感觉到系统的响应比较快而不需要知道并行的存在。

可靠性设计分布式系统的原因之一是因为它能比单处理机系统更加可靠。当某个机器故障停机时,其他机器能接替它的工作。可靠性实际包含了:①可用性(Availability),一般通过冗余关键性的软硬件宋实现,当其中一个失效时,其他的部件能接替工作:②安全性,分布式系统的安全性问题比单处理机系统远为复杂,防止非法使用文件和其他资源的任务更为艰巨。2.2.2.3.并行性提供高性能的计算能力是设计分布式系统的一个初衷,但这个目标的达成受到很多的限制,比如通信较慢使得进程的全局调度困难重重。为了改善通信延迟的影响,通常要减少消息的数目,但为了提高性能,应该让一个任务并行地运行在多个处理器上,这是一对矛盾。所以,为了提高性能,分布式系统的调度要复杂得多。对紧耦合的多处理机系统,包括让操作系统内核运行于一个专用处理机上,而其他

相关文档
最新文档