基于Linux的PC集群系统的研究与实现
发布时间:2020-07-04 06:00
【摘要】: 在计算机技术已经进入高速网络时代的今天,客户/服务器模型以其简单、易管理和易维护的优点,在网络上被大量采用,单一的服务器已经难以满足高性能计算的要求,为此,人们想到了用普通的PC通过某种方式组织起来,成为一个具有高性能计算能力的服务器,这种服务器就叫集群。集群不仅价格低廉,而且使用方便,对软硬件设备要求非常低,是替代昂贵的超级计算机的最好选择。 基于以上出发点,本文先对集群的各种关键技术做了深入的研究和探讨,并利用实验室现有的软硬件资源,实现了一个主从模式的基于Linux平台的高性能集群系统。实验表明,这个集群系统不仅具有灵活的作业管理系统,还有较强的负载平衡能力,能够高效地调度用户提交的作业,在较短的时间内将结果返回给用户。本文所做的主要工作如下: (1)研究了国内外经典集群系统,以及集群系统的作业管理方式,负载均衡算法和任务调度算法; (2)对Linux的Kernel 2.6内核源代码进行了深入分析,包括其进程间通信、系统调用函数、/proc文件系统等; (3)实现了一个基于Linux的PC集群系统,它不依赖于任何现成的并行编程环境,可以高效处理用户提交的并行作业; (4)实现了灵活的作业管理模式,主服务器管理主任务,从服务器管理子任务;
【学位授予单位】:四川大学
【学位级别】:硕士
【学位授予年份】:2006
【分类号】:TP338
【图文】:
29图 4-1 集群系统体系结构4.1.2 硬件环境本系统使用的都是实验室提供的 PC 机,一共由了 5 台 PC 组成,它们的基本配置如表 4-1 所示。由于实验室条件有限,monitor 和 master 放在一台机器上执行,如果条件允许,也可以将 monitor 独立出来。表 4-1 集群硬件基本配置表HOST CPU Cache Size(KB) Memery(MB) NIO(M)Master Althon 2000+ 256 448 10/100
本文设计的任务管理系统包括主任务和子任务的管理。4.2.1 相关数据结构4.2.1.1 任务表的定义struct TaskTable_{int count; // 总的任务数目char table[TASK_TABLE_SIZE]; // 存放主/子任务的内存块};定义任务表主要是为了方便 master 或 slave 中多个进程的内存共享,它用是顺序存放主子任务的相关信息。这个结构包含了任务的数目和存放任数组两个字段,当在 table 里面增加一个主/子任务时,count 就加 1;在 里面删除一个主/子任务时,count 就减 1,具有相当的灵活性,如图 4-2。
本文编号:2740747
【学位授予单位】:四川大学
【学位级别】:硕士
【学位授予年份】:2006
【分类号】:TP338
【图文】:
29图 4-1 集群系统体系结构4.1.2 硬件环境本系统使用的都是实验室提供的 PC 机,一共由了 5 台 PC 组成,它们的基本配置如表 4-1 所示。由于实验室条件有限,monitor 和 master 放在一台机器上执行,如果条件允许,也可以将 monitor 独立出来。表 4-1 集群硬件基本配置表HOST CPU Cache Size(KB) Memery(MB) NIO(M)Master Althon 2000+ 256 448 10/100
本文设计的任务管理系统包括主任务和子任务的管理。4.2.1 相关数据结构4.2.1.1 任务表的定义struct TaskTable_{int count; // 总的任务数目char table[TASK_TABLE_SIZE]; // 存放主/子任务的内存块};定义任务表主要是为了方便 master 或 slave 中多个进程的内存共享,它用是顺序存放主子任务的相关信息。这个结构包含了任务的数目和存放任数组两个字段,当在 table 里面增加一个主/子任务时,count 就加 1;在 里面删除一个主/子任务时,count 就减 1,具有相当的灵活性,如图 4-2。
【引证文献】
相关期刊论文 前1条
1 蒙芳;李清霞;;基于Ubuntu的MPICH2并行集群系统的构建[J];科技信息(科学教研);2008年23期
相关硕士学位论文 前2条
1 吴昊;AFS分布式文件系统中智能监督服务的设计与实现[D];南京理工大学;2007年
2 张_";高校教务管理系统双机容错的研究[D];辽宁师范大学;2008年
本文编号:2740747
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2740747.html