CN102467449A - 支持文件存取测试的大容量扇区磁盘的模拟方法 - Google Patents

支持文件存取测试的大容量扇区磁盘的模拟方法 Download PDF

Info

Publication number
CN102467449A
CN102467449A CN2010105558213A CN201010555821A CN102467449A CN 102467449 A CN102467449 A CN 102467449A CN 2010105558213 A CN2010105558213 A CN 2010105558213A CN 201010555821 A CN201010555821 A CN 201010555821A CN 102467449 A CN102467449 A CN 102467449A
Authority
CN
China
Prior art keywords
sector
storage element
access
high capacity
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2010105558213A
Other languages
English (en)
Inventor
王辉
王云松
陈志丰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inventec Corp
Original Assignee
Inventec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inventec Corp filed Critical Inventec Corp
Priority to CN2010105558213A priority Critical patent/CN102467449A/zh
Publication of CN102467449A publication Critical patent/CN102467449A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种支持文件存取测试的大容量扇区磁盘的模拟方法,将储存单元中的多个扇区整合为虚拟扇区,用以测试目标程序是否支持大容量的虚拟扇区,模拟方法包括以下步骤:运行虚拟磁盘驱动程序;由虚拟磁盘驱动程序拦截目标程序对储存单元的存取要求,用以要求将目标文件写入储存单元之中;修改存取要求中的扇区容量值;根据已修改的存取要求对该储存单元进行存取。

Description

