CN1272650A - 超大容量虚拟光盘文件系统构造方法及其系统硬件结构 - Google Patents

超大容量虚拟光盘文件系统构造方法及其系统硬件结构 Download PDF

Info

Publication number
CN1272650A
CN1272650A CN00107490A CN00107490A CN1272650A CN 1272650 A CN1272650 A CN 1272650A CN 00107490 A CN00107490 A CN 00107490A CN 00107490 A CN00107490 A CN 00107490A CN 1272650 A CN1272650 A CN 1272650A
Authority
CN
China
Prior art keywords
centerdot
routing table
virtual
disc
physical disc
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.)
Granted
Application number
CN00107490A
Other languages
English (en)
Other versions
CN1137441C (zh
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.)
QINGHUA TONGFANG OPTICAL DISK CO Ltd
Original Assignee
QINGHUA TONGFANG OPTICAL DISK CO Ltd
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 QINGHUA TONGFANG OPTICAL DISK CO Ltd filed Critical QINGHUA TONGFANG OPTICAL DISK CO Ltd
Priority to CNB001074903A priority Critical patent/CN1137441C/zh
Publication of CN1272650A publication Critical patent/CN1272650A/zh
Application granted granted Critical
Publication of CN1137441C publication Critical patent/CN1137441C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Abstract

本发明属光盘存储技术领域。本发明通过依次扫描所集成物理光盘的路径表,获得所需要的参数,然后通过简单的运算,就能够通过原物理光盘的路径表重新构造一个反映超大容量虚拟光盘存储系统的路径表以及相关的文件系统。此方法能够在占用系统资源最少的情况下,快速而有效地将多张不同物理光盘上的文件系统整合起来,所要求的系统资源不受虚拟光盘所要集成的光盘数目的影响。本发明的硬件结构可以大大提高系统的响应速度。

Description

超大容量虚拟光盘文件系统构造方法及其系统硬件结构
本发明属于光盘存储技术领域。
在众多大容量光盘存储系统的实现方案中,清华同方光盘股份有限公司提出的具有即插即用特性的超大容量虚拟光盘存储系统(专利申请号00105551.8)是一项非常有吸引力的方案。其实现原理是根据ISO-9660标准规定,把多张物理上独立的CD-ROM盘片分别视为虚拟光盘的第一级子目录,构造了一个符合ISO-9660的标准的树状的层次化目录结构,如图1所示。该目录结构的第一级子目录是由多张物理上独立的CD-ROM光盘盘片构成的,即第一级子目录里的每一个子目录的指针都分别指向一个实际的CD-ROM光盘,而此CD-ROM光盘上原有的目录结构在保持原有目录结构顺序的情况下,每一级子目录依次从“虚拟光盘”的第一级目录起往下递推一层,最后再在所有物理光盘相对应的虚拟第一级子目录前,建立一个新的虚拟根目录。因为所有物理光盘里存储的文件系统都按照国际标准ISO-9660重新构造成一个更大存储容量的虚拟文件系统,所以这个虚拟文件系统对外的逻辑表现就是一张标准的“虚拟”光盘盘片。
虚拟光盘存储系统在具体实现时,是把系统接口命令提供的连续的、超大容量的寻址空间平均分割成许多部分,每一部分称为寻址空间的一页,分割后的每一页寻址空间都与一张具体物理光盘盘片的存储容量相对应,不同的页面对应不同的实际物理光盘盘片;系统通过统一的命令寻址方式,实现寻址空间和实际物理光盘存储空间的映射关系(“分页映射”机制);该“虚拟”光盘的存储容量等于所集成的光盘盘片存储容量的总和。
在该专利文档说明书中,还提出了一种基于媒体交换设备的实现方式,如图2所示,其包括SCSI接口的目标设备和与之相连的一个媒体交换设备和多台光盘驱动器。其是利用媒体交换设备来管理多张物理光盘,光盘驱动器被物理光盘所共享。
本发明的目的在于,以上述超大容量虚拟光盘存储系统为基础,提出了一个行之有效的构造有关虚拟光盘文件系统的方法,并提出了一种实现所说系统的硬件结构。这种方法可以方便快捷地将多张物理光盘上相互独立的文件系统整合起来,以重新构造成一个更大的、并且是符合ISO-9660国际标准的文件系统。使这种超大容量虚拟光盘存储系统的技术方案进一步向实用化迈进。
本发明提出的一种构造超大容量虚拟光盘文件系统的方法,其特征在于:包括构造符合本虚拟光盘存储系统实际装载光盘盘片情况的、符合ISO-9660标准的路径表、目录文件、主卷描述幅、中止卷描述幅的方法;具体步骤如下:
(1)设定符号的定义
设所构造的虚拟光盘需要集成的物理光盘数目为M,定义如下符号:
1).记aij为第i个物理光盘、第j层次上所有目录记录的数目。其中i∈[1,M],j∈[1,Li],Li为第i个物理光盘的最大层次;
2).记N为所有物理光盘里最大的层次数目,即N=max(L1,L2,…,LM);
3).由aij构成一个M×N的矩阵A,称为链表矩阵; A = a 11 a 12 · · · · · · a 1 N a 21 a 22 · · · · · · a 2 N · · · · · · a M 1 a M 2 · · · · · · a MN
其中aij若因为下标超出了实际意义的界限,则令其值为0;
4).由链表矩阵A得到一个M×N的衍生矩阵R,衍生矩阵R中的元素Rmn与aij的关系由如下的递推关系式表示: R mn = R m , n - 1 + Σ i = 1 m - 1 a l , n - 1 + Σ j = m + 1 M a j , n
类似的,式中所有若因为下标超出了实际意义界限的元素,其值为0;
5).记Dijk为第i个物理光盘、第j层次上、在路径表里绝对序号为k的目录记录在新的虚拟光盘路径表里的绝对序号,并有如下关系式:
                           Dijk=c+k+Rij其中c为常数1;
