已阅读5页,还剩60页未读, 继续免费阅读
(计算机软件与理论专业论文)作业管理系统nqs的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
作业管理系统n q s 的研究 摘要 在科学研究、商业信息处理等许多领域,都要进行高性能计算。作业管 理系统是组成高性能计算环境的关键部分,它提供了作业提交、调度、执行 及控制的新机制,可以充分利用网络中的各种资源建立一种高性能和高可靠 性的分布式计算环境。对作业管理系统进行研究是一件很有意义的工作。 本文较深入的研究了典型的作业管理系统n q s ,其日的是为我们开发新 型的作业管理系统作一些准备工作。本文的研究工作和研究成果主要包括以 下内容。 分析了为什么要引入和发展作业管理系统、作业管理系统应该包含的基 本功能要素。 较深入的分析了n q s ,包括n q s 的作业管理功能、负载共享、系统结 构等。通过分析指出了n q s 在作业管理功能方面、负载共享方面、系统结构 方面的不足。 针对n q s 在作业管理功能方面的不足,介绍了笔者参与研究开发的 w o r k c e m e r 作业管理系统,w o r k c e n t e r 是对n q s 的改进和扩充,本文总结 了笔者在实现w o r k c e n t e r 过程中遇到的问题和对这些问题的解决方法。 针对n q s 在负载共享方面的不足提出了一种新的负载共享方法“分布式 公平共享调度”( d f s s - - d i s t r i b u t e d f a i rs h a r es c h e d u l i n g ) ,笔者只做了d f s s 的设计,没有进行编码工作。 针对n q s 在系统结构方面的不足提出了作业管理系统的“功能导向的模 块化系统结构”,这种系统结构为我们设计新型作业管理系统提供了一个蓝 图。 关键字;n q s ,批处理,批处理作业,作业管理系统,请求,队列,负载共 享,作业调度,分布式公平共享调度 作波管理系统n q s 的研究 a b s t r a c t i nt h ed o m a i no f s c i e n c er e s e a r c h c o m m e r c i a li n f o r m 雄o n p r o c e s s i n ga n ds o o n , w en e e dh i g h - p e r f o r m a n c ec o m p u t i n g 了h ej o bm a n a g e m e n ts y s t e m ( j m s ) i s av i t a lp a r to ft h eh i g h p e r f o r m a n c ec o m p u t i n ge n v i r o n m e n t ,i tp r o v i d e sn e w m e c h a n i s m sf o rs u b m i t t i n g ,s c h e d u l i n g ,r u n n i n ga n dc o n t r o l l i n g j o b s ,i tc a nm a k e 受l lu s eo fa l lk i n d so fr e s o u r c e si nt h en e t w o r kt h u sc a l lm a k eak i n do f h i g h - p e r f o r m a n c e a n d h i g h - r e l i a b i l i t y d i s t r i b u t e d c o m p u t i n g e n v i r o n m e n t s t u d y i n g t h ej m si sa m e a n i n g f u lj o b t 燃sa r t i c l es t u d i e st h et y p i c a lj m s n q s i nar a t h e rd e e pl e v e l ,i tm e a n st o d os o m e p r e p a r i n gw o r k 珏d e s i g n i n ga n di m p l e m e n t i n gt h en e w j n i s s 。霹l es t u d y w o r ka n dt h ef r u i t sa r ed e s c r i b e da sf o l l o w s t h i sa r t i c l ep o i n t so u tt h er e a s o n sf o rd e v e l o p i n gt h ej m s ,t h ee l e m e n t a r y f u n c t i o n a le l e m e n t so f t h ej m s 。 张i sa r t m ea n a l y s e st h en q s t h o r o u g h l y ,i n c l u d i n gi t sj o bm a n a g e m e n t f u n c t i o n s ,i t sl o a ds h a r i n ga n di t sa r c h i t e c t u r e t h r o u g ha n a l y z i n g ,i tp o i n t so u tt h e p r o b l e m si nt h ea s p e c t so f t h e j o bm a n a g e m e n tf u n c t i o n s ,t h el o a ds h a r i n ga n dt h e a r c h i t e c t u r eo f t h e n q s , a i m i n ga t t h ep r o b l e m si nn q s j o bm a n a g e m e n tf u n c t i o n s ,t h i sa r t i c l e i n t r o d u c e st h ej m sw o r k c e n t e rw h i c ht h ea u t h o r p a r t i c i p a t e i n d e v e l o p i n g , w o r k c e n t e ri sa ni m p r o v e m e n ta n de n h a n c e m e n to f n q s t h i sa r t i c l ec o n c l u d e s t h ep r o b l e m st h ea u t h o rm e tw i t hd u r i n gh i sd e v e l o p i n ga n dt h ea n s w e r st ot h e s e p r o b l e m s a i m i n ga tt h ep r o b l e m si nn q s l o a ds h a r i n g ,t h i sa r t i c l ep r o p o s e san e w l o a ds h a r i n gm e t h o dc a l l e dd f s s ( d i s t r i b u t e df a i rs h a r es c h e d u l i n g ) 。t h ea u t h o r o n l ym a k e s t h ed e s i g na n dd o e s n td oa n y c o d i n g a b o u ti t 。 a i m i n ga t t h e p r o b l e m s i n n q s a r c h i t e c t u r e ,t h i sa r t i c l ep r o p o s e st h e “f u n c t i o n - o r i e n t e dm o d u l a ra r c h i t e c t u r e ”f o rt h ej m s t h i sa r c h i t e c t u r ec a ns e r 阳 a sa b l u e p r i n t f o ru st od e s i g nt h en e wj m s s k e yw o r d s :n q s ,b a t c hp r o c e s s i n g ,b a t c hj o b ,j o bm a n a g e m e n ts y s t e m ,r e q u e s t , q u e u e ,l o a ds h a r i n g ,j o bs c h e d u l i n g ,d i s t r i b u t e df a i rs h a r es c h e d u l i n g 2 作业管理系统n q s 的研究 1 1 研究背景 第一章绪论 作业管理系统是建立在操作系统之上的一类系统软件,它的主要作用是 强化操作系统的作业管理功能,提供作业提交、调度、执行及控制的新机制, 更加有效地利用系统资源、平衡网络负载、提高系统整体性能。 早期的作业管理系统是由u n i x 操作系统的作业管理功能发展而来的。 u n i x 操作系统提供了有限的作业管理功能,当大量的实际应用要依赖于u n i x 时,就产生了对u n i x 及p o s i x 标准进行扩展,使之能更有效地支持批处理 作业管理的要求。在这种要求下,产生了早期的批处理队列系统( b a t c h q u e u i n gs y s t e m ) ,它的基本思想是不修改u n i x 的核心,在u n i x 之上再建立 一个子系统,用户将作业提交给该子系统,由它对作业进行调度和执行并负 责系统资源的有效利用及作业控制。 批处理队列系统的一个代表是n q s ( n e t w o r kq u e u i n gs y s t e m ) 。n q s 出现 后,得到了广泛的应用,并被移植到不同的系统平台( 包括各种u n i x 系统、 l i n u x 及w i n d o w sn t 系统) ,成为后来作业管理系统研究开发的基础。i e e e 已经将n q s 确立为p o s i x 标准的一部分,即p o s i x1 0 0 3 2 d ,“b a t c hq u e u i n g e x t e n s i o n sf o rp o r t a b l e o p e r a t i n gs y s t e m ” 目前已经存在几十种作业管理系统,这些系统在目标、结构、功能和实 现上各有差异,从不同侧面反映了作业管理系统所应具备的特性。但是,这 些系统都在不同程度了遵从p o s l x1 0 0 3 2 d 标准,有的还以n q s 作为它的一 个部件。可见,n q s 在作业管理系统中扮演着很重要的角色,理解n q s 是 理解所有这些作业管理系统的关键。为此,本文将对n q s 进行全面的分析和 研究。通过研究n q s ,我们将能更深入的理解现有的作业管理系统、更加容 易的对现有作业管理系统进行改造和扩充以满足实际需求、更好的设计和实 现新型的作业管理系统等。 1 2 本文的组织结构 全文按如下章节组织。 第二章:本章回顾了作业管理系统的发展,介绍了传统批处理操作系统、u n i x 作业管理蔑统n q s 的研究 操作系统、w i n d o w s 操作系统、o p e n v m s 操作系统中的作业管理, 分绍了专门懿 棼整管理系统较馋,撵交了终监管瑾系统应该包含携 蒸本功能要素。 第三章;本章较深入的分析了n q s ,包括n q s 的怍业管理功能、负载共享、 累统结构等。邋过分辑指出了n q s 在撂娥管理功裁方瑟、受载共事 穷嚣、系统缝捣方面酶不怒。针对n q s 程作监管理功熊方面的不楚 引出了w o r k c e n t e r 作业管瓒系统;针对n q s 在负载熬享方面的不 越引出了一种新的负载共攀方法“分布式公平共享调度”( d f s s ) ; 赞瓣n q s 在系统结稳方嚣熬不是弓| 窭了弦篷管理系绞熬“袭麓导囱 的模块化系统络构”。 第四章:本章对w o r k c e n t e r 作业管理系统进行了介绍,包括其特色、体系结 构及笔者在开发过程中遇到麴闽题和对这些阉题的勰决方法。 第五耄:零拳详缅论述了“分毒式公警共享谲度”( d f s s ) ,包括英运行枕螽 和设计。 第六章:本章详细论述了作业管理系统的“功能导向的模块化系统结构”,将 嚣数警理系统翻分尧五巾予系统,谨臻了每令予系统戆凌耱蓬曩积 藏与其它子系统的耦合关系。 作业管理莱统n o s 的研究 第二章作业管理系统概述 本章吲顾了作业管理系统的发展,介绍了传统批处理操作系统、u n i x 揉 作系统、w i n d o w s 操 乍系统、o p e n v m s 操 乍系统中豹作业管瑗,介绍了专 门静俸监管理系统较传,摇出了作觳管毽系统应该霞含的基零功能要素。 2 1 传统批处理操作系统中的作业管理 在传绞的攒处理操作系统中,用户利用作业羧制语言j c l 麓成作业说明 书,然后将作业( 在以下的论述中,如果没有特别说明,“作业”是指“批处 理作业”,即我们研究的对象是可以以批处理方式处理豹作业。) 提交给系统, 由系襞撩熙 睾翌说赘书数禽令逐螽黪释撬嚣,躅户浚畜壹接与 馨鼗交互麓憝 力。其工作方式如下所述。 ( 1 ) 用户将作业交给系统操作员。用户需要交付的数据包括:源程序、运行 瓣鹣数攘、作业控锻语富书写魏撵监控裁、浣麓舄。 ( 2 7 系统搽作员将许多嗣户的作监缀成一攒律遭之后输天到计簿褫中,在系 统中形成一个自动转接的连续的作业流。操作员用预输入命令启动系统 中的s p o o l i n g 颞输入程序,就可把作业流中的作业信息移放到输入井 孛,簿德系统懿谖发。 ( 3 ) 系统瞧渤、依次执行每个作业。绦作系统根据允许并行工佟的道数和一 定算法从“输入井”选取可以装入主存储器的作业,然眉开始执行该作 业。傍灶调度程序从“输入并”选取终韭的必罄条传是:鬃绕现有麴尚 未分醚瓣资源可敛满足被遥终数鹣资源要求。警现有资源露以满足“输 入井”中多个作业浠求时,选取哪个作业取决于调度算法。操作系统选 定一个作业后,跫按以下方式控制其执行的。 - 按蠲户提交豹撂渡控裁说爨书控割终韭熬疑舒。 _ 一个作韭步的工作往往由多个进程的合傺采完成。 一个作业步的工作完成后,继续下一个作业步的作业,邕至作业执 行结康。 ( 4 搡俸赞将律盈结条交绘溺户。 下面怒个作业控制说明书的例子。 $ z o b1 1 5 # i s 9 e c :标识锋业主。两记雅等的 作业营理豢统n q s 的研究 s f o r t r , _ i c v:装载f 。r ! r 洲编译器 s o u f c op r o g r a mc a r d s :读a 鼹 r 酶懑程亭 s l o 4 d:装羲编译好盼程序 $ r u k:运行程枣 d a t ac r d s $ e 0 l :读a 适行繇序辫需的输八数据 :馋韭结襄 2 2u n i x 系统中的作业管理 由于u n i x 主枫通常昼夜运行,在大多数的菲工作封寸阔系统资源无法彳寻到 鸯效零l 霜,疆鼗产生了“在馥君菜拿辩麦氮行臻效”、“在资滋褥交潢是靛 情况下执行作业”、“按某种时间周期有规律她执行作业”等作业管理的思 想,并将邋些想法用a t ,b a t c h ,c r o n 三个命令实现。 敷会令建来将单个佟避调度到迟嚣浆确定野寡8 撬学;b a t c h 佘令秘越务令 菲常福钕,所不两静楚b a t c h 命令不灞要瘸户穗怒作、监执行时溺,而崮系统 决定作业何时执行,并限制只有一或两个b a t c h 作业可以同时避行:虽然使 用a t 和b a t c h 命令对次性执行的经务已非常有朋,但对需要熬复周期性执 嚣懿餐务瑟难淤整理,u n i x 藏提安了c r o n 程;莩亲瓣凌这个阕题,c r o n 采瑶一 种更灵活的方式重复调艘作业,对作业进行排队镣蠖。 u n i x 祭统对作业管理提供了有限的支持,只能满足用户对作业管理的最 基本要求,它掰提供盼三条念令仍程簌以下豹不足:越命令一舅将作业投入 运幸亍裁会交繇“忘记”该作盈,它秃法对佟监豹挽行遘程进行控制,雳户只 能在作业究成后,查看律业的执行结果;a t 系列命令并不关心作业运行时系 统的负载情况,因此,洳有几个大型的作业同时执行时,可能导致系统整体 效率投隽低下;c r o a a t 灵轻在一台u n i x 主敬主运行,瓣 :霹终环凌它褰】攫本 无能魏力。 2 3w i n d o w sn t 系统中的作业管理 w i n d o w sn t 也提供简单的作业管理功能。在w i n d o w s n t 中,同样有一 个a t 命令,与u n i xa t 命令功能大致相同,还有一个s c h e d u l e 系统服务程序, 耀当于u n i xc r o n 守护避程。在w i n d o w sn t5 0 申,还提出了穆业对象( j o b o b j e c t ) 这个概念,它将一组进程作为个单元进行管理,作鼗对象是可命名 的、具有安金属性的、可共享的对象,它控制了与它相关的所有进程的属性, 如进程工佟窑间、进程优先级、作业执行时间等。在作业对象上进行的操作 作业管理系统n q s 的艰f 究 影响所有与它相关的进程。作业对象还记录与之相关的所有进程的基本记帐 信息,如用户执行时间、核心执行时间、全部进程数等。与作业对象相关的 系统a p i 也包括在w i n d o w sn t5 0 中,这些a p i 可以直接供作业管理系统 调用。 2 4o p e n v m s 系统中的作业管理 在o p e n v m s 中,批处理作业又叫批量作业,批量作业是非交互进程。 因为批量作业在自己的进程中执行,所以可以有两个或更多的进程同时做不 同的事情。例如,可以使用批量作业来: - 在系统以批量模式执行程序或命令过程的同时,交互地执行任务。 _ 运行需要长时间执行的命令过程。 _ 在几小时后执行命令过程或程序。 _ 在低优先级运行某些程序( 例如,如果程序使用不成比例数量的系统资 源) 。 o p e n v m s 系统为操作批量作业提供了丰富的功能。下面就详细介绍一 下o p e n v m s 如何处理批量作业。 提交批量作业 提交批量作业时,系统使用用户的帐户和进程特征建立个分离进程。 系统从该进程运行此作业,并且当作业完成时删除这个进程。系统也执行系 统注册命令过程( s y l o g i n c o m ) 和用户的注册命令过程( l o g i n c o m ) , 然后执行在批量作业中的命令过程。当这些过程执行时,输出将写入日志文 件。当批量作业完成时,可以打印这个日志文件,或者把它保存在用户的一 个目录中。 要按批量模式运行作业,就可输入d c l 命令( d i g i t a l 命令语言d c l 是一组类英语指令,告诉操作系统执行特定的操作。d c l 为用户提供2 0 0 多 个命令和函数,使用它们可与操作系统进行沟通以完成计算任务。) s u b m i t 把作业提交到一个批队列( 一个等待执行的批量作业列表) 。当提交作业时, 它被指引到默认批队列s y s $ b a t c h ,把它附加到等待执行的作业队列的末 端。当前面的作业完成时,就执行这个作业。在o p e n v m s 系统中,可以同 时执行批量作业的数目由系统管理员在建立这个批队列时指定。按照默认, s u b m i t 命令使用文件类型c o m 。 在以下例子中,命令把j o b l c o m 放入s y s $ b a t c h 。 作业管理系统n q s 的研究 萝s u b m l 7 。l o b l l o bj o b l :q u e u es y s s b a t r 7 t , e n t :y6 5 1 s t a r t e do ds y s $ b a t c h ) 系统显示作业名、包含该作业的队列和为该作业分配的项号。在把作业 提交到批队列之后,用户接收到这个d c l 提示。如果需要在任何d c l 命令 中引用批量作业,就使用作业的项号。注意,如果在批量作业中提交多个过 程,那么当任何过程带出错或致命的( 严重的) 系统消息退出时,该批量作业 将终止。 提交批量作业时可以为其指定执行特征。例如工作区默认、工作区范围、 工作区大小、作业调度优先级和c p u 时间限制等,具体的有: ( 1 ) 指定一个时间,作业保持在批队列中直到指定时间,在这个时间之后批 量作业才可以执行。 ( 2 ) 指定批量作业名,如果不指定,作业名默认为在作业中的第一个( 或只有) 命令过程的文件名。 ( 3 ) 指定一个消息字符串,允许用户把作业信息传达给操作员或系统管理员。 ( 4 ) 请求通知作业完成,当批量作业完成执行时,系统发送条消息到用户 的终端。 ( 5 ) 传递参数给批量作业。 ( 6 ) 保存批量作业日志文件。 ( 7 ) 把批量作业发送到不是s y s $ b a t c h 的队列,也可以执行在远程节点上 的命令过程。 ( 8 ) 在执行作业时如果系统失败允许重新启动作业。 ( 9 ) 在完成之后仍然把批量作业保持在队列中。 批量作业的输出 系统每分钟一次把批量作业的输出写入日志文件。用户也可以指定不同 的时间间隔。按照默认,日志文件与在批量作业中的第一个命令过程同名, 并且文件类型为l o g 。 因为批量作业是一个以用户名注册的进程,并且执行用户的注册命令过 程,因此批量作业的输出包括注册命令过程的内容。其输出也包括写入批量 作业同志文件的任何东西( 命令过程输出、出错消息,等等) 以及完整的注 销消息。用户也可以阻止把注册命令过程写入批量日志文件。 批量作业日志文件包括s y s $ o u t p u t 和s y s $ e r r o r 的所有输出。按 照默认,它也包括在命令过程中执行的所有命令行,也可以阻止打印命令行。 用户可以选择为每个命令行加上时间戳,这样就可以知道每个命令执行的精 作业管理系统n q s 的研究 确时间。作业完成时,系统把作业终止信息( 使用长格式的系统注销消息) 写 入日志文件。 批量作业不能成功完成时,可以检查日志文件确定命令过程失败的位置 和引起失败的出错状态。 o 更改批量作业的特征 在作业提交到队列之后但在作业开始执行之前,可以更改与作业相关的 特征,具体的有: ( 1 ) 延迟处理作业,使用a f t e r 限定词指定一个时间,在这个时间之后作 业才可以执行,使用小o l d 限定词保持作业,直到明确释放它。 ( 2 )释放作业,使用n o h o l d 或船l e a s e 限定词释放用h o l d 或a f t e r 限定词提交的作业。 ( 3 ) 把作业发送给不同队列。 ( 4 ) 更改执行特征,例如工作区默认、工作区范围、工作区大小、作业调度 优先级和c p u 时间限制。 ( 5 ) 更改传递给作业的参数。 锄删除和停止批量作业 用户可以在执行之前或期间删除批量作业。要删除批队列中暂挂或已经 执行的项目,使用d e l e t e e n t r y 命令。用户需要有特殊的特权才能删除 不是自己提交的作业。当作业因d e l e t e 厄n t r y 命令而终止时,其日志文 件既不打印,也不从用户的目录删除。 使用d e l e t e e n t r y 命令终止作业时,它被处理为一个异常终止,因 为操作系统的正常作业终止活动是优先的。结果,批量作业记录不包含概述 作业时间和会计信息的标准注销消息。然而,因显式的e x i t 命令或s t o p 命令,或者潜在执行这些命令( 作为当前o n 条件的结果) 而导致的终止, 被认为是正常终止。正常终止后操作系统执行适当的停止和会计过程。 重新启动批量作业 批量作业执行时如果系统失败,作业就不能完成。系统恢复并且队列重 新启动时,用户的作业异常结束并且执行在队列中的下一个作业。然而,提 交批量作业时指定r e s t a r t 限定词,可以指出如果系统在作业完成之前失 败,系统应该重新执行这个作业。除在系统失败之后重新启动作业之外,也 可以在明确停止作业之后重新启动作业。 按照默认,批量作业从第一行开始重新执行。用户也可以指定不同的重 新启动点。 作业管理系统n q s 的研究 下面这个例子中展示的命令停止在s y s $ b a t c h 之上的作业2 1 2 ,并且 把它重新排队到s y s $ b a t c h 。 $ s t o f o u e u e r e q u e u e t h t r y = 2 1 2s r s $ b t c h 要输入这个命令,必须已使用s u b m i t 命令的限定词r e s t a r t 提交了 作业2 1 2 。当批量作业第二次执行时,系统使用全局符号b a t c l 4 5 r e s t a r t 确定从哪里开始执行这个作业。 2 5 专门的作业管理系统软件 从上面对传统批处理操作系统、u n i x 操作系统、w i n d o w sn t 操作系统、 o p e n v m s 操作系统中作业管理功能的介绍可以看出,这些操作系统对作业 管理的支持相当有限,比如,它们不能很好的支持网络环境,不能在网络主 机间进行作业负载共享;它们的作业类型单一,不支持作业之间的复杂的依 赖关系;对作业的执行没有适当的调度规则,作业的执行可能给交互用户造 成较大的影响;作业的定义和控制比较的复杂等。它们适用于对作业管理功 能要求不太高的场合,在一些更复杂的场合下,比如在科学研究、商业信息 处理等需要高性能计算的领域,就需要专门的作业管理系统软件来进行作业 管理。近年来,需求的驱动使作业管理系统得到了快速的发展。 分析总结上面介绍的各操作系统提供的作业管理功能,并结合现实情况, 可以得出以下结论:一个比较完善的作业管理系统应该至少包含以下功能要 素:作业的提交( 本地提交和远程提交) ;作业运行状态的监视( 作业的标准输 出、标准错误输出,作业是否已经开始运行、是否运行结束等) :作业运行过 程的控制( 保持、释放、删除等) :故障恢复( 设置检查点等) ;多个作业运行关 系的协调( 同步和互斥等诤# 。 专门的作业管理系统软件都包含了上面提到的这些功能要素,并在许多 方面进行了扩充,使它们所提供的功能更加强大了。下面就介绍几种流行的 作业管理系统。 2 6 几种流行的作业管理系统 目前已经出现了几十种作业管理系统,它们在目标、结构、功能和实现 上各有差异,从不同侧面反映了作业管理系统所应具备的特性。n q s 、p b s 、 作业管理系统n q s 的研究 l s f 楚当令颞其代袭蛙帮彭蛹力豹足释作监警疆系统。其中n q s 、p b s 怒研 究产晶,l s f 是商啦软件。下面,我们对这几种作业管理系统进行简单介绍 和讨论。 ( 1 ) n q s ( n e t w o r kq u e u i n gs y s t e m ) n q s 是一个批处理队列系统。直接推动发明该系统的实际需求米自 n a s a 。当时u n i x 下已经商个批处理队列系统,叫m d q s ( m u l t i p l e d e v i c eq u e u i n gs y s t e m ) ,是国美国军方b a l l i s t i cr e s e a r c hl a b o r a t o r y 开发 辩。僵它不能满足n a s a 酌黉裳,子是n a s a 与箕宅软佟公司台 笨,开 发出了n q s 。 n q s 的主要特点有:提供对批处理请求和设备请求的全面支持;支 持感层u n i x 核心露实瑗鲍嚣源蔽毒l 功戆,莠海资源限露l 与懿憝理谚求秘 抵处理跌列相关联;支持远糍摊队,能够谯运行n q s 的机器问传送批处 避请求和设备请求;支持队列访问限制( 对每个队列使阁“用户,组”访 问列表) ;可以使用工具方便媳修改n q s 酌配置,但并不需要匿接修改 戳黉文传;支旃系统装态熬;舔佟,殳诲一螽袄器主熬黧产透过两络获淑 另台机器上的n q s 相关信息,但并不需霾登录到远稷的机器上。 ( 2 ) p b s ( p o r t a b l e b a t c hs y s t e m ) p b s 虽拐建n a s a 懿a m e s 磅究孛。嚣发,为了攥貘一个疑满惩雾 捣计算网络需赘的软件包,将剐是满是藏梭能计算的露褥。它力求撼供 对批处理的初始化和调度执杼的控制,允许作业在不同烹机间的路由。 p b s 的独立的调度模块允许系统管理员定义资源和每个作业可使用的数 鬟。谖渡模袭雾蠢各令毒焉瓣撼敬 挈鲎、遮行终监纛系绫资源往瑟状濒 倍息。使用它提供的t c l 、b a c l 、c 三种过程语言,它的调度策略可 以很容易被修改,以适应不同的计算需要和目标,即系统管理员可以方 便她实现自己懿调度策略。 p b s 酶主癸特点有:代碣开放,免费获取:支持季措:戆理、交互式作 业斧口串行、多种并行作业,如m p i 、p v m 、l 】) f 、m p l ;提供t c l 、b a c l 、 c 三种过程语裔,容易实现新的调度策略;提供文件传送功能,f i l e s t a g e 濠程s t a g e o u t ;瀵是p o s i x l 0 0 3 2 d 稼准;支接髂驻寝羧:鑫镄麓 负载平衡;完整的安全认证;提供了完整的a p i ,方便新的调度器的开 发;提供用户影像功能,使p b s 能用于用户不一致的系统中。 ( 3 ) l s f ( l o a ds h a r i n gf a c i l i t y ) 负载共享软搏l s f 是哟嬲拿大平台计算公司研澍与开发豹,寤 作业管理系统n q s 的研咒 t o m a t o 大学开缎髂u t o p i a 系统发震露采。瓤强大弱功缝帮广泛缓髑的 角度看,l s fw 谓是一个成熟的作业管理系统。在使用范围上,l s f 不 仅用于科学研究,也用于企般的事务处理。用户包括摩托罗拉、美潮字 靛鼹( n a s a ) 、体蘩敦毪捉公蠲、逶爱毫气公霉、额缝臻大学等著名金监 与科研团体。功熊上,除了般的作业管理特性外,它还在负载平衡、 系统容错、检谢点操作、谶獠迁移等方面作了很好的努力,并力图使之 囊用化。 l s f 戆主要特点是:支持多静操 繁羝统,包菇w i n d o w s 酣鞠 w i n d o w s2 0 0 0 ;支持检查点操作( 核心级、用户级及应用程序级) 和进程 邋移;具有高可用性,消除单故障点;提供了抢占式调度和关键资源 缳簿,保证紧急终整数调度;霹透过逻馨浚达式毯建幸# 渡蒎蔟蚕,撬供 对依赖性作监的支持:提供了多种调度策略,包括r e s e r v a t i o n 和b a c k f i l l ; 动态的负载平衡与负载监测,负载指标包括节点状态,运行队列长度、 c p u 利甩率、分页速率、登泶鹰户数、空阁对问、可用交换空间、w 震 存贮器、t r a p 瓣录下熬霹魂窆溺;疆窳了究整浆受载熬辜疼:其寄强大 的资源管理功能。 2 。7 小绪 作烛管理的概念最早出现在传统的批处理操作系统中,u n i x 操作系缆和 w i n d o w s 操作系统支持有限的作她管理,o p e n v m s 操作系统提供了较为兜 善懿援露遭管理囊煞。虽然这些搽终系缝夔 冬簸管理功戆跑较楚蕈,餐麸黠 它们的分析可以得出作业管理系统应该包含哪热基本的功能骚素。一个比较 完善的作业管理系统皮该至少包含以下功能要索:作业的提交( 本地提交和远 程提交) ;作业运幸亍状态的监视( 传渡的标准输溅、标准错谈输出,作业愚蠢 已经开始运 亍、是餐运行结束等) ;亍# 鼗运舒过程匏控豢l ( 保持、释放、涮除 等) ;故障恢复( 设置枪查点等) ;多个作业运行关系的协调( 同疹和互斥等) 簿。 在科学研究、商业信息处理等需簧随性能计算的领域,需要专门的作业管耀 系统软转寒遴孬终数繁理。嚣蔻澄经蠢襞了咒卡耱瘁鲎警毽蘩统,其中n q s 、 p b s 、l s f 是当今颇舆代表性和影嫡力的几种伟业管理系统,它们都有各囱 的特点,适合于不同的应用环境。 作业管理系统n q s 的研究 第三章n q s 的分析 本牵较深入黪分专嚣了n q s ,毽据n q s 懿终鳖管理功簸、负载共事、系 统结构等。通过分孝斤指出了n q s 在作、监管理功能方面、负载菇享方面、系统 结构方丽的不足。针对n q s 在作业管理功能方狮的不足引出了笔者参与开发 的w o r k c e n t e r 作业瓣理系统;针对n q s 在负载共享方面的不足引出了一辩 瑟懿受戳共享方法“分布式公乎袋事谲瘦”( d f s s ) ;舞对n q s 在系统结梭方 面的不足引出了作舭管理系统的“功能导向的模块化系统结构”。 w o r k c e n t e r 作业管理系统将程第四章详细介绍;“分布式公平共享调度” ( d f s s ) 姆在第五章谨缨介绍;终渡管理系统静“臻链导囱懿模块位系统缝稳” 蒋在第六章详细介绍。 3 1n q s 的基本概念 3 1 1n o s 在系统中的位置 。任务请求鲢转移 一卜运行结暴的转移 作业管理系统n q s 的研究 蚕3 - 1n q s 在系统孛豹经置 n q s 可以让用户轻易的管理离负载任务,这些任务可能需要很长的时间 来处溅,或者需要糕费大量的系统资源。用户可以选择任务执行的时闻釉顺 序。n q s 霹浚褥任务转送给鼹终上箕毽主狡上鲢n q s 寒黪疆并霾羧楚壤结 果。 圈3 - 1 是n q s 在传统u n i x 系统中的位鬣。从图中可以看出,n q s 在 功能上秘t s s ( t i m e * s h a r i n gs y s t e m ,分时系绞) 并列。e t s s 来处理一般豹 交互式任务或低受载任务,由n q s 专门来妃璐臻户的离负载任务。 3 1 2n o s 中的请求队列模型 n q s 菠嗣“请求,歇秘稹型”来处理任务。溥求是对嗣户瑟完成饪努豹籀 述。队列则是一种任务分类机制和资源管理机制,每个队列都有和它关联的 一组资源。不同类型的请求被提交到不同的队列中由队列来负责处理。图3 2 播述了n q s 中戆这秘“请求,酞列模型”。 # s秣 w s 小任务请求的转送 图3 2n q s 中的请求敬列模型 作此瞬理系统n q s 的研究 3 1 3n q s 中的请求 请求是n q s 的基本处理单位,请求分批处理请求、设备请求、网络请求。 擞处理请求是袄赣子程痔执行盼渍求,这耱谚求透过逡n q s 提交u n i x 的s h e l l 脚本来实现,可以在脚本的注释部分嵌入n q s 稻笑操作信息。批处 理请求一启动,构成请求的进程就形成一个进程组。n q s 用这个进程组的进 程组l d 来管理执行的请求,进程媳l d 在执行请求的删除、镶号发送时使惩。 谤隶绥寒辩透程鳃酴掰窍进程都被疆行结素。 设备请求是指邋过打印机、p l o t t e r 等特殊设备进行处理的请求。这擞请 求不是像批处理请求一样提交s h e l l 脚本,耐是通过提交由设备处理的数据 f 打印辫像等) 来实瑷懿。 秘络请求是指鬻予转送撬鲢瑷请求的结果文件到指定圭枫的请求。鹋络 请求最在批处理请求结束对自动擞成,并提交绘网络队列的。因此,用户无 法做成娜络请求并提交之。 3 1 。4n q s 中的队列 在n q s 中,队列是一种基本的请求分类机制,它将不同属性的请求分成 不露豹榘会。驮残罄黩缲存爱户摅交懿请求,掰蠢操存戆逮浆在适兰兹糖撬 会被执行。向队列提交请求对,如果请求的耩性与队列的瘸髓不一致,请求 将不能提交到队列中。n q s 中有批处理队列、设备队列、管邋队列、网络队 列4 种类型的队列。 熬筵理软弱是擞处理请求傻瘸钓驮弼,它怒n q s 孛最熬零鲍驮弼。懿处 理队列的属性有:资源限制量、队列优先级、可同时执行请求数、n i c e 值、 队列内调度方式、连续调度请求数、重新启动、用户访问控制列表、p i p e o n l y 、 l o a d - b a l a n c e 等。 n q s 中的设备怒一个包括以下构成要素盼综合体:设备名称( 标识此设 备) 、特殊文件( u n i x 的设备特殊文件,女 1 d e v l p 等) 、服务器程序( 处理请求 数据的程序) 。设备队列是设各请求使用的队列。设备队列有队列优先级、可 目嚣执行请求数、鲻户谤运茬翻捌褒、p i p e o n l y 、设备弼表等篪瞧,其中 ;i 四种属性和批处理队刹的相应属性有有相同的含义,设备列袭是设备队列的 特有属性。 管邀歇列是雳慕转送请求的麸裂。提交至戴获刭中鲍潺袋终被转送裂其 作业管理系统n o s 的研究 他队列。转送目标队列既可以是本地主机上的队列,也可以是网络上远程主 机中的队列,向远程主机提交请求时,都是以管道队列为媒介进行提交的。 图3 3 是管道队列的概念模型,图中展示了将管道队列中的请求转送给 远程主机的情形。每个管道队列都有一个“管道客户端”,管道客户端即是图 中的p i p e c l i e n t ,管道客户端负责把管道队列中的请求转送给某个目标队列。 管道客户端比较请求的状态和各目标队列的状态,根据比较结果选择一个或 多个可以运行该请求的目标队列。如果有多个目标队列都可以运行该请求, 管道客户端会根据某种原则选择其中的一个,并将请求转送给该目标队列。 图3 3 管道队列的概念模型 管道队列也有很多属性,其中队列优先级、用户访问控制列表、p i p e o n l y 、 重新启动、l o a d b a l a n c e 五个属性和批处理队列的相应属性有有相同的含义, 管道队列的特有属性有:转送目标队列列表、可同时转送请求数、事先确认、 s t a y w a i t 、服务器程序、透过性等。 网络队列是用来转送执行结果输出文件的队列。该队列是n q s 用来将执 行结果输出文件转送回请求者的队列,使用者无法向该队列直接提交请求。 作般觜理系统n q s 的研究 拯蹙璎请求撬行络柬后,n q s 会鑫动生成转送疑行结采输国文俘豹瓣络请 求,提交给相应转送目标的网络队列。网络队列有队列优凫级、可同时执行 请求数、转送目标主机等属性。其中,队列优先级、可同时执行请求数两个 嚣经稻魏整理蔽残蕊稳疲霾连鸯寮疆霹蕊会叉,转送妥掭主穰楚摇转送交 譬 的主机名。 3 2n q s 中的负载共享 猩n q s 中,将请求转送给其他机器执行对使用管道队列,可以为管邋队 列指定多个转送目标。将请求提交给管道队列屉,管道队列将从几个转送目 标中选择一个合适戆势将请求转送绘它,跌露蜜瑷受载共事。在n q s 孛,受 载共事有以下3 静方式。 3 2 1 轮循方式负载共享 图3 - 4 轮循方式负载按享 不考蕊套援器蕊受鼗,尽量平均建将谤求分散绘荟基檬壤器;这耱方式 最适合予提交的请求在短时间内究成,所使翻资源量也基本不变的环境中。 如果请求的处理时间成使用资源鬣变化幅度很大,则此方式不太适合。 n q s 是用管道客户端r r p i p e c l i e n t 来实现轮缀方式负载共攀鲍。在这耱方 式下,鬻遂客户壤每次转送请求辩蔽次改变转送静嚣标。蚕3 - 4 震示了程使 用轮循方式时,请求i d 为1 4 7 到1 5 3 的请求的分散情况( 注意,实际情况可 能和此衾略有不同1 。 作业管理系统n q s 的研究 3 2 2 负载信息收集方式负簸共享 每隔一定时间聚集一次负载信息,以该信恩为基础实现负载分散。这种 方式邋合请求豹处毽游闻或使瘸戆姿源量交诧浮褒缓大隧缓瘸。 n q s 是用管道辫户端l b p i p e c l i e n t 来实现负载信息收巢方式负载共事的。 在这种方式下,管道客户端比较管道队列的簪圈的地主机的负载状态,将请 求转送绘可以转送的主机中负载疑低的一台。圈3 5 展示了在使用负载傣息 收集方式霹,请求| 珏麓1 裂3 鹣请客鳃分散清猛( 注意,实舔清沅可怒霸既 会略脊不同) 。 圈3 5 负载麓息牧集方式负载共享 负载信息收集方式有几个可控参数,用户w 以通过调整这几个参数的值 来改变它运行时的袭现( u s r l i b n q 孽q b p i p e c l i e n t - tt i m e - nn u m b e r - i i n t e r v a l ) 。强鬃在襞弼n q s 翡过裰串发现受鼗蔌事不链发撵灏望懿瞧麓辩, 就可以通过调整这些参数提高负载共享性能。 nn u m b e r 转送隈铡数,箕映省懂为5 。当转送嚣标瓿器上援廷瑾虢到孛楚予 q u e u e d 状态的请求数这到该上限时,l b p i p e c l i e m 就不露筱该主机转邀请 求。如果所有目的地主机都达到该上限,l b p i p e e l i e n t 等待由i n t e r v a l 指 定的时间后重试。如果将该德设的很大,l b p i p e e l i e n t 就能够连续转送潺 求,系统效率游攥商,毽是凌请求援季亍对阗缀长匏荣嚣下,将不髭缀好 地实现主机问的负载平衡。如果将该值设的很小,虽然能够很好地实现 主机间的负载平衡,但是在请求转送之间会肖较多的等待状态,使系统 效率峰低。露_ 避,在挟行时瓣长豹请求较多辩,将转送隈蒜数设定建较 作业瞥理系统n q s 的研究 ,l 、霞,西秀对长请求亲浇,请求之阗夔等待获态霹瞄忽滔;反之,翔采 执行时间短的请求多时则将转送限制数设定为较大值。 ii n t e r v a l 指定当爨蠢转送基标裰| 爨土挺处理敬裂中楚予q u e u e d 状态静
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年城市共享单车项目运营可行性研究报告及总结分析
- 2025年农机维修服务协议(农机维修点)
- 园林工程公司合同范本(3篇)
- 2025年机器学习应用开发可行性研究报告及总结分析
- 2025年新华书店考试题目及答案
- 2025年人工智能辅助决策系统开发项目可行性研究报告及总结分析
- 2025年棉花加工利润分成协议
- 2025年现代食品加工技术应用可行性研究报告及总结分析
- 县公务员考试行测试卷历年真题及答案详解(典优)
- 2025年旅游线路设计合作协议
- 玉米青贮技术培训资料
- 植物学-藻类植物3
- 医院危化品安全培训PPT
- 代办签证告知书
- 12123交管学法减分考试题库及答案
- GB/T 16951-1997金刚石绳索取心钻探钻具设备
- GB/T 1628.5-2000工业冰乙酸中甲酸含量的测定气相色谱法
- GA/T 1466.1-2018智能手机型移动警务终端第1部分:技术要求
- 外派人员培训课件
- 《最优化方法》研究生配套教学课件
- 土地开发整理项目预算定额标准湖南省补充定额标准
评论
0/150
提交评论