支持文件存取测试的大容量扇区磁盘的模拟方法
技术领域
本发明公开了一种文件存取测试方法,特别有关于一种支持文件存取测试的大容量扇区磁盘的模拟方法。
背景技术
随着储存单元容量的增加,使得储存单元的基本架构也随之改变。现有技术的储存单元是以512字节(Bytes)作为扇区(sector)的基本单位。为能对每一扇区进行记录与校验,所以每一扇区还有所属的标头(head)与校验码(ErrorChecking and Correcting,ECC)。
由于互联网的兴起,使得数据的储存量也随之增加。如果在大容量的储存单元中还是采用512字节的扇区,则将浪费许多储存的空间。请参考图1A与图1B所示,其分别为现有技术的不同容量的扇区的示意图。
在图1A中以512字节作为扇区110的分隔,而在图1B中以4K字节作为扇区110的分隔。在每一个字节前后将产生相应的标头与校验码。由于4K字节比512字节长,所以4K字节需要比512字节还要长的校验码。虽然512字节扇区110的标头与校验码的数量比4K字节扇区110来的多。但是整体而言4K字节扇区110的校验码总量却远比512字节扇区110的总量来的少,所以4K字节扇区110的可储存容量比起512字节扇区110的可储存容量是还要来的更多。
但是碍于大容量扇区110的储存设备的成本昂贵,而且对于部分软件并不支持大容量扇区110的储存设备。当不支持大容量扇区110的应用程序(特别是作业系统)对大容量扇区110的储存设备进行存取时,将会造成文件写入/读取时会有部分数据缺失的问题产生。
发明内容
鉴于以上的问题,本发明在于提供一种支持文件存取测试的大容量扇区磁盘的模拟方法,用以将储存单元中的多个扇区整合为虚拟扇区。
为能解决上述问题,本发明所公开的支持文件存取测试的大容量扇区磁盘的模拟方法包括以下步骤:运行虚拟磁盘驱动程序;由虚拟磁盘驱动程序拦截目标程序对储存单元的存取要求;修改存取要求中的扇区容量值;根据已修改后的存取要求,对储存单元进行相应位置的数据存取处理。
本发明提供一种改变储存单元的扇区大小的方法,用以测试目标程序是否支持大容量扇区的存取。在测试的过程中,不需额外的更换成不同容量扇区的实体储存单元,可以节省设备更换的成本也可以达到测试的目的。
有关本发明的特征与实作,配合附图作最佳实施例详细说明如下。
附图说明
图1A为现有技术的不同容量的扇区的示意图;
图1B为现有技术的不同容量的扇区的示意图;
图2为本发明的架构示意图;
图3为本发明的运作流程示意图。
其中,附图标记:
扇区110
个人计算机200
处理单元210
储存单元220
虚拟磁盘驱动程序221
具体实施方式
本发明所提出的大容量扇区磁盘的模拟方法可以被用在测试不同软件,藉以判断该软件是否支持大容量扇区的操作。因此本发明可以应用于个人计算机、笔记型计算机、或服务器等计算机装置中。请参考图2所示,其为本发明的架构示意图。在说明书中以个人计算机200作为说明,但并非仅局限于此。本发明中以微软公司所发行的视窗作业系统(Windows OS)的运作环境下进行。
个人计算机200包括处理单元210与储存单元220。储存单元220中存储虚拟磁盘驱动程序221,而储存单元220的种类为串行高技术配置(SerialATA,SATA)储存阵列、光纤通道储存单元、网路小型计算机系统接口(InternetSmall Computer Systems Interface,iSCSI)储存单元或虚拟储存单元。处理单元210运行虚拟磁盘驱动程序221,用以在存取储存单元220时对欲存取的数据重新进行定位的处理。
为能清楚说明本发明的大容量扇区磁盘的模拟运作过程,请参考图3所示,其为本发明的运作流程示意图。文件测试程序包括以下步骤:
步骤S310:运行虚拟磁盘驱动程序;
步骤S320:由虚拟磁盘驱动程序拦截目标程序对储存单元的存取要求,用以要求将目标文件写入储存单元之中;
步骤S330:修改存取要求中的扇区容量值;
步骤S340:根据已修改的存取要求对该储存单元进行存取;以及
步骤S350:比对原始的目标文件与写入后的目标文件是否一致,并返回比对结果。
首先,在计算机中运行虚拟磁盘驱动程序。而虚拟磁盘驱动程序会分别调用以下硬体接口的存取程序:
HwFindAdapter判断驱动所支持的HBA是否存在以及设置一些配置信息。
HwInitialize    初始化所支持的HBA。
HwAdapterControl支持即插即用功能。
HwResetBus    处理总线复位请求。
HwStartIo    处理I/O请求。
一般而言,在个人计算机200中的硬体装置可分为不同的类别,例如存储类设备等等。而各类别中又更细分成许多不同的子类别,例如存储类设备又可分为光盘(CD-Rom)、磁带(Tape)、硬盘(Hard disk)等。
在硬盘初始化期间,硬盘类驱动程序将发送一个存取要求(READ CAPACITY)查询设备容量。对于每一子类别的设备,视窗作业系统都会提供相应类别驱动器(class driver)。类别驱动器可以实现某一类型设备驱动器(Driver)与设备无关的公共的功能集合。输入/输出管理器(I/O management)需要的功能要不由类别驱动器直接完成,要不就由类别驱动器通过调用底层的模块来实现,而底层的模块通常称为迷你端口驱动器(miniport driver)。
首先,目标程序发出对储存单元220的存取要求。而目标程序不限定为作业系统或应用程序等。当虚拟磁盘驱动程序221拦截目标程序对储存单元220的存取要求时,虚拟磁盘驱动程序221会根据配置文件所记录的扇区容量值修改存取要求。配置文件可以是信息文件档(inf)注册档(register)等格式所实现。并在配置文件中记录扇区的容量值,其扇区的容量值可以是1Kbytes、2Kbytes或4Kbytes。
当虚拟磁盘驱动程序221修改完存取要求后,虚拟磁盘驱动程序221会将已修改的存取要求转发给作业系统,使得作业系统会根据已修改的存取要求对该储存单元220进行存取。换言之,虚拟磁盘驱动程序221会将原本配置文件欲写入实体储存单元220的位置进行位移的处理。换言之,虚拟磁盘驱动程序221在进行存储时在进行操作时的空间是对应于现有已建立的文件系统的实际物理磁盘上的文件。因此虚拟的大扇区的存储位置是直接对应于文件中的相应位置,但底层所对应的磁盘位置则由文件系统自身所管理。
在前文中曾述及由于部分软件可能会不支持大容量扇区的磁盘,因此可以透过本发明模拟大容量扇区的磁盘来对软件进行存取的测试。首先,虚拟磁盘驱动程序221在运行的期间实时的监视目标程序是否有对储存单元220的文件存取请求。若是目标程序拦截到有对储存单元220的文件存取要求,则虚拟磁盘驱动程序221透过上述硬体接口程序修改文件存取要求中的扇区容量值。
根据已修改后的文件存取要求,将目标文件写入储存单元220。由于已修改后的储存单元220的扇区已经变更,因此对于不支持大容量扇区的目标程序而言,在对储存单元220进行写入目标文件时,由于扇区的可用长度与偏移量的不同,将使得目标文件写入前后会产生对位不一致的情形。所以在将目标文件写入储存单元220后,文件存取测试程序会将已写入的目标文件与原始的目标文件进行比对。比对原始的目标文件与写入后的目标文件是否一致,并返回比对结果。
本发明提供一种改变储存单元220的扇区大小的方法,用以测试目标程序是否支持大容量扇区的存取。在测试的过程中,不需额外的更换成不同容量扇区的实体储存单元220,也可以达到测试的目的。
虽然本发明以前述的较佳实施例公开如上,但其并非用以限定本发明,任何本领域的技术人员,在不脱离本发明的精神和范围内,可作些许的更动与修改,因此本发明的专利保护范围视本说明书所附的权利要求书所界定者为准。

Claims (5)