6).记Pijk为第i个物理光盘、第j层次上、目录记录的父目录在路径表里的绝对序号为k的目录记录;
7).记Sik为第i个物理光盘、在路径表里绝对序号为k的目录记录文件存储在虚拟光盘文件系统存储区域中的绝对地址;
(2)按上述定义构造所说的路径表:
1).依次扫描各物理光盘路径表,得到有关各物理光盘路径表的参数aij、Li,同时将各路径表记录中的目录文件地址指针由原来指向物理光盘的地址值修改为指向虚拟光盘文件系统存储区域的地址值Sik
2).由Li可以得到N,最后得到由aij构成的M×N的链表矩阵A;
3).由链表矩阵A得到衍生矩阵R;
4).再依次将各物理光盘路径表中Pijk的父目录绝对值以Di(j-1)k值取代;
5).在所有物理光盘路径表前,再加上一个反映虚拟光盘结构的总的根记录;
6).按照ISO-9660有关路径表层次格式的规定,依次将所有修改好的物理光盘路径表中的相关记录直接拷贝到虚拟光盘路径表存储区域中即可;
(3)构造所说的目录文件的步骤为:把各物理光盘上原有的所有目录文件从原来的物理光盘上读取出来,然后使所有目录文件中的“目录记录”里的地址指针都重新指向虚拟光盘文件系统存储区域的地址值,而目录文件中的“文件记录”里的地址指针则需要加上物理光盘盘片的分页映射偏移地址;然后将其保存到指定地址的虚拟光盘文件系统存储区域中;
(4)构造所说的主卷描述幅步骤为:把主卷描述幅中的根目录记录以路径表构造中步骤5所产生的新的根目录记录代替,再按ISO-9660标准构造其他内容;
(5)构造所说的中止卷描述幅完全按ISO-9660标准进行。
本发明还提出一种采用如上述方法的实现超大容量虚拟光盘存储系统的硬件结构,其特征在于,系统由一个硬盘驱动器、多个光盘驱动器,SCSI协议控制器、单片机控制器、在单片机控制下的总线多路选择模块,以及连接各模块的系统内部总线和IDE总线构成;所说的硬盘驱动器、和多个光盘驱动器均与IDE总线相连,而系统内部总线则负责连接SCSI协议控制器、单片机控制器,所说的总线多路选择模块分别与IDE总线和系统内部总线相连接。
本发明的虚拟光盘文件系统构造方法详细说明如下:
要实现一个即插即用型的虚拟光盘存储系统,一个非常关键的技术就是如何根据系统所集成的多张物理光盘盘片上本身的内容,重新构造出一个符合ISO-9660国际标准的虚拟光盘文件系统来。
而且针对嵌入式系统应用中资源较少,运算速度相对较慢的特点,必须要有一种行之有效的方法,这种方法既能够快速方便地构造出符合ISO-9660标准的虚拟光盘文件系统,而且要占有系统资源尽量少。
本发明所说的构造符合ISO-9660标准的虚拟光盘文件系统,包括构造符合本系统实际装载光盘盘片情况的主卷描述幅(Primary Volume Description)、中止卷描述幅(Terminal Volume Description)、路径表(Path Table)以及目录文件(Directory File)。
路径表中包含了光盘盘片上的所有目录文件的记录,这些记录称为路径表记录(Path Table Record)。每一个路径表记录与一个实际的目录文件相对应,而路径表记录在路径表中的排列顺序和及其内容本身,一起反映了实际的目录文件在整个光盘文件系统中的目录层次关系。
为了更好地说明方法中构造虚拟光盘路径表的方法,借用数据结构中的术语对路径表作如下描述:
路径表所反映的光盘文件系统各个层次的目录文件共同构成一棵“树”,每个目录文件本身是整棵树的一个“节点”,而路径表记录相当于表示树节点的一种存储结构形式。整个路径表就是反映整棵“树”的层次关系,属于一种链表结构。根据ISO-9660标准可知,路径表记录中记录了其父目录的在路径表中的绝对序号。从数据结构的观点来看,也就是说路径表记录所代表的“树节点”(目录文件)中附设了一个指示其“双亲节点”(父目录)在链表中的绝对位置。这是一种典型的树的双亲表示法。
如图3所示,其中图3(a)是由树节点R、A、B、C、D、E、F、G、H、K构成的一棵有层次关系的树,图3(b)是整棵树层次关系的双亲链表结构,每个树节点都对应双亲链表结构中的一个记录,并按其在树中所处的层次关系依次编号,这就是树节点的绝对序号。所有记录按照绝对序号大小排列,而记录本身有一项内容就是用来记录其双亲节点在链表结构中的绝对序号。这样,每一棵树都有一个链表结构相对应,反过来,一个链表结构就描述了一棵树的层次关系。路径表记录的内容就类似右图中反映整棵树层次关系的双亲链表结构。
抽象出路径表的“双亲链表”结构后,每一张物理光盘的路径表就是一个表示此光盘文件系统“树”层次关系的“双亲链表”。构造新的虚拟路径表的任务就归结为根据原来多张物理光盘本身的“双亲链表”重新构造一个大的“双亲链表”,使得这个大的“双亲链表”所反映的“大树”结构符合新构造的目录文件系统。
从图1可以知道,每一张物理光盘路径表所对应的“树”结构分别是虚拟光盘的路径表所对应的“大树”中的一颗“子树”。由子树的“双亲链表”重新构造大树的“双亲链表”则是构造虚拟光盘路径表的关键。
因为在ISO-9660标准中,各节点记录中只是记录了其双亲在路径表中的绝对序号,而非相对序号。这样使得尽管从“子树”构成“大树”的角度来看非常简单的事变得复杂化了,因为各子树原来的绝对序号在新的大树下全部都发生了变化,而且这种变化是随所集成的子树“数目”、各子树的“深度”、每一个节点本身“度”的不同而变化的。
本发明正是在占用系统资源尽量少的情况下,根据各“子树”原来的结构而得知其每个节点的在新“大树”下的绝对序号,从而构造一个反映虚拟光盘实际目录层次结构的路径表。
本发明提出的方法说明如下:
设所构造的虚拟光盘需要集成的光盘数目为M,即通过M棵子树来构造一棵大树。为说明问题方便,作如下记号:
1.记aij为第i个物理光盘、第j层次上所有目录记录的数目。其中i∈[1,M],j∈[1,Li],Li为第i个物理光盘的最大层次,即第i棵子树的“深度”。每个物理光盘的根为第一层。
2.记N为所有物理光盘里最大的层次数目,即N=max(L1,L2,…,LM)。
3.由aij构成一个M×N的矩阵A,称为链表矩阵。 A = a 11 a 12 · · · · · · a 1 N a 21 a 22 · · · · · · a 2 N · · · · · · a M 1 a M 2 · · · · · · a MN 其中aij若因为下标超出了实际意义的界限,则令其值为0。
4.由链表矩阵A得到一个M×N的衍生矩阵R,衍生矩阵R中的元素Rmn与aij的关系由如下的递推关系式表示: R mn = R m , n - 1 + Σ i = 1 m - 1 a l , n - 1 + Σ j = m + 1 M a j , n 类似的,式中所有若因为下标超出了实际意义界限的元素,其值为0。
5.记Dijk为第i个物理光盘、第j层次上、在路径表所反映的子树双亲链表里绝对序号为k的目录记录在新的虚拟光盘路径表所反映的大树双亲链表里的绝对序号。并有如下关系式:
                          Dijk=c+k+Rij其中c为常数1。
