CN102467449A - 支持文件存取测试的大容量扇区磁盘的模拟方法 - Google Patents
支持文件存取测试的大容量扇区磁盘的模拟方法 Download PDFInfo
- 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
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所述的支持文件存取测试的大容量扇区磁盘的模拟方法,其特征在于,还包括:根据一配置文件所记录的该扇区容量值修改该存取要求。
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)
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 | 英业达股份有限公司 | 磁盘阵列设定文件更新方法 |
-
2010
- 2010-11-16 CN CN2010105558213A patent/CN102467449A/zh active Pending
Patent Citations (4)
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 |