论文部分内容阅读
随着社会的发展和进步,越来越多的信息被数据化,传统的存储系统(DAS)已经不能满足企业对存储系统高可靠性,可扩展性和安全性的要求。新的存储系统SAN(存储区域网)便应运而生。许多大公司和研究机构在基于SAN网络协议的存储管理系统方面进行了大量的研究工作,并推出了一些商业化的系统。Storage Manager组也实现了FC-SAN管理系统SCM server(Storage Controll Manager server)。 但是,因为有关存储管理的软件体系标准目前还在制定中,当前流行的管理软件大都是SAN存储设备的生产厂商根据自己产品的特性度身定做的,相互间的集成和互操作性较差。为了管理其它公司的存储设备,存储设备的开发需要提供接口和SAN管理软件合作,SAN管理软件也必须提供SAN管理的接口,以便不同厂商的管理软件能协同工作。 为此,作者对SAN的管理问题及其管理软件的开发技术进行了研究,并通过分析SAN管理软件特有的功能需求,设计实现了SAN管理软件扩展系统。这套系统利用了UNIX平台的特点,采用了很多新技术、新思想,并且合理利用了软件工程的方法,从开发到测试,严格按照计划进行。 系统实现时,为减少对原有系统的影响,并充分利用现有的软件,把它作为了一个单独的系统运行,以SCM server作为服务端,而不是在原系统上添加。 实现了对外的API接口。此API以动态库的形式提供,通过它们可以获得、设置SCM server管理的磁盘阵列的信息。 在API接口的基础上设计了远程配置磁盘阵列的功能。 系统采用了模块化的设计,整个系统分为基本模块和功能模块两大部分。基本模块是为实现上述功能必不可少的部分,负责与server的通信及总体控制;功能模块是API接口和远程命令模块。功能模块主要与基本模块的dist模块通信。这样的划分可以很方便的添加功能模块,而不影响其它部分。 系统的实现利用标准C开发,基本符合POSIX规范,平台相关代码在源代码中用编译选项隔开。同一份源代码经不同平台编译后可运行在Linux、HP-UX、Solaris等操作系统。在系统开发中作者学到了许多新思想、新方法,独立工作能力和自身素质得到很大提高,受益非浅。