6.记Pijk为第i个物理光盘、第j层次上、目录记录里的双亲指针项里存放的值为k的目录,即其父目录在路径表所反映的子树双亲链表里绝对序号为k的目录记录。
7.记Sik为第i个物理光盘、在路径表里绝对序号为k的目录记录文件存储在虚拟光盘文件系统存储区域中的绝对地址。这个地址值是根据具体系统实现时,其对存储空间规划的策略所决定的。
有了以上的计算式后,在建立新的“大树”双亲链表(即描述虚拟光盘层次结构的路径表)时,就可以根据每棵“子树”的双亲链表(即描述具体物理光盘层次结构的路径表)按如下步骤进行:
1.依次扫描各物理光盘路径表,得到有关各物理光盘路径表的参数aij、Li,同时将各路径表记录中的目录文件地址指针由原来指向物理光盘的地址值修改为指向虚拟光盘文件系统存储区域的地址值Sik。因为一次扫描时只需处理一个物理光盘的路径表,所以只需分配一块能够容纳最大路径表的缓存区域即可,所有物理光盘的路径表都可以重复使用这一块内存区域。
2.由Li可以得到N,最后得到由aij构成的M×N的链表矩阵A。
3.由链表矩阵A得到衍生矩阵R。
4.再依次修改各物理光盘路径表所代表的子树双亲链表里面的双亲指针,将Pijk里的双亲指针以Di(j-1)k的值取代,即由原来物理光盘路径表里的双亲序号修改为其在新的虚拟光盘路径表下的双亲序号。在具体操作时,仍然只需依次处理各物理光盘的路径表,所以同样只需分配一块能够容纳最大路径表的缓存区域即可,所用物理光盘路径表的处理都可以重复使用这一块内存区域。而且这里分配的缓存区域可以就是在步骤1中分配的缓存区域。
5.在所有物理光盘路径表所代表的的子树前,再加上一个反映虚拟光盘大树结构的总的根记录。这样原来各子树的根记录则变为属于此大树根记录的节点。
6.按照ISO-9660有关路径表层次格式的规定,依次将所有修改好的物理光盘路径表中的相关记录直接拷贝到虚拟光盘路径表存储区域中即可。此时系统需要开辟一块能够容纳虚拟光盘路径表大小的缓存区,而各物理光盘路径表的缓存区仍然可以重复利用步骤1中分配的缓存区域。
至此虚拟光盘的路径表构造完成。
可以看到,通过本发明提出的方法来构造虚拟光盘的路径表,在嵌入式的系统应用里面具有非常优越的特性。因为它只需开辟很少一块的系统缓存区域,就可以完成原本需要非常大的缓存区域才能完成的工作。而且这种方法所需要分配的缓存区域是不随虚拟光盘存储系统本身集成规模变化而变化的,是可以预估计的。
而且实际上,此方法并不局限在嵌入式系统中应用,此方法在其他需要构造多个物理光盘为一个大的虚拟光盘的应用中也同样适应。
本发明在构造目录文件时,需要把各物理光盘上原有的所有目录文件从原来的物理光盘上读取出来,然后修改其目录文件记录里的地址指针:即使所有目录文件中的“目录记录”里的地址指针都重新指向虚拟光盘文件系统存储区域的地址值,而目录文件中的“文件记录”里的地址指针则需要加上物理光盘盘片的分页映射偏移地址。然后将其保存到指定地址的虚拟光盘文件系统存储区域中。
本发明的主卷描述幅按ISO-9660标准构造,但应把其中的根目录记录以路径表构造方法步骤5中产生的新的根目录记录代替。
本发明的中止卷描述幅只需按ISO-9660标准构造。
本发明提出的一种采用上述构造虚拟光盘文件系统方法的虚拟光盘存储系统的硬件实现结构。其中SCSI协议控制器使得整个虚拟光盘存储系统成为一个SCSI目标设备,由其完成虚拟光盘存储系统与操作系统方SCSI主设备的通讯任务。IDE接口的硬盘驱动器设备是专门用来存储虚拟光盘文件系统结构的存储区域,不但用于保存所有物理光盘上的文件系统备份,而且保存所有已经按ISO-9660的要求重新构造好的虚拟光盘文件系统。多台IDE接口的光盘驱动器设备是用来分别负责读取物理光盘上数据的,每个光盘驱动器分别负责读取放入其本身的那一张物理CD-ROM光盘盘片上的内容。总线多路选择模块用于实现存储空间的分页映射机制,即存储系统通过电路上的总线开关就可以选择相应的物理CD-ROM光盘进行读盘操作。单片机控制器是整个系统的控制核心。
本发明具备如下一些优点:
1.系统响应速度快。因为虚拟文件系统的文件结构已经完全存储在IDE接口的硬盘设备上了,而硬盘驱动器的数据读取速度远远高于光盘驱动器的数据读取速度,所以系统在响应操作系统方对文件系统的数据读取时,速度要优于普通的光盘驱动器。尤其是在系统集成的光盘盘片数目增加时,把操作系统方常用的文件系统结构存储在读取速度更快的硬盘驱动器上,会大大提高系统的响应速度。
2.系统扩充性能增加。因为在这样的硬件系统里,已经把所有有关物理光盘盘片的文件系统结构进行了备份,并保存在硬盘驱动器上。当系统需要重新更换某一张物理光盘盘片时,只需要修改相应光盘盘片的备份数据,而其他未变化的光盘盘片就无需再进行文件系统结构的扫描工作,只需继续利用它们在硬盘驱动器上的备份数据即可。这样系统在更换物理光盘盘片后,再重新构造新的虚拟光盘盘片的文件系统时,就可以节省很多时间和CPU的资源,大大地增强了系统的扩充性能。
3.系统整体性能更好。因为采用了一个光盘驱动器与一张物理CD-ROM光盘盘片相对应的办法,所以系统在根据存储空间的分页映射机制,选择相应的物理CD-ROM光盘时,就无需借助机械手的换盘动作,而直接依靠电路上的总线开关就可以选择相应的物理CD-ROM光盘,所以盘片选择速度块,用户几乎感觉不到有光盘盘片切换的操作。这么快的盘片更换速度使的虚拟光盘在性能上与实际使用一张物理光盘几乎完全一样,而且在其他诸如读取盘片文件系统结构性能上,还要优于实际的物理光盘。
4.系统结构更为紧凑合理。因为本系统中利用电路总线开关实现了物理光盘盘片的选择和切换,而不是一个对立的光盘库机械手装置,所以系统不但提高了其响应速度,而且不用采用任何机械装置,这样就避免了由于机械装置控制和定位而带来的系统响应速度瓶颈问题。
5.系统设计经济性好。尽管本系统设计方案采用了多台CD-ROM光盘驱动器,使得系统实现成本好像提高了,但考虑到其所带来的在系统性能上的提高,以及本发明中使用的是性价比非常高的IDE接口的光盘驱动器设备,所以总的来说,系统实现方案的经济性还是非常好的。
附图简要说明:
图1是虚拟光盘树状层次化目录结构的组织形式示意图。
图2是基于媒体交换设备的一种虚拟光盘存储系统硬件实现。
图3是代表物理光盘路径表的子树与其双亲链表的关系示意图。
图4是本发明提出的一种新的实现虚拟光盘存储系统的硬件电路结构框图。
下面结合附图详细说明本发明对即插即用的超大容量虚拟光盘存储系统的实施例,其硬件结构如图4中虚线框所示。包括:一个硬盘驱动器、多个光盘驱动器,SCSI协议控制器、单片机控制器、在单片机控制下的总线多路选择模块,以及连接各模块的系统内部总线和IDE总线。所说的硬盘驱动器、和多个光盘驱动器均与IDE总线相连,而系统内部总线则负责连接SCSI协议控制器、单片机控制器和总线多路选择模块。
在本实施例中,虚拟光盘存储系统中一共存在着7个光盘驱动器,所以系统一共可以集成7张物理光盘,这样每个光盘驱动器里正好可以存放一张物理光盘盘片。接在IDE总线上的还有一个硬盘驱动器,用于存放虚拟光盘的文件系统和各物理光盘上文件系统的备份。硬盘驱动器和光盘驱动器都是标准的计算机外设产品,对其操作分别使用ATA接口命令集和ATAPI/CD-ROM命令集。
这些IDE接口的驱动器设备都在单片机发出的控制总线作用下,通过总线多路选择而与内部总线相连。总线多路选择模块是由普通的3-8译码电路构成的,所谓总线选通其实只需要选通各路IDE设备的片选信号线即可。
与内部总线相连的还有SCSI协议控制器和单片机控制器。SCSI协议控制器是为了使整个虚拟光盘存储系统成为一个标准的SCSI外设。这里采用的是Adapetec公司的协议控制器芯片AIC-33C94C,其外围设计电路参看其硬件设计手册。
单片机控制器是整个系统工作的核心。在系统初始化过程中,它负责完成整个虚拟光盘存储系统的文件系统构造和管理工作。在本实施例中,采用的是通常用的8位单片机系列。
系统工作过程简述如下:系统在上电初始化后,判断“虚拟光盘”的文件系统(符合ISO-9660标准)是否存在于系统的硬盘驱动器中,若不存在,则根据本发明提供的方法构造“虚拟光盘”的文件系统,并把它保存在系统的硬盘驱动器中,以备以后开机时直接使用。
在本实施例中,构造超大容量虚拟光盘文件系统的方法具体步骤如下:
1.依次扫描所集成的7个物理光盘里的路径表,得到有关各物理光盘路径表的参数aij、Li,其中i=1、2、3、4、5、6、7。同时将各路径表记录中的目录文件地址指针由原来指向物理光盘的地址值修改为指向虚拟光盘文件系统存储区域的地址值:即其存储在硬盘驱动器中的地址值。
2.由Li可以得到N,最后得到由aij构成的7×N的链表矩阵A。
3.由链表矩阵A得到衍生矩阵R。
4.再依次修改各物理光盘路径表所代表的子树双亲链表里面的双亲指针,将Pijk里的双亲指针以Di(j-1)k的值取代。
5.在所有物理光盘路径表所代表的的子树前,再加上一个反映虚拟光盘大树结构的总的根记录。这样原来各子树的根记录则变为属于此大树根记录的节点。
6.按照ISO-9660有关路径表层次格式的规定,依次将所有修改好的物理光盘路径表中的相关记录直接拷贝到虚拟光盘路径表存储区域中。
至此虚拟光盘的路径表构造完成。
在构造目录文件时,需要把7张物理光盘上原有的所有目录文件从原来的物理光盘上读取出来,然后修改其目录文件记录里的地址指针:将“目录记录”里的地址指针都重新指向其在硬盘驱动器里的存储地址;而“文件记录”里的地址指针则需要加上物理光盘盘片本身的分页映射偏移地址。然后将所有的目录文件都保存到指定地址的硬盘驱动器中。
主卷描述幅按ISO-9660标准构造,但应把其中的根目录记录以方法步骤5中产生的新的根目录记录代替。
中止卷描述幅只需按ISO-9660标准构造。
至此一个新的集成了7个物理光盘的虚拟光盘文件系统就完全构成了。
在系统运行过程中,单片机通过SCSI协议控制器,接受SCSI总线上计算机主机发出来的SCSI命令,然后根据不同的SCSI命令作相应地处理。若是读取虚拟光盘盘片上的信息,则需要根据命令中的地址来进行分页选择处理。
在本虚拟光盘存储系统实施例中,把SCSI命令集所提供的大容量连续存储空间一共分成8页,第0页对应存放有虚拟光盘文件系统等信息的硬盘驱动器,第1页~第7页分别对应7个光盘驱动器。单片机在运行中,根据SCSI命令里地址所处的页空间范围,而控制总线多路选择模块,选择与其对应的驱动器设备,使其接入系统的内部总线。然后单片机根据SCSI命令需要完成的功能,分别将其转换为硬盘驱动器能够接受的ATA命令或光盘驱动器能够接受的ATAPI命令。选通的驱动器设备接收来自单片机的命令后,把所需要读取的数据通过SCSI协议控制器返回给操作系统主机方。

