论文部分内容阅读
作业管理的目的在于强化操作系统的批处理功能,提供对作业的提交、调度、执行及控制等机制,从而能够更加有效地利用系统资源、平衡网络负载,提高系统的整体性能。作者于2003年10月进入西北工业大学软件工程中心,参与了一个国际间的合作项目——作业管理系统服务器端系统软件的设计与开发,在一年多的实践基础上,作者对作业管理系统的框架体系结构和实现方法有了一个比较深入的理解和认识。 作业管理系统具有典型的客户/服务器模型结构,由客户、通讯代理Agent、服务器三层体系结构实现。客户端提供完全的GUI用户界面,完成用户对作业流的管理及对系统的管理功能;通讯代理采用TCP/IP网络通信协议以及与平台无关的数据通讯协议来实现客户与服务器之间的完全通讯;服务器端提供对作业流的全面支持,上层由作业网络定义子系统和作业引擎负责完成对作业流的定义与执行,底层使用网络队列系统(NQS)来实现对作业的调度与执行,使用户能够最大限度地利用计算机网络系统中的各种资源,以提高执行效率、降低作业成本。 本文主要介绍了基于作业网络的作业管理系统的设计及实现的关键技术,并重点对作业流的定义方法、作业流的控制与执行方面做了深入研究。主要的研究工作及成果有: ● 对作业管理系统的体系结构进行了全面分析,对结构的各个框架构成部分进行了详细的功能描述。并且从作业流的观点,提出了作业管理系统服务器的三层体系模型。分析了通讯代理的结构和特征,强化了作业网络自动提交的功能。 ● 对作业调度特别是请求调度算法及其实现进行了深入的研究,在对一些影响和制约负载平衡的因素进行了讨论和分析的基础上,设计了加权批量作业按比例调度算法,实现了作业管理系统JMS的负载平衡机制,该系统可以通过改变管道队列属性的方法,灵活的选取负载平衡算法。 ● 完善了进程同步机制;总结了客户机/服务器结构下软件测试的特点以及测试用例的设计方法。