


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一种RAID系统箱体管理的设计摘要:RAID技术的普及使得自动化的存储管理和智能化的磁盘管理的实用性大大提高。SCSI机箱服务是T10技术委员会SCSI标准体系结构的一部分。SCSI设备安装在机箱内,由机箱对其提供电源,散热和保护等功能。机箱服务的作用是为在机箱内对设备进行合适的操作和维护而建立的必要的机械环境、电气环境、额外指示器以及对设备的控制信息。关键词:机箱服务;磁盘智能管理;板级支持包0引言为了提高RAID存储系统的I/O访问性能,过去几十年中,有很多的软硬件技术被提出来并且应用到实际中。RAID技术的基础是单个磁盘技术,RAID技术的概念提出时单个磁盘的容量仅仅有几百MB,平均故障
2、时间(MTTF)只有20,000-30,000小时,无论在容量、速度还是可靠性方面都不能满足关键系统应用的要求。这限制了RAID系统结构的规模和整体性能。随着磁盘技术的发展,磁记录密度越来越高,磁盘体积由5.25英寸下降到1.8、1.3英寸,甚至更低,单盘容量达到几百个GB,访问时间下降到原来的一半。磁盘技术的进步很大地提高了RAID系统的I/O访问速度。SCSI(SmallComputerSystemsInterface是小型计算机系统接口,是一种比ATA接口更智能的接口。自从1986年出道以来,一直在不停地演化之中,其性能始终优于同期的IDE接口。目前市场上最广泛的SCSI设备接口都是使用
3、并行的68针线缆,所以又称之为并行SCSI。1SCSI机箱服务本文中所论述的RAID系统箱体管理包括2大部分:一部分是参考SCSI机箱服务标准协议完成的关于机箱内部的环境监控,一部分是智能化磁盘管理功能。将首先介绍SES标准协议的有关内容。SES全称是SCSIEnclosureServices,它是T10技术委员会SCSI标准体系结构的一部分。SES的主要作用是用来管理和监测电源供应、制冷设备、指示器、独立驱动和其它安装在机箱内的非SCSI设备的状态。现在绝大多数SCSI设备都支持SCSIEnclosureServices(SES)协议。通过专门设置的SCSI命令,启动器可以管理电源设备,制冷
4、设备和其它一些非数据设备。Enclosure:提供电源,制冷,机械保护和额外SCSI设备电子接口的机箱或机箱组。Enclosureservices(ES):Enclosureservices的作用是为在机箱内对设备进行合适的操作和维护而建立必要的机械环境、电气环境、额外的指示器以及对设备的控制信息。SCSI设备存放在机箱内,由机箱提供电源,制冷和保护设备等功能。此外,机箱还提供额外的对机箱和其内设备状态进行检查的功能。机箱指示器(enclosureindicator)能够识别机箱,识别对于设备和机箱元素合适的操作,对机箱内的RAID设备发出指令以及提供系统维持或出错信息。在系统工作期间一些独立
5、的机箱元素可以被拿走或更换的,这不会影响到系统的正常工作。SCSI机箱服务程序的作用是管理所有的机箱元素以及与SCSI应用客户端进行通讯。所有这些机箱元素都在机箱领域内,而机箱领域是可以扩展到实际的机箱之外的。1.1 依附式机箱服务(Attachedenclosureservices)依附式机箱服务程序(Attachedenclosureservicesprocess是一种依附于其它设备服务器的程序。依附式机箱服务设备允许SES通过LUN在SCSIdisk-drive内部进行通讯,SCSIdisk-drive位于机箱内部。然后disk-drive通过其它一些方法与机箱通讯,一般最常用的方法是通
6、过ESI(EnclosureServicesInterface)接口。在容错性(fault-tolerant)的机箱中会有不止一个disk-driveslot有ESI接口,这样即使有disk-drive发生故障也可以继续与SES保持通讯。应用客户端有时也会用其它的外围设备类型逻辑单元对机箱服务进行编址以作为传输机箱服务的信息用。这种外围设备与依附式机箱服务程序相连接。依附式机箱服务程序并不像自己的逻辑单元那样容易进入,它是通过已编址的逻辑单元来传输标准机箱服务信息的。如果需要使用依附式机箱服务程序就需要在StandardINQUIRYData中将ENCSERV(enclosureservice
7、s位置1。通常依附式机箱服务程序并不总是连接在主机上。1.2 独立式机箱服务(Standaloneenclosureservices)应用客户端通常将独立式机箱服务程序当作一个外围设备类型的逻辑单元。独立式机箱服务程序需要将StandardINQUIRYData的ENCSERV位置1。应用客户端通过SENDDIAGNOSTIC命令和它的类型控制诊断页对各种指示器和机箱领域内的状态进行设置,使机箱可以为其内的其它SCSI设备提供最为合适的环境。类似的,应用客户端使用RECEIVEDIAGNOSTICRESULTS命令和它的类型状态诊断页从机箱服务程序接受信息来检测各种状态及警告信息。2SCSI机
8、箱服务的软件构架及实现2.1系统软件平台构架嵌入式软件系统通常由板级支持包(BoardSupportPackage,即BSP)、内核(Kernel)、根文件系统(RootFileSystem)和应用软件构成。板级支持包位于整个平台的最底层,它相当于硬件抽象层的作用,将嵌入式平台的硬件特性与上层的操作系统内核分割开。大部分的板级支持包同时也完成引导器的工作,从引导设备加载内核,到引导系统运行。操作系统内核提供了一个操作系统的基本功能,如内存管理、进程调度、文件系统组织、网络以及设备驱动程序等。根文件系统是存放运行和维护系统所必须的各种工具软件、库文件、脚本、配置文件和其它特殊文件(比如设备节点)
9、的地方,也可以安装各种软件包。位于最上层的是应用软件,它们通过操作系统调用嵌入式平台的资源,为用户提供需要的功能。图1为嵌入式软件平台层次结构图图1嵌入式软件平台层次RAID系统原型使用Redboot作为板级支持包,操作系统内核选择的是Linux内核,根文件系统是在Redhat公司为X86平台发布的Linux根文件系统之上进行裁减的。2.2 Redboot软件介绍嵌入式系统的硬件环境是操作系统和应用程序运行的硬件平台,它随应用的不同而不同的要求。硬件平台的多样性是嵌入式系统的主要特点,如何使嵌入式操作系统在不同的硬件平台上有效地运行,是嵌入式系统开发中需要解决的关键问题。解决的方法是在硬件平台
10、和操作系统之间提供硬件相关层来屏蔽这些硬件的差异,给操作系统提供统一的运行环境,这种硬件相关层就是嵌入式系统的板级支持包。BSP具有硬件相关性和操作系统相关性的特点,其主要作用包括: 初始化底层硬件,为操作系统提供底层硬件信息; 初始化相关硬件设备,主要是存储设备、通信设备; 检测系统硬件是否正常; 加载操作系统并启动系统运行; 提供各种调试功能。Redboot是一种广泛应用在各种嵌入式平台上的板级支持包。它是从eCos系统的硬件抽象层(HAL)衍变而来。eCos(EmbeddedConfigurableOperatingSystem)是RedHat公司的一种嵌入式可配置实时操作系统,适合于深
11、度嵌入式应用。RedBoot提供自定义的专用命令,通过这些命令,系统中的RedBoot能够与主机进行通信。命令分为三类:程序下载和执行、FLASH映像和配置管理、其它命令。RedBoot的软件结构具有可伸缩性,根据具体需要可以增加新的软件模块或新的功能,也可以裁减掉不需要和不适用的软件模块或功能。RedBoot使用的底层程序是eCos的硬件抽象层HAL和设备驱动程序。软件结构如图2所示:图2RedBoot软件结构模型2.3内核裁减RedBoot在完成板级初始化之后,会引导内核执行,之后所有的硬件资源都由内核接管并负责调度。内核提供了一个操作系统的基本功能,如内存管理、进程调度、文件系统组织、网
12、络以及设备驱动程序。嵌入式应用对操作系统的要求主要是:功能专一、高效、占用资源少、启动速度快。有些特殊的应用还需要系统具有实时性。Linux内核在嵌入式领域有如下以优势:(1)内核可裁减,模块化程度高。开发者可以根据不同的需要选择不同的模块进行编译。这对于资源十分有限的嵌入式系统十分重要;(2)内核布局采用整体式结构(Monolithic),系统的各个部分直接沟通,可以有效缩短任务之间的切换时间,简化任务管理和内存管理的操作,提高系统运行速度和响应速度;(3)可移植性强,大部分的代码用C编写,通过少量修改就可以在不同的体系结构上运行。Linux发行包通常自带有对常见体系结构的支持,只需设置相关
13、选项,交叉编译即可;(4)支持大量的外部设备、总线和文件系统,同时具有非常好的网络性能;(5)开源免费,不仅节约了成本,而且十分可以方便地进行修改和二次开发。因此,本文的RAID原型系统采用Linux内核作为操作系统内核。目前发布的标准Linux内核相对于资源受限的嵌入式系统来说过于庞大,因此要将其移植到嵌入式系统上,就需要将Linux内核根据目标平台的情况进行裁减、配置。例如,Linux支持的文件系统种类很多,包括ext2、ext3、FAT、Reiserfs、JFS等等,可以根据实际情况选择所需的文件系统。2.4RAID控制软件的整体框架以及与SES程序的关系RAID核心控制软件是RAID存
14、储系统的核心部件,它作为软件模块存储在RAID控制器的Flash芯片上的根文件系统中。在内核编译完成后,内核自带的驱动程序可以以内置的方式或模块的方式加载运行。RAID核心控制软件经过交叉编译器编译,其目标代码运行在RAID控制器上,在嵌入式Linux引导并成功执行后,它作为内核模块被加载。SCSI机箱服务程序同样也是作为Linux内核模块被加载后运行的。RAID核心控制软件的每个模块都有各自独立的内核线程,这些线程并行工作,相互之间以异步方式交付请求和响应。这种异步的工作方式保证了各个模块都独立的工作,从外部主机发送的I/O请求依次经过各个模块负责的环节,以流水线的形式被处理。当一个请求被上
15、级模块处理完送到下级模块后,上级模块可以接着处理下一个I/O请求。这样提高了I/O请求处理的并行度,也有助于提高了RAID系统整体的吞吐率。SES实验程序分为如下几个部分:模块入口部分(ses_mod,I2C总线驱动部(i2c-iop3xx),机箱环境监控部分(ses_monitor),中断处理部分(ses_intr)以及LCD和面板这2个可选部分(ses_lcd&ses_pan)这些程序主要负责处理RAID机箱内的环境监控功能。在编译完成后,SES程序可以通过insmod和rmmod命令进行加载和卸载。整个程序是从I2C总线初始化开始的(i2c_iop3xx_init),在I2C总线
16、初始化成功之后是磁盘处理芯片Pcf8575和机箱环境监控芯片W83791d以及中断处理程序的初始化工作。SCSI协议规定发起服务请求的一方为启动器,而接收请求并且进行处理的一方为目标器。由于SES程序是整个RAID核心控制程序的一部分,所以在获得监控数据后SES将向上层模块汇报,SES程序本身不对数据进行处理。RAID核心控制软件依据软件功能的不同,一共划分成为8个模块:目标器模块(TARGET):缓存管理模块(CACHE):核心算法模块(KERNEL):IO调度模块(IOS);启动器模块(INITIATOR):全局配置管理模块;配置管理中端模块;SCSI机箱服务模块(SES)。图3是嵌入式R
17、AID系统核心控制软件的整体结构图,从中我们可以看到SES模块和其它模块之间的关系。图3嵌入式RAID系统核心控制软件的整体结构3结束语RAID系统箱体管理原型系统仍然存在需要改进的地方,而且更新的软、硬件技术也出现,这些技术可以更进一步提升原型系统的性能:首先最大的不足之处在于RAID系统箱体管理系统始终只是在做局部的自我调适,没能和整个嵌入式RAID系统结合成一个整体。其次,作为实验项目,我们没有完全按照T10文档的标准制作箱体管理系统,功能的完善和改进是我们将来要做的工作。参考文献::1赵亮高性能磁盘阵列(RAID)关键技术的研究D.长沙:国防科学技术大学,2002.2FRIEDHEKMSCHMIDT.TheSCSIBusandIDEInterface:Protocols.ApplicationsandProgramming(SecondEdition)M.Addison-Wesley,1997.3 Info
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度生态环保地板砖供货与市场推广合同
- 2025版跑步赛事官方赛事宣传册与海报设计合同
- 2025版房地产担保规定及会计处理办法合同
- 二零二五年金融机构财务顾问聘用协议书
- 2025版化肥行业环保达标改造合同范本
- 2025版企业员工离职交接与保密协议合同范本下载
- 二零二五年珠宝首饰代理销售合作协议模板
- 二零二五年度健康环保电压力锅代理销售合同
- 二零二五年度消费贷款产品合作协议
- 二零二五年度二手珠宝鉴定及买卖合同范本专业服务
- 简思plc状态帧使用说明书
- THSPP 0010-2023 欧标茶生产茶园栽培技术规程
- 附件2:“揭榜挂帅”制项目申报材料参照模板
- GB/T 7113.5-2011绝缘软管第5部分:硅橡胶玻璃纤维软管
- GB/T 4668-1995机织物密度的测定
- GB/T 29256.5-2012纺织品机织物结构分析方法第5部分:织物中拆下纱线线密度的测定
- GB/T 27750-2011绝缘液体的分类
- GB/T 1410-2006固体绝缘材料体积电阻率和表面电阻率试验方法
- 科幻小说《三体》内容简介读书分享会ppt图文课件
- 工会法律知识考试参考题库350题(含答案)
- 产品说明中文asd-7110管状体电机说明书
评论
0/150
提交评论