Claims (2)

1.一种构造超大容量虚拟光盘文件系统的方法,其特征在于:包括构造符合本虚拟光盘存储系统实际装载光盘盘片情况的、符合ISO-9660标准的路径表、目录文件、主卷描述幅、中止卷描述幅的方法;具体步骤如下:
(1)设定符号的定义
设所构造的虚拟光盘需要集成的物理光盘数目为M,定义如下符号:
1).记aij为第i个物理光盘、第j层次上所有目录记录的数目。其中i∈[1,M],j∈[1,Li],Li为第i个物理光盘的最大层次;
2).记N为所有物理光盘里最大的层次数目,即N=max(L1,L2,…,LM);
3).由aij构成一个M×N的矩阵A,称为链表矩阵; A = a 11 a 12 · · · · · · … a 1 N a 21 a 22 · · · · · · a 2 N · · · · · · a M 1 a M 2 · · · · · · a MN 其中aij若因为下标超出了实际意义的界限,则令其值为0;
4).由链表矩阵A得到一个M×N的衍生矩阵R,衍生矩阵R中的元素Rmn与aij的关系由如下的递推关系式表示: R mn = R m , n - 1 + Σ i = 1 m - 1 a l , n - 1 + Σ j = m + 1 M a j , n
类似的,式中所有若因为下标超出了实际意义界限的元素,其值为0;
5).记Dijk为第i个物理光盘、第j层次上、在路径表里绝对序号为k的目录记录在新的虚拟光盘路径表里的绝对序号,并有如下关系式:
                           Dijk=c+k+Rij其中c为常数1;