1.一种支持文件存取测试的大容量扇区磁盘的模拟方法,对一储存单元重新划分多个虚拟扇区,其特征在于,该支持文件存取测试的大容量扇区磁盘的模拟方法法包括以下步骤:
运行一虚拟磁盘驱动程序;
由该虚拟磁盘驱动程序拦截一目标程序对该储存单元的一存取要求(ReadCapacity),用以要求将一目标文件写入该储存单元之中;
修改该存取要求中的一扇区容量值;以及
根据已修改的该存取要求对该储存单元进行存取。
2.如权利要求1所述的支持文件存取测试的大容量扇区磁盘的模拟方法,其特征在于,该储存单元的种类为串行高技术配置(Serial ATA,SATA)储存阵列、光纤通道储存单元、网路小型计算机系统接口(Internet SmallComputer Systems Interface,iSCSI)储存单元或虚拟储存单元。
3.如权利要求1所述的支持文件存取测试的大容量扇区磁盘的模拟方法,其特征在于,该虚拟磁盘驱动程序为迷你传输端口(miniport)。
4.如权利要求1所述的支持文件存取测试的大容量扇区磁盘的模拟方法,其特征在于,该扇区容量值为1Kbytes、2Kbytes或4Kbytes。
5.如权利要求1所述的支持文件存取测试的大容量扇区磁盘的模拟方法,其特征在于,还包括:根据一配置文件所记录的该扇区容量值修改该存取要求。
CN2010105558213A 2010-11-16 2010-11-16 支持文件存取测试的大容量扇区磁盘的模拟方法 Pending CN102467449A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010105558213A CN102467449A (zh) 2010-11-16 2010-11-16 支持文件存取测试的大容量扇区磁盘的模拟方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105558213A CN102467449A (zh) 2010-11-16 2010-11-16 支持文件存取测试的大容量扇区磁盘的模拟方法

Publications (1)

Publication Number Publication Date
CN102467449A true CN102467449A (zh) 2012-05-23

Family

ID=46071110

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105558213A Pending CN102467449A (zh) 2010-11-16 2010-11-16 支持文件存取测试的大容量扇区磁盘的模拟方法

Country Status (1)

Country Link
CN (1) CN102467449A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1421783A (zh) * 2002-12-24 2003-06-04 威盛电子股份有限公司 可适用多重磁碟阵列的磁碟管理系统
JP2008535088A (ja) * 2005-03-30 2008-08-28 イーエムシー コーポレイション セクタ端キャッシュ
CN101681268A (zh) * 2007-06-27 2010-03-24 国际商业机器公司 管理虚拟机存储器的系统、方法和程序
CN101859264A (zh) * 2009-04-10 2010-10-13 英业达股份有限公司 磁盘阵列设定文件更新方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1421783A (zh) * 2002-12-24 2003-06-04 威盛电子股份有限公司 可适用多重磁碟阵列的磁碟管理系统
JP2008535088A (ja) * 2005-03-30 2008-08-28 イーエムシー コーポレイション セクタ端キャッシュ
CN101681268A (zh) * 2007-06-27 2010-03-24 国际商业机器公司 管理虚拟机存储器的系统、方法和程序
CN101859264A (zh) * 2009-04-10 2010-10-13 英业达股份有限公司 磁盘阵列设定文件更新方法

Similar Documents

Publication Publication Date Title
US10089012B1 (en) Zero on demand operations based on zeroed chunk tables of storage drive objects stored in main memory
US20170300396A1 (en) Allocating data based on hardware faults
EP1769329B1 (en) Dynamic loading of virtual volume data in a virtual tape server
US10013166B2 (en) Virtual tape library system
US9026845B2 (en) System and method for failure protection in a storage array
US8954682B2 (en) Computer system management apparatus and management method
US11402998B2 (en) Re-placing data within a mapped-RAID environment comprising slices, storage stripes, RAID extents, device extents and storage devices
TW201214270A (en) Preserving an existing volume map in re-initializing a data storage volume
US20140181396A1 (en) Virtual tape using a logical data container
US11868625B2 (en) Alert tracking in storage
US20140164845A1 (en) Host computer and method for testing sas expanders
EP2936319B1 (en) Virtual tape library system
US9372633B2 (en) Indication of a destructive write via a notification from a disk drive that emulates blocks of a first block size within blocks of a second block size
US9842622B1 (en) Data storage device having improved read failure tolerance
CN102467449A (zh) 支持文件存取测试的大容量扇区磁盘的模拟方法
US9043544B2 (en) Writing of new data of a first block size in a raid array that stores both parity and data in a second block size
KR100882904B1 (ko) 저장 장치의 오류 발생 시스템
TW202117548A (zh) 用來進行關於容錯式磁碟陣列的映射資訊管理之方法與裝置以及儲存系統

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120523