首页> 中国专利> 具有读写请求的可参数化浮动管理的操作系统级数据处理平台的硬盘软件仿真方法

具有读写请求的可参数化浮动管理的操作系统级数据处理平台的硬盘软件仿真方法

摘要

本发明涉及一种具有读写请求的浮动参数调整管理的、用于在其操作系统处软件仿真计算机平台的硬盘的方法。本发明的方法包括以下步骤:第一步,创建实际硬盘的表示,其中可以调整计算机平台的操作系统的某些组件的加载和执行顺序;第二步,将一个或多个外围设备驱动器加载到计算机平台上,其中驱动器包括至少一个支持与包含来自被仿真硬盘的数据的数据存储介质进行实际对话的外围设备驱动器;以及第三步,为操作系统仿真实际硬盘的行为。

著录项

  • 公开/公告号CN1977253A

    专利类型发明专利

  • 公开/公告日2007-06-06

    原文格式PDF

  • 申请/专利权人 魁里斯特姆技术公司;

    申请/专利号CN200580015235.7

  • 发明设计人 伊维斯·加特格诺;

    申请日2005-03-14

  • 分类号

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人赵科

  • 地址 法国让蒂伊

  • 入库时间 2023-12-17 18:42:04

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2011-04-13

    授权

    授权

  • 2010-06-16

    专利申请权的转移 IPC(主分类):G06F13/10 变更前: 变更后: 登记生效日:20100512 申请日:20050314

    专利申请权、专利权的转移

  • 2007-09-05

    专利申请权、专利权的转移专利申请权的转移 变更前: 变更后: 登记生效日:20070810 申请日:20050314

    专利申请权、专利权的转移专利申请权的转移

  • 2007-08-01

    实质审查的生效

    实质审查的生效

  • 2007-06-06

    公开

    公开

说明书

技术领域

本发明涉及一种具有读写请求的可参数化浮动(on-the-fly)管理的操作系统级数据处理平台硬盘软件仿真方法。

背景技术

特别地,其允许一个或多个被仿真硬盘的完全仿真,数据处理平台、诸如个人计算机(PC)的操作系统觉得其为真正的硬盘;包含在被仿真硬盘中的数据可以被存储在任意类型的载体(support)上,诸如网络上的服务器、CD-R、DVD-ROM、闪速存储器或外部硬盘。

本发明还允许硬盘系统的完全仿真,即允许在完全加载其组件被存储在所述被仿真硬盘上的操作系统之后启动计算机的硬盘。

一般而言,已知在目前所使用的微型计算机中,操作系统、应用程序以及属于用户的数据被存储在可通过计算机的中央处理器存取的硬盘中。

硬盘表现为多个盘的堆叠,其不同表面可通过头梳(head combs)存取;扇区被记录在每个磁道上。

例如,对于IBM PC兼容微型计算机,BIOS(基本输入/输出系统)利用程序循环读取或写入来自或到硬盘的信息。应用程序可以使用BIOS读取或写入硬盘,经由“int 13h”软件中断直接在扇区级、或者更经常地经由“int21h”软件中断通过文件系统。

硬盘的第一个扇区包括在计算机启动时由BIOS加载到存储器中并启动的特定程序。该程序称作“MBR”(主引导记录),其控制盘的可能的分区为几个被称作“分区”的子空间。这些“分区”可以被分配给用户在启动计算机时可以选择的不同操作系统。一旦作出选择,包含在每个分区的第一扇区内的程序(被称作“引导”)被依次加载,并启动。其任务是加载存储在硬盘相应分区上的操作系统,并启动其。随后的扇区用于在文件中保留的空间。

因此,当启动时,微型计算机开始将包含在硬盘中的操作系统、然后是应用软件以及用户数据加载到其随机存取存储器(RAM)。

已经证明,在这些启动操作期间,最轻微的异常也经常导致引起微方法器(micromethodor)冻结的扰动。

此外,为了安全,在许多情况下,只有在输入和识别密码(标识符)之后被验证的特定用户才能访问包含在硬盘中的操作系统和/或特定文件。特别地,已经发现,在作为被几个用户作为网络操作的系统中,这种类型的安全由于其管理的复杂而越来越多地导致问题。

发明内容

因此,本发明更特别地具有通过设计一种方法来消除这些缺点的目的,该方法在数据块、也被称作扇区的级别或在文件系统级完全仿真硬盘的软件,因此允许使用任何类型的被仿真硬盘中的操作系统所接受的文件系统。

根据本发明,该方法特别地以下面的事实为特征:其包括:在第一步骤中创建实际硬盘的表示,其中可以适应数据处理平台的操作系统的特定组件的加载和执行顺序,然后在第二步骤中,在所述数据处理平台上加载一个或多个外围设备驱动器上,其中至少一个外围设备驱动器允许与包含被仿真硬盘数据的数据存储载体进行实际对话,然后在第三步骤中仿真操作系统的实际硬盘的行为。

对于在此使用的术语“载体”,在此以及在剩余的描述中,其指的是任何允许易失性或非易失性存储处理数据的系统;该术语同样表示硬盘、CD-ROM、磁带或可以通过计算机网络存取的数据服务。

此外,本发明提供在被仿真硬盘上所执行的写操作的特定处理。例如,如果所述被仿真硬盘的数据存储载体不是可随意重写的介质,例如CD-ROM,则被记录数据可以被存储在读写存储器中或者接受浮动写操作的载体、诸如实际的本地硬盘上。被写入数据的特定处理允许标准仿真的“易失性”被仿真硬盘的建议,即在重新启动仿真之后不保留被仿真硬盘中的变化,其中被仿真硬盘表现完全象正常硬盘。提供其它类型的被写入数据的管理,并且允许本发明的其它使用。

本发明还预见,如果包含被仿真硬盘的数据的数据存储载体允许,例如如果载体是存储在网络服务器上的文件,则几个计算机可以通过所述仿真同时存取被仿真硬盘。在这种情况下,可以使用被称作“多播”的分配方法,以便显著地减少用于在被仿真硬盘的相同部分上执行的几个“客户”计算机所请求的准同步读取的带宽。

由于这些设置,本发明允许解决数据处理平台启动的扰动问题,以及上面提到的安全问题,并且大大简化了数据处理平台的管理。

此外,在由几个用户操作的网络系统的情况下,每个站不再被限制到本地加载的应用程序,也不再被限制到平台的正式用户。此外,由用户造成的错误也不再影响网络系统的总功能。

具体实施方式

这样,更精确地,由于上述外围设备驱动器之一的中间性(intermediacy),根据本发明的方法允许被仿真硬盘和操作系统之间以实际硬盘的《方式》对话,方法是通过在启动过程的所有阶段以及在传统保留到微软件(例如BIOS)的阶段期间和在由该操作系统自身处理的阶段期间,为操作系统仿真实际硬盘的行为,特别地,通过操作系统的硬盘管理组件。该总仿真、包括启动的可能性、可能需要调整特定操作系统组件的加载和执行顺序。数据写入的管理要求:在外围设备驱动器级和/或在网络上硬盘的可选服务器服务级完成到被仿真硬盘的操作系统发布。这种管理允许存储被写入数据,这取决于所述外围设备驱动器和/或所述网络上硬盘服务器服务的参数设置。

·直接在包含被仿真硬盘的载体上

·或者在操作系统利用被仿真硬盘可存取的存储器、随机存取的或虚拟的、中,

·或者在操作系统利用被仿真硬盘可存取的易失性存储空间中,

·或者在操作系统利用被仿真硬盘可存取的非易失性存储空间中,

·或者在数据处理网络上被仿真硬盘的服务器服务可存取的易失性存储空间中,

·或者在数据处理网络上被仿真硬盘服务器服务可存取的非易失性存储空间中。

数据读取的管理要求:以这样的方式在外围设备驱动器级和/或在网络上可选硬盘服务器服务级完成被发布到被仿真硬盘的操作系统,其中对于客户站,在适当的存储空间中执行先前写入的数据的读取,即:

·直接在包含被仿真硬盘的载体中,

·或者在操作系统利用被仿真硬盘可存取的随机存取或虚拟存储器中,

·或者操作系统利用被仿真硬盘可存取的易失性存储空间中,

·或者在操作系统利用被仿真硬盘可存取的非易失性存储空间中,

·或者在数据处理网络上被仿真硬盘服务器服务可存取的易失性存储空间中,

·或者在数据处理网络上被仿真硬盘服务器服务可存取的非易失性存储空间中。

如果在被仿真硬盘的数据可以经由数据处理网络被客户站存取时,被称作“服务器软件”的特定程序一方面在数据处理网络站之一上负责经由网络与存取被仿真硬盘的客户站的通信,另一方面负责存取包含被仿真硬盘数据的数据载体。

如果被仿真硬盘要被启动,则低级微软件模块负责存取包含在被仿真硬盘中的数据。所述软件模块提供微软件类型(例如,BIOS)的接口,以便允许较好地执行加载操作系统组件的功能,其传统上由微软件在操作系统启动期间从实际硬盘上加载。

在PC兼容计算机的情况下,该微软件可以使用13h中断管理器,因而为操作系统提供后者使用的接口。

在使用PXE型启动存储程序(PXE启动PROM)的计算机的情况下,该微软件使用这些PROMS可用的功能,以便与所使用的网络接口模型无关地控制经由数据处理网络的通信。

低级微软件被加载在客户站的存储器中并且例如通过使用启动PROM、诸如PXE启动芯片可用的功能而被执行。

低级微软件也可以被加载在客户站的存储器中,并且作为客户站的基础微软件组件(例如,BIOS)被执行。特别地,所述低级微软件执行与通常由标准基础微软件所提供的实际硬盘上的存取服务相同的功能。例如,在包含在被仿真硬盘中的数据被存储在光盘、诸如CD或DVD上的情况下,低级微软件可以作为BIOS的一部分由客户站的制造者提供,从而从光盘提供BIOS启动功能。

低级微软件最终可以从由客户站作为启动外围设备支持的第三方数据载体、诸如磁盘、实际硬盘或光盘而被加载到客户站的存储器中,然后由客户站执行。

可以注意到,如果包含在被仿真硬盘中的一些数据由客户站经由数据处理网络存取,则由客户站的操作系统加载和执行的至少一个外围设备驱动器经由数据处理网络提供与服务器软件的通信功能,其中服务器软件负责提供硬盘仿真服务。

如果包含被仿真硬盘数据的数据载体是不支持实时写入的载体、例如光学CD-ROM盘,或者[如果]根据本发明的硬盘仿真系统被参数化成不接受直接写入包含被仿真硬盘数据的载体中的数据,例如,由几个客户站同时使用的被仿真硬盘,则外围设备驱动器和/或由在客户站提供硬盘仿真的网络数据处理站所执行的服务器软件可以以这样的方式实现由操作系统发布到被仿真硬盘的数据写入请求,使得被写入数据被存储在不同于包含被仿真硬盘数据的数据载体的存储空间中。

例如,由客户站操作系统发布到被仿真硬盘的数据写入请求以这样的方式被处理,使得被写入数据被存储在客户站的随机存取存储器中。

由客户站的操作系统发布到被仿真硬盘的数据写入请求可以以这样的方式被处理,使得被写入数据被存储在客户站的虚拟存储器中,即客户站的操作系统可存取的并且用作附加存储空间的数据文件中;或者以这样的方式被处理,使得被写入数据被存储在客户站的操作系统可存取的数据文件中。

由操作系统发布到被仿真硬盘的数据写入请求在给定时刻被重新定向到一个以及仅仅一个存储空间。在客户站操作系统的操作会话期间,可以当场改变被写入数据被重定向到的存储空间。用于存储被写入数据的存储空间可以是易失性的,即在客户站操作系统的每个新操作会话时转储被存储的数据;或者是非易失性的,以便允许操作系统的操作会话的被写入数据从一个客户站持续到另一个客户站。当其具有意义时,参数化用于存储被写入数据的存储空间的易失性或持续性。在客户站操作系统的操作会话初始化时确定重定向被写入数据的易失性特征;如果当场修改,则其只在后者启动或重新启动之后影响客户站。

在操作系统的操作会话期间,可以在不同的存储空间中进行由操作系统所发布的数据读取请求。在这种情况下,在不同存储空间中所进行的由操作系统发布到被仿真硬盘的数据读取请求遵循源于数据写入请求不同重定向的先前顺序的优先顺序。

所述优先顺序取决于数据写入请求重定向先前所遵循的次序。这样,保证了从客户站的观点来看,被仿真硬盘总是连贯的;特别地,如果在给定时刻将特定数据D1(被仿真硬盘的扇区或来自文件系统的文件)写入数据空间E1,在这之后数据写入请求被重定向到另一空间E2,然后相同的数据D1(相同的扇区或者相同的文件)被修改并且随后被写入到空间E2,则对D1的读取请求转到空间E2(其具有最高优先权),以便读取D1的最近写入版本。

例如:

1、由于先前数据写入请求,是否在被重定向到该存储空间的客户站的随机存取或虚拟存储器中发现要读取的数据?如果是,则读取它们,否则

2、由于重定向到该存储空间的先前数据写入请求,要读取的数据是否位于作为本发明一部分的客户站外围设备驱动器可存取的缓冲存储空间(例如,文件)中?如果是,则读取它们,否则,

3、被仿真硬盘的数据是否被存储在数据处理网络中的服务器上?如果是,则转到第4项,否则转到第5项。

4、由于重定向到该存储空间的先前数据写入请求,要读取的数据是否位于服务器模块可存取的缓冲存储空间(例如,文件)中?如果是,则读取它们,否则,

5、直接在包含被仿真硬盘的未修改数据的载体中读取数据。

优选地,如果参数化硬盘仿真系统,使得用于特定被仿真硬盘的服务器软件所接收的数据写入请求不被重新定向,而是直接被存储在包含被仿真硬盘数据本身的载体中,则单个客户站可以在给定时刻存取所述被仿真硬盘。

因此,避免了“写入时”并行存取相同数据组的问题。

不重定向数据写入请求的参数化是例如用于为客户站提供新软件组件(例如,新的软件应用程序)的参数化:

·以这样的方式定位存取被仿真硬盘的参数,使得不重定向数据写入请求。

·安装新的软件组件,好像其被安装在实际硬盘上一样。

·关闭进行安装的客户站,

·以这样的方式修改存取被仿真硬盘的参数设置,使得重定向客户站的数据写入请求,

·所有使用所述被仿真硬盘的客户站今后能够存取这个新的软件组件,而不必使其显式地可用于每个客户站。

为了允许几个客户站同时存取相同的被仿真硬盘,服务器软件能够特别地将客户站A所发布的数据写入请求重定向到给定的存储空间中,例如服务器站可存取的存储空间中的文件,并且将由另一客户站B所发送的数据写入请求重定向到另一给定的存储空间中,例如服务器站可存取的存储空间中的另一文件。

为了加速几个客户站同时存取相同的被仿真硬盘,其中被仿真硬盘的数据被包含在服务器站可存取的数据载体中,通过使用“广播”或“多播”机制代替“单播”机制,在硬盘仿真范围内被服务器站发送到客户站的数据可以被全局地并且一次地发送。

由服务器站“广播”或“多播”发送的数据被将其接受在位于所述客户站的存储器(实际或虚拟)中局部缓存中的客户站存储。

优选地,客户站可以删除已经超出指定时间和可参数化(超时)的数据缓存。实际上,这些数据,如果它们不是相干的以及如果它们从未被读取,则可能无用地阻塞客户站的“多播”缓存。

由客户站的操作系统所发布的读取被仿真硬盘中数据的请求只有当所述数据还不存在于所述局部缓存中时才产生发布到服务器站的显式数据读取请求。如果所述数据已经有效地存在于所述局部缓存中,则它们被读取并且被传送到客户站的操作系统。

局部缓存中的读取数据被从其取出,在此之后由客户站读取,以便释放所述局部缓存中的空间。

在提供客户站处硬盘仿真所需功能性的服务器模块级决定在根据本发明的硬盘仿真的范围内通过“多播/广播”或“单播”发送数据。

在根据本发明的硬盘仿真的范围内,客户站可以修改它们的用于接收由服务器站经由“广播/多播”所发送的数据的预约。例如,一旦客户站已经从被仿真硬盘启动以及[一旦]允许一个或多个使用者利用客户站的人/机接口是可用的,则可以取消经由“广播/多播”接收数据的预约,例如通过到一组“多播”地址的取消预约机制,使得完全启动的客户站不再处理“多播/广播”数据的扩散;这被证明是非常有用的,如果由服务器站经由“多播/广播”所发送的数据仅是为了允许存取被仿真硬盘的完全启动客户站操作系统所需的部分,并且不再对已经启动的客户站有用。因此,已经从被仿真硬盘启动的客户站不被启动期间由“广播/多播”发送到客户站的数据污染。

根据本发明,为了允许从相同的被仿真硬盘启动和/或同时存取相同的被仿真硬盘,或者相同被仿真硬盘的100%相同拷贝,则由客户站、例如一个或多个外围设备驱动器、或者由软件服务器加装和执行的构成本发明的特定组件能够浮动地或在它们被操作系统有效使用之前修改包含在被仿真硬盘中的特定数据,例如仅验证网络上一个客户站(例如,计算机名称或IP地址)或者鉴别字段(例如,“有效目录”字段)中客户站的帐户密码、软件程序序号、或者甚至鉴别数据,诸如激活特定微软产品所需的数据。

可以在文件系统类型的虚拟外围设备类别的级别为客户站的操作系统完成仿真本身,诸如产品“Qualystem LiteNET PC 1.x andQualystem LAN PC 2.x”(CIFS或SMB文件系统)或者“QualystemRescue 1.x”(ISO9660/Joliet,CDFS或UDF文件系统)。

也可以在虚拟磁盘外围设备本身类别的级别而不在文件系统级为客户站的操作系统完成仿真。使用这种类型的仿真,例如在产品“Qualystem LAN PC 3.x”(用于驻留在数据处理网络服务器上的被仿真硬盘数据的载体)或者“Qualystem Rescue 2.x and 3.x”中(用于驻留在光盘、CD或DVD的被称作“E1 Torito”的启动部分中的被仿真硬盘的数据的载体)。

在参考站通过软件工具从被称作参考硬盘的、可被所述参考站的操作系统存取的实际硬盘拷贝包含在被仿真硬盘中的重要数据。

软件工具创建包含被仿真硬盘的数据的文件或镜像目录(imagedirectory)(用于新硬盘上仿真的镜像文件,用于文件系统级上仿真的镜像目录)。通过拷贝每个包含在用作创建镜像文件或镜像目录的参考的实际硬盘中的文件,创建所述镜像文件或镜像目录。

在镜像文件的情况下,后者是被认为是位阵列的实际硬盘的位表示的位。其是被使用的位阵列形式的硬盘的逻辑表示。因而,镜像文件包含表示实际硬盘的逻辑设计、诸如主BOOT扇区(MBR,主引导记录)和分区列表所需的信息。其还包含被包含在被仿真硬盘中的分区的启动扇区。如果要启动被仿真硬盘,则可以拖放从实际硬盘创建镜像文件的软件,以在存储在镜像文件中的数据中修改由从被仿真硬盘所加载的操作系统所使用的特定信息,以便操作和执行所述操作系统从所述被仿真硬盘的启动。

为了允许从被仿真硬盘启动,操作系统组件的加载顺序可能需要适应,使得外围设备驱动器根据其而允许存取根据本发明的被仿真硬盘装载的操作系统的所有组件被加载,并且在操作系统需要通过使用外围设备驱动器并且不再使用“固件”功能(BIOS)存取被仿真硬盘时可用。

例如,如果包含在用于启动微型计算机操作系统的被仿真硬盘中的数据被存储在数据处理网络的服务器上的文件中,则允许客户站的操作系统使用所述客户站的网络接口的引导程序必须被加载,并且在操作系统需要经由外围设备驱动器存取被仿真硬盘之前是可用的,以便继续加载;同样,此刻,由允许存取被仿真硬盘的外围设备驱动器所使用的网络协议引导程序必须被加载并且是可用的。

另一个例子是,包含在用于启动微型计算机操作系统的被仿真硬盘中的数据被存储在光盘(CD或DVD)的启动部分中。在这种情况下,允许操作系统存取所述光盘读取器的外围设备驱动器必须被装载,并且在操作系统需要经由外围设备驱动器存取被仿真硬盘之前是可用的,以便继续其加载。

因此,可能出现必须修改允许存取被仿真硬盘的外围设备驱动器所依赖于的组件的加载顺序。

在由客户经由数据处理网络存取被仿真硬盘的数据的情况下,可能涉及的服务器模块可以使被仿真硬盘在网络上可用,方法是通过利用专有协议、诸如目前在Qualystem LAN PC 3中所使用的,或者通过使用适当的第三方协议,例如“标准”协议,以便输出远程硬盘或文件系统,例如协议iSCSI(远程硬盘)或者SMB/CIFS或NFS协议(远程文件系统)。因而,可选服务器模块是“讲(speak)”所使用协议的客户可以连接到的服务,并因此可以存取所述服务可用的数据源。这种可能性存在于所述服务的以可参数的形式管理写入数据、并且特别能够在存储空间中特定于客户站/虚拟硬盘对提供不是所有客户的公共存储空间的存储空间的级别。因此,可以连接到网络上服务器模块可用的被仿真硬盘的客户可以是“标准”客户,例如iSCSI标准客户或SMB/CIFS标准客户,并且例如没必要是QualystemTM LAN-PC 3客户。同样,由客户站所执行的程序、低级软件模块或外围设备驱动器可以使用专有网络协议来存取包含在被仿真硬盘中的数据,诸如Qualystem LAN PC 3的NVD协议或者第三方协议,例如诸如iSCSI或SMB/CIFS的标准。

根据服务器模块级的实现或客户是否实现本发明的功能,因而,通过前述优点,数据写入请求的重定向可以在客户模块级或在服务器模块级有效,或者对这两种类型的模块都有效。

因此,通过本发明的方法,保证了对包含在硬盘中、特别是由多个用户操作的网络系统中的操作系统和/或特定文件的存取的保护,该方法在数据块级或在文件系统级完全仿真硬盘的软件,因此允许在由操作系统接受的任何类型的文件系统的被仿真硬盘中使用。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号