6).记Pijk为第i个物理光盘、第j层次上、目录记录的父目录在路径表里的绝对序号为k的目录记录;
7).记Sik为第i个物理光盘、在路径表里绝对序号为k的目录记录文件存储在虚拟光盘文件系统存储区域中的绝对地址;
(2)按上述定义构造所说的路径表:
1).依次扫描各物理光盘路径表,得到有关各物理光盘路径表的参数aij、Li,同时将各路径表记录中的目录文件地址指针由原来指向物理光盘的地址值修改为指向虚拟光盘文件系统存储区域的地址值Sik
2).由Li可以得到N,最后得到由aij构成的M×N的链表矩阵A;
3).由链表矩阵A得到衍生矩阵R;
4).再依次将各物理光盘路径表中Pijk的父目录绝对值以Di(j-1)k值取代;
5).在所有物理光盘路径表前,再加上一个反映虚拟光盘结构的总的根记录;
6).按照ISO-9660有关路径表层次格式的规定,依次将所有修改好的物理光盘路径表中的相关记录直接拷贝到虚拟光盘路径表存储区域中即可;
(3)构造所说的目录文件的步骤为;把各物理光盘上原有的所有目录文件从原来的物理光盘上读取出来,然后使所有目录文件中的“目录记录”里的地址指针都重新指向虚拟光盘文件系统存储区域的地址值,而目录文件中的“文件记录”里的地址指针则需要加上物理光盘盘片的分页映射偏移地址;然后将其保存到指定地址的虚拟光盘文件系统存储区域中;
(4)构造所说的主卷描述幅步骤为:把主卷描述幅中的根目录记录以路径表构造中步骤5所产生的新的根目录记录代替,再按ISO-9660标准构造其他内容;
(5)构造所说的中止卷描述幅完全按ISO-9660标准进行。
2.一种采用如权利要求1所述方法的实现超大容量虚拟光盘存储系统的硬件结构,其特征在于,系统由一个硬盘驱动器、多个光盘驱动器,SCSI协议控制器、单片机控制器、在单片机控制下的总线多路选择模块,以及连接各模块的系统内部总线和IDE总线构成;所说的硬盘驱动器、和多个光盘驱动器均与IDE总线相连,而系统内部总线则负责连接SCSI协议控制器、单片机控制器,所说的总线多路选择模块分别与IDE总线和系统内部总线相连接。
CNB001074903A 2000-05-19 2000-05-19 超大容量虚拟光盘文件系统构造方法及其系统 Expired - Fee Related CN1137441C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB001074903A CN1137441C (zh) 2000-05-19 2000-05-19 超大容量虚拟光盘文件系统构造方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB001074903A CN1137441C (zh) 2000-05-19 2000-05-19 超大容量虚拟光盘文件系统构造方法及其系统

Publications (2)

Publication Number Publication Date
CN1272650A true CN1272650A (zh) 2000-11-08
CN1137441C CN1137441C (zh) 2004-02-04

Family

ID=4578739

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB001074903A Expired - Fee Related CN1137441C (zh) 2000-05-19 2000-05-19 超大容量虚拟光盘文件系统构造方法及其系统

Country Status (1)

Country Link
CN (1) CN1137441C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100409195C (zh) * 2005-01-18 2008-08-06 英业达股份有限公司 建立储域网络系统的方法
CN102622352A (zh) * 2011-01-26 2012-08-01 深圳市闪联信息技术有限公司 一种实现共享文件的方法、服务器及系统
CN106202414A (zh) * 2016-07-12 2016-12-07 武汉光忆科技有限公司 一种基于大容量光盘库的文件系统及文件存储方法和系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100409195C (zh) * 2005-01-18 2008-08-06 英业达股份有限公司 建立储域网络系统的方法
CN102622352A (zh) * 2011-01-26 2012-08-01 深圳市闪联信息技术有限公司 一种实现共享文件的方法、服务器及系统
CN102622352B (zh) * 2011-01-26 2015-02-25 北京闪联云视信息技术有限公司 一种实现共享文件的方法、服务器及系统
CN106202414A (zh) * 2016-07-12 2016-12-07 武汉光忆科技有限公司 一种基于大容量光盘库的文件系统及文件存储方法和系统
CN106202414B (zh) * 2016-07-12 2019-11-22 武汉光忆科技有限公司 一种基于大容量光盘库的文件系统及文件存储方法和系统

Also Published As

Publication number Publication date
CN1137441C (zh) 2004-02-04

Similar Documents

Publication Publication Date Title
US9274950B2 (en) Data restructuring in multi-level memory hierarchies
KR102438308B1 (ko) 구역화된 네임스페이스들에 대한 내구성 그룹들의 적용
JP6910131B2 (ja) 多重モード動作のための多重パーティションを含む格納装置、及びその動作方法
JP6890401B2 (ja) 多重モード格納管理装置、多重モード格納装置、及びその選別潜在露出(sue)マッピング動作方法
JP5238685B2 (ja) フラッシュ・ストレージの離散領域を記述して問い合わせること
CN101840308B (zh) 一种分级存储系统及其逻辑卷管理方法
TWI385517B (zh) Storage device and data management method
US20170206161A1 (en) Multi-tiered caching for data storage management in a device
EP2939120A1 (en) Priority-based garbage collection for data storage systems
CN1258713C (zh) 基于磁盘特征的数据分布动态映射的方法
CN1867911A (zh) 便于对象系统之间文件属性管理的升级和降级技术
US20120011127A1 (en) Database management method and database server system using the same
US10198203B2 (en) Method of operating memory device using pseudo-random functions, memory device using the same and memory system including the device
CN104598386B (zh) 通过追踪和利用二级映射索引重复利用固态驱动器块
CN101419573A (zh) 一种存储管理的方法、系统和存储设备
US20120271994A1 (en) Method and data storage system for providing multiple partition support
CN1719422A (zh) 一种存储器文件数据虚拟存取方法
CN105718206A (zh) 能够感知raid的闪存转换层及其实现方法
JP2004272324A (ja) ディスクアレイ装置
CN1447242A (zh) 可适用于快闪存储卡的控制装置及其建构方法
CN1896960A (zh) 一种快照系统及方法
KR101438667B1 (ko) 비휘발성 램 기반의 b+ 트리 데이터베이스화 방법
CN1137441C (zh) 超大容量虚拟光盘文件系统构造方法及其系统
CN1841522A (zh) 记录和再现装置
CN1254735C (zh) 用于减少碎片的方法

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee