CN102147769A - 提高对主存储装置的访问速度的方法以及存储装置系统 - Google Patents

提高对主存储装置的访问速度的方法以及存储装置系统 Download PDF

Info

Publication number
CN102147769A
CN102147769A CN2011100348393A CN201110034839A CN102147769A CN 102147769 A CN102147769 A CN 102147769A CN 2011100348393 A CN2011100348393 A CN 2011100348393A CN 201110034839 A CN201110034839 A CN 201110034839A CN 102147769 A CN102147769 A CN 102147769A
Authority
CN
China
Prior art keywords
mentioned
ram
storage area
zone
module
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
CN2011100348393A
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.)
Buffalo Inc
Original Assignee
Buffalo Inc
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 Buffalo Inc filed Critical Buffalo Inc
Publication of CN102147769A publication Critical patent/CN102147769A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/30Providing cache or TLB in specific location of a processing system
    • G06F2212/305Providing cache or TLB in specific location of a processing system being part of a memory device, e.g. cache DRAM

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种提高对主存储装置的访问速度的方法以及存储装置系统。RAM磁盘驱动器(112)通过操作用图像(10)受理来自用户的RAM磁盘(122)的容量的指定,即步骤S20。RAM磁盘驱动器(112)在RAM(120)中的操作系统管理外区域的连续的区域中设定RAM磁盘(122),即步骤S30。另外,RAM磁盘驱动器(112)在由用户指定的容量是大于RAM(120)的操作系统管理外区域的容量的情况下,缩小RAM(120)中的操作系统管理区域的范围之后,在操作系统管理外区域中设定RAM磁盘(122)。

Description

提高对主存储装置的访问速度的方法以及存储装置系统
技术领域
本发明涉及一种访问计算机的主存储装置的技术。
背景技术
计算机通常通过操作系统(OS:Operating System)管理其主存储装置中的存储区域。操作系统在接收到来自在计算机中执行的各程序的请求时,从主存储装置的存储区域中的空闲区域中分配与该请求相应的容量的区域。然后,在接受了存储区域的分配的程序结束对该区域的使用时,操作系统释放该区域。通过重复进行该存储区域的分配和释放,主存储装置的存储区域通常成为按照每个程序的分配区域被细分割的状态。
在此,已知一种将主存储装置的存储区域的一部分用作虚拟的外部存储装置的被称为“RAM磁盘”的技术(下述专利文献1等)。在主存储装置中设定该RAM磁盘的情况下,当如上述那样主存储装置的存储区域被细分割时,被分配为RAM磁盘的存储区域也被细分割。这样,产生用户访问RAM磁盘时的访问速度下降的问题。以往确实没有足够的办法应对这种问题。
专利文献1:日本特开平11-85607号公报
发明内容
发明要解决的问题
本发明的目的在于提供一种提高对计算机中使用的主存储装置的访问速度的技术。
用于解决问题的方案
本发明是为了解决上述问题的至少一部分而完成的,能够作为以下的方式或者应用例来实现。
[应用例1]
一种使用计算机的主存储装置的存储区域中的不由上述计算机的操作系统管理的管理外存储区域来提高对上述主存储装置的访问速度方法,该方法具备以下工序:(a)第一模块受理由用户进行的用于指定上述RAM磁盘的容量的设定操作,上述第一模块是将上述主存储装置的一部分区域用作RAM磁盘的模块;以及(b)上述第一模块在上述计算机启动时,将上述管理外存储区域中的连续的区域设定为具有由上述设定操作指定的容量的RAM磁盘的存储区域,其中,上述工序(b)包括以下工序:上述第一模块根据在上述工序(a)中由用户指定的上述RAM磁盘的容量来改变由上述操作系统进行管理的上述主存储装置的存储区域的范围,确保用于上述RAM磁盘的存储区域,
根据该方法,能够将具有由用户指定的容量的RAM磁盘的存储区域设定在主存储装置的管理外存储区域中的连续的区域中。因此,能够提高对主存储装置上的RAM磁盘的访问速度。
[应用例2]
根据应用例1所记载的方法,还具备以下工序:(c)上述第一模块将上述管理外存储区域中没有作为上述RAM磁盘的存储区域而使用的未使用的存储区域的范围写入到注册表中;以及(d)第二模块根据在上述工序(c)中写入到上述注册表中的信息,从上述未使用的存储区域的范围中优先地确保用于上述计算机的外部存储装置的高速缓冲存储区域。
根据该方法,能够将管理外存储区域中的连续的区域用作RAM磁盘、用于固态驱动器等外部存储装置的高速缓冲存储区域。因而能够提高对RAM磁盘的访问速度,并且能够提高用户感受到的对外部存储装置的访问速度。另外,在该方法中,将注册表作为用于从第一模块向第二模块通知管理外存储区域的空闲区域的手段来使用。因而,能够避免产生由不同的程序同时使用不由操作系统管理的管理外存储区域的错误问题。
[应用例3]
一种在计算机中使用的存储装置系统,该存储装置系统具备:主存储装置;以及第一模块,其将上述主存储装置的一部分存储区域用作RAM磁盘,其中,上述第一模块具备:接口模块,其用于由将上述主存储装置的一部分区域用作RAM磁盘的第一模块受理由用户进行的用于指定上述RAM磁盘的容量的设定操作;存储区域设定模块,其用于在上述计算机启动时,将上述主存储装置的存储区域的管理外存储区域中的连续的区域设定为具有由上述设定操作指定的容量的RAM磁盘的存储区域,其中,上述管理外存储区域不由上述计算机的操作系统管理。其中,上述存储区域设定模块根据由上述接口模块受理的、用户指定的上述RAM磁盘的容量来改变由上述操作系统进行管理的上述主存储装置的存储区域的范围,以确保用于上述RAM磁盘的存储区域。
[应用例4]
根据应用例3所记载的存储装置系统,还具备第二模块,该第二模块将上述主存储装置的一部分存储区域作为用于上述计算机的外部存储装置的高速缓冲存储区域而使用,上述第一模块将上述管理外存储区域中没有作为上述RAM磁盘的存储区域而使用的未使用的存储区域的范围写入到注册表中,上述第二模块根据由上述第一模块写入到上述注册表中的信息,从上述未使用的存储区域的范围中优先地确保用于上述外部存储装置的高速缓冲存储区域。
此外,本发明能够通过各种方式实现,例如能够通过提高对主存储装置的访问速度的方法以及执行该方法的存储装置系统、用于实现这些方法或者系统的功能的计算机程序、记录了该计算机程序的记录介质等方式来实现。
附图说明
图1是表示第一实施例中的计算机的结构的概要图。
图2是用于说明RAM的存储区域和本实施例的计算机中的地址空间的分配的示意图。
图3是表示RAM磁盘驱动器为了设定RAM磁盘而执行处理的处理过程的流程图。
图4是表示用于设定RAM磁盘的容量的操作用图像的示意图。
图5是表示计算机重新启动后的地址空间的示意图。
图6是表示用于说明第一比较例和第二比较例的地址空间的示意图。
图7是表示第二实施例中的计算机的结构的概要图。
图8是表示RAM磁盘驱动器为了设定RAM磁盘而执行的处理的处理过程的流程图。
图9是表示注册表设定的一例的说明图。
图10是表示SSD驱动器为了在RAM上设定SSD用高速缓冲存储区域而执行的处理的处理过程的流程图。
图11是表示在RAM上设定RAM磁盘和SSD用高速缓冲存储区域之后的地址空间的示意图。
附图标记说明
10:操作用图像;11、12:第一和第二水平条(level bar);11c、12c:第一和第二复选框;13:滑块;14:确定按钮;15:结束按钮;100、100A:计算机;101:内部总线;110:CPU;112:RAM磁盘驱动器;114:SSD驱动器;120:RAM;122:RAM磁盘;124:SSD用高速缓冲存储区域;130:外部存储装置(HDD);130A:外部存储装置(SSD);140:显示部;150:操作部。
具体实施方式
A.第一实施例:
图1是表示作为本发明的一个实施例的计算机的结构的概要图。计算机100具备中央处理装置(Central Processing Unit:CPU)110、作为主存储装置的RAM(Random Access Memory:随机存取存储器)120、外部存储装置130、显示部140以及操作部150。这些各结构部110~150通过内部总线101相互进行连接。
CPU 110读出保存在外部存储装置130中的操作系统、程序(未图示),展开在RAM 120上来执行。图1表示CPU 110执行作为设备驱动器的一种的RAM磁盘驱动器112的状态。稍后记述RAM磁盘驱动器112的功能。此外,在本实施例的计算机100中,作为操作系统导入了Windows XP(“WINDOWS XP”是微软股份有限公司的注册商标)等32位的操作系统。
RAM 120是易失性的存储元件,由操作系统管理其存储区域的分配、释放。此外,图1表示在RAM 120的存储区域的一部分中设定了RAM磁盘122的状态。稍后记述RAM磁盘122。外部存储装置130是通过硬盘驱动器(Hard disk drive:HDD)构成的非易失性的存储装置,除了保存操作系统、程序以外,还保存有在各程序中使用的设定数据等。显示部140通过液晶显示器等显示装置构成。操作部150通过键盘、鼠标等输入设备构成,受理用户的操作。
图2是用于说明RAM 120中的存储区域(物理存储器)和计算机100中的地址空间的分配的示意图。在本实施例中,设RAM120具有5.0千兆字节(GB)的存储容量。通常32位的操作系统能够设定最大4.0G的地址空间。在此,在4.0GB的地址空间中的末尾的区域中确保用于I/O设备(输入输出设备)、系统的控制的固定的区域。在本说明书中,将该区域称为“控制用区域”。作为控制用区域,例如确保0.5GB的区域。
并且,为了管理物理存储器而分配地址空间中的从开头地址至控制用区域的地址空间。即,在32位的操作系统中,即使RAM 120具有5.0GB的容量,在确保0.5GB的地址空间作为控制用区域的情况下,也只能够对RAM 120的整个存储区域中的从开头起最大3.5GB的存储区域进行管理。在本说明书中,将由操作系统管理的区域称为“操作系统管理区域”,将不由操作系统管理的区域称为“操作系统管理外区域”。在RAM 120上的操作系统管理区域中保存包括操作系统、设备驱动器的各种程序、在这些程序中使用的各种数据。另外,操作系统、程序能够直接访问保存在RAM 120上的操作系统管理区域中的各种数据。
在此,在本实施例的计算机100中,RAM磁盘驱动器112设定紧接控制用区域之后的地址空间并分配为RAM 120的操作系统管理外区域。在图2中示出了在控制用区域之后设定4.0~5.5GB的范围的地址空间(用虚线表示)并分配为RAM 120的1.5GB的操作系统管理外区域的状态。由此,RAM磁盘驱动器112能够访问操作系统管理外区域,并且在操作系统管理外区域中设定作为虚拟的外部存储装置的RAM磁盘122的存储区域。
图3是表示RAM磁盘驱动器112为了设定RAM磁盘122而执行的处理的处理过程的流程图。在步骤S10中,RAM磁盘驱动器112获取计算机100的物理存储器的容量(RAM 120的容量)和RAM 120中的操作系统管理区域的范围。具体地说,RAM磁盘驱动器112也可以从用于BIOS(Basic Input Output System:基本输入输出系统)等设备控制的程序中获取这些信息。在步骤S20中,RAM磁盘驱动器112受理由用户进行的用于指定RAM磁盘122的容量的设定操作。
图4是表示RAM磁盘驱动器112使计算机100的显示部140显示的操作用图像的示意图。计算机100的用户通过对该操作用图像10进行图像上的操作,能够指定RAM磁盘122的容量。操作用图像10具有第一和第二水平条11、12、第一和第二复选框11c、12c、滑块13、确定按钮14以及结束按钮15。
在此,图4的(A)表示正在对第一水平条11执行操作的状态,图4的(B)表示正在对第二水平条12执行操作的状态。第一和第二水平条11、12分别是表示RAM磁盘122的容量的带形状的图像物体。在本实施例中,用户能够指定0GB到3.0GB的容量作为RAM磁盘122的容量。具体地说,用户在与RAM 120的操作系统管理外区域的容量相当的范围(图中是0~1.5GB的范围)内指定RAM磁盘122的容量时,可以对第一水平条11执行操作。另一方面,在超出操作系统管理外区域的容量而指定RAM磁盘122的容量时,可以对第二水平条12执行操作。
此外,在对第一水平条11执行了指定RAM磁盘122的容量的操作时,RAM磁盘驱动器112在后述的处理中不改变操作系统管理区域的范围,就可以设定RAM磁盘122。另外,在对第二水平条12执行了指定RAM磁盘122的容量的操作时,RAM磁盘驱动器112执行与所指定的容量相应地缩小RAM 120中的操作系统管理区域的范围的处理。
操作用图像10中的具体设定操作如下。用户通过在与第一和第二水平条11、12分别对应地设置的第一和第二复选框11c、12c的某一个中加入复选标记(图中用黑圆点表示)来选择操作对象。然后,用户将与第一和第二水平条11、12分别对应地设置的滑块13中的成为操作对象的滑块(图中涂黑的一方)移动到水平条11、12上的表示期望容量的位置处,按下确定按钮14。由此,RAM磁盘122的容量被指定。
此外,在取消该设定操作的情况下,用户不按下确定按钮14而按下结束按钮15即可。另外,在按下确定按钮14之后,可以显示催促用户确认设定的意思的消息,也可以在此时由用户选择是确认设定操作还是使其无效。
在步骤S30中,RAM磁盘驱动器112执行用于在计算机100中设定RAM磁盘122的处理。具体地说,RAM磁盘驱动器112编辑启动文件使得在计算机100重新启动之后对RAM 120的操作系统管理外区域分配地址空间,并将RAM磁盘驱动器112载入到CPU 110中。
在此,在步骤S20中,用户在指定超出操作系统管理区域的范围的容量作为RAM磁盘122的容量时,RAM磁盘驱动器112为了缩小操作系统管理区域的范围而执行以下处理。即,RAM磁盘驱动器112取RAM 120的容量与由用户指定的RAM磁盘122的容量之差,计算出缩小后的操作系统管理区域的范围。并且,在启动文件所包含的操作系统用的Boot.ini文件中配置用于设定操作系统能够使用的存储器的最大容量的/MAXMENM=nn开关,指定缩小后的操作系统管理区域的范围。在此,/MAXMENM=nn开关能够以兆字节(MB)为单位指定设定为操作系统管理区域的物理存储器的容量。具体地说,例如在将操作系统管理区域的范围设为0~2.0GB的范围的情况下,在Boot.ini文件中记述为“/MAXMENM=2048”。
在步骤S40中,RAM磁盘驱动器112使显示部140显示催促重新启动计算机100的意思的消息,使用户执行计算机100的重新启动。通过计算机100的重新启动,由CPU 110读入在步骤S30中编辑的启动文件。由此,对RAM 120的操作系统管理外区域分配地址空间。还启动RAM磁盘驱动器112,并在RAM 120的操作系统管理外区域中设定RAM磁盘122的存储区域。
图5的(A)~(C)分别是表示步骤S40中的计算机100重新启动之后的地址空间的示意图。此外,在图5的(A)~(C)中,为了方便,用虚线表示控制用区域。
图5的(A)表示在步骤S20中用户指定小于操作系统管理外区域的容量作为RAM磁盘122的容量时的地址空间。RAM磁盘驱动器112无需改变在RAM 120中分配为操作系统管理区域的存储范围(图中是0~3.5GB的范围),而以用户指定的容量,在地址空间的末尾起的连续区域上确保RAM磁盘122的存储区域。在这种情况下,在RAM 120的操作系统管理外区域产生未使用的存储区域。
图5的(B)表示在步骤S20中用户指定与操作系统管理外区域的容量相同的容量作为RAM磁盘122的容量时的地址空间。在这种情况下,确保分配给RAM 120的操作系统管理外区域的整个存储器范围作为RAM磁盘122的存储区域。图5的(C)表示在步骤S20中用户指定大于RAM 120中的操作系统管理外区域的容量的容量作为RAM磁盘122的容量的情况下的地址空间。在这种情况下,RAM磁盘驱动器112缩小RAM 120中的操作系统管理区域的范围,将控制用区域两侧的两个连续区域分配给RAM 120的操作系统管理外区域。然后,在RAM 120的操作系统管理外区域中以用户指定的容量确保用于RAM磁盘122的存储区域。此外,在图5的(C)中图示了将RAM 120中的操作系统管理区域的范围缩小到0~2.0GB的范围并在扩展后的RAM 120的操作系统管理外区域的整个范围内设定了RAM磁盘122的状态。
图6的(A)、(B)分别是表示用于说明第一和第二比较例的地址空间的示意图。图6的(A)表示RAM磁盘122仅设定在RAM120的操作系统管理区域内的情况下的地址空间来作为第一比较例。在此,由操作系统动态地执行RAM 120上的操作系统管理区域内的存储区域的分配。即,操作系统根据来自各程序的请求,重复进行需要的存储区域的确保和释放。因此,在这种情况下,导致RAM磁盘122的存储区域在被分割的状态下进行设定。这样,如果RAM磁盘122的存储区域被分割,则导致对RAM磁盘122的访问速度下降。另外,在第一比较例的情况下,导致RAM 120中的操作系统管理外区域成为未使用的存储区域。
图6的(B)表示在RAM 120的操作系统管理外区域和操作系统管理区域中分配RAM磁盘122的存储区域的情况下的地址空间来作为第二比较例。在第二比较例中,即使在用户指定超过RAM 120中的操作系统管理外区域容量的容量作为RAM磁盘122的容量的情况下,也不改变RAM 120中的操作系统管理区域的范围。在这种情况下,用于RAM磁盘122的存储区域在RAM120上的操作系统管理外区域和操作系统管理区域的两个区域中进行分配。但是,操作系统管理外区域中的RAM磁盘122的存储区域被确保为连续的存储区域,而包含在操作系统管理区域中的RAM磁盘122的存储区域被分配为分割的不连续的存储区域。因而,在该第二比较例的情况下,对RAM磁盘122的访问速度也下降。
这样,如果是本实施例的计算机100,RAM磁盘驱动器112与由用户指定的RAM磁盘122的容量相应地改变RAM 120中的操作系统管理区域的范围。并且,作为RAM磁盘122的存储区域,确保操作系统管理外区域中的连续的存储区域。因而,能够提高对RAM磁盘122的访问速度。另外,能够有效利用RAM120的操作系统管理外区域。
B.第二实施例:
图7是表示作为本发明的第二实施例的计算机的结构的概要图。图7除了在CPU 110中执行SSD驱动器114的点、在RAM120中追加SSD用高速缓冲存储区域124的点以及由固态驱动器(Solid State Drive:SSD)构成外部存储装置130A的点以外,与图1大致相同。
SSD驱动器114是用于控制外部存储装置130A(以后也称为“SSD 130A”)的设备驱动器。在此,SSD 130A是并列连接有多个快闪存储器的存储装置。以块为单位构成快闪存储器的存储区域,还以块为单位执行对快闪存储器进行数据的写入/删除。另外,在快闪存储器中数据的更新以如下方式执行:删除掉已经写入的旧数据后重新写入更新数据。即,在SSD中,由于即使在极少量数据的更新处理的情况下也以块为单位执行数据的删除/写入,因此导致在数据的更新处理中对数据量的更新处理时间的比例变大。因而,有时用户会感觉到对SSD 130A的访问速度下降。
因此,在第二实施例的计算机100A中,通过由SSD驱动器114在RAM 120的操作系统管理外区域中设置SSD用高速缓冲存储区域124,来有效地执行对SSD 130A的访问。由此,用户会感觉到对SSD 130A的访问速度提高了。稍后记述具体的由SSD驱动器114进行的对SSD 130A的访问处理。
另外,在计算机100A中,与第一实施例的计算机100同样地由RAM磁盘驱动器112在RAM 120的操作系统管理外区域中设定RAM磁盘122。即,在计算机100A中,在RAM 120的操作系统管理外区域中通过两个不同的程序设定两个存储区域。但是,由于操作系统不对操作系统管理外区域进行管理,因此有可能导致两个程序独立地使用了相互重叠的存储区域。因此,在第二实施例的计算机100A中,通过以下的处理过程,能够在RAM 120的操作系统管理外区域内对RAM磁盘驱动器112和SSD驱动器114确保独立且不重叠的存储区域。
图8是表示RAM磁盘驱动器112为了在RAM 120中设定RAM磁盘122而执行处理的处理过程的流程图。图8除了追加了步骤S35的点以外,与图3大致相同。在步骤S10~步骤S30中,执行与在第一实施例中说明的处理相同的处理。即,RAM磁盘驱动器112受理来自用户的指定RAM磁盘122的容量的设定操作,在计算机100A重新启动之后将所指定的容量的RAM磁盘122设定在RAM 120的操作系统管理外区域中。
在步骤S35中,RAM磁盘驱动器112将与不作为RAM磁盘122使用的RAM 120上的操作系统管理外区域的空闲区域有关的信息写入到注册表中。在此,“注册表”是指在Windows系统操作系统中用于登记系统、应用程序的设定数据的数据库。在计算机100A中注册表保存在SSD 130A中。另外,“与RAM 120上的操作系统管理外区域的空闲区域有关的信息”是,存在表示没有被分配为RAM磁盘122的存储区域的操作系统管理外区域的范围的地址信息、该范围的容量等。
图9是表示由RAM磁盘驱动器112保存到注册表中的设定内容的一例的说明图。RAM磁盘驱动器112在注册表中名称为“EnableOver4G”、被写入“1”或者“0”的数值。在此,“REG_DWORD”意味着是数值型的数据。RAM磁盘驱动器112在RAM 120的操作系统管理外区域中不存在空闲区域而成为无法使用操作系统管理外区域的状态时,在“EnableOver4G”写入“0”。另外,RAM磁盘驱动器112在RAM 120的操作系统管理外区域中存在空闲区域从而是能够使用操作系统管理外区域的状态的情况下,在“EnableOver4G”写入“1”。
RAM磁盘驱动器112将操作系统管理外区域中的空闲区域的开头地址以“StartAddr”作为名称来保存到注册表中。即,在“StartAddr”中保存能够用作SSD用高速缓冲存储区域124的开头物理地址。并且,RAM磁盘驱动器112将RAM 120上的操作系统管理外区域中的空闲区域的容量以“CacheSize”作为名称来保存到注册表中。即,在“CacheSize”中保存RAM 120的操作系统管理外区域中的能够用作SSD用高速缓冲存储区域124的容量。
在步骤S40中,RAM磁盘驱动器112使显示部140显示催促重新启动计算机100A的消息,使用户重新启动计算机100A。此外,在重新启动后的计算机100A中,RAM磁盘驱动器112被载入,按照启动文件中的设定,在RAM 120的操作系统管理外区域中设定RAM磁盘122。
图10是表示SSD驱动器114为了在RAM 120上设定SSD用高速缓冲存储区域124而执行的处理的处理过程的流程图。该处理是在图8的步骤S40中重新启动的计算机100A中执行的处理。此外,SSD驱动器114被预先设定在启动文件中以在该重新启动时由CPU 110自动载入。也可以在重新启动前的计算机100A中由SSD驱动器114自身进行该启动文件的设定。
在步骤S110中,SSD驱动器114读出RAM磁盘驱动器112在图8的步骤S35中写入到注册表的信息。在步骤S120中,SSD驱动器114根据从注册表读入的信息和要设定的SSD用高速缓冲存储区域124的容量,在RAM 120上确保用于SSD用高速缓冲存储区域124的存储区域。此外,“SSD用高速缓冲存储区域124的容量”可以是在重新启动前的计算机100A中由用户预先指定的容量,也可以是SSD驱动器114预先具有的作为规定值的容量。
在此,说明在步骤S20中SSD驱动器114读入了图9中所说明的注册表的设定内容的情况下的步骤S30中的处理。在保存在注册表中的“EnableOver4G”的值为“0”时,无法在RAM 120的操作系统管理外区域中设定SSD用高速缓冲存储区域124。因此,SSD驱动器114请求操作系统在RAM 120的操作系统管理区域内确保用于SSD用高速缓冲存储区域124的存储区域。
另一方面,在“EnableOver4G”的值为“1”时,SSD驱动器114优先地从RAM 120的操作系统管理外区域中确保SSD用高速缓冲存储区域124的存储区域。即,SSD驱动器114从注册表中读出保存在“StartAddr”中的地址,将该地址作为开头地址来确保与SSD用高速缓冲存储区域124的容量相应的连续的存储区域。并且,在要设定的SSD用高速缓冲存储区域124的容量大于保存在注册表的“CacheSize”中的容量的值时,SSD驱动器114将RAM 120的操作系统管理外区域中的空闲区域分配为SSD用高速缓冲存储区域124的存储区域后,请求操作系统从RAM 120的操作系统管理区域分配缺少的容量。
图11的(A)~(C)分别是表示在RAM 120上设定了RAM磁盘122和SSD用高速缓冲存储区域124之后的地址空间的示意图。图11的(A)表示在RAM 120的操作系统管理外区域中分配了RAM磁盘122的存储区域和SSD用高速缓冲存储区域124的状态。RAM磁盘122的存储区域也如第一实施例中所说明的那样从RAM 120的操作系统管理外区域的末尾起分配由用户指定的容量范围的连续区域。然后,根据写入在注册表中的信息,在操作系统管理外区域中的RAM磁盘122没有使用的存储区域中设定S SD用高速缓冲存储区域124。
此外,在图11的(A)中,将SSD用高速缓冲存储区域124设定为RAM 120的操作系统管理外区域中RAM磁盘122没有使用的区域的整个范围。但是,在RAM磁盘122的容量与SSD用高速缓冲存储区域124的容量之和小于RAM 120中的操作系统管理外区域的容量的情况下,在RAM 120的操作系统管理外区域中形成未使用的存储区域。
图11的(B)表示仅在RAM 120的操作系统管理外区域上无法完全提供SSD用高速缓冲存储区域124的容量的情况下的地址空间。在这种情况下,如上所述,SSD驱动器114请求操作系统在RAM 120的操作系统管理区域中确保RAM 120的操作系统管理外区域中无法提供的容量。此外,较为理想的是,从RAM120的操作系统管理区域中,将作为SSD 130A中的数据管理单位的块的容量(例如64kB)或者相当于其1/2大小的固定长度的容量作为一个单位分配为SSD用高速缓冲存储区域124的存储区域。
图11的(C)表示在RAM 120中分配给操作系统管理区域的范围缩小到0~2.0GB的范围并且在操作系统管理外区域中设定了RAM磁盘122和SSD用高速缓冲存储区域124的状态的地址空间。RAM磁盘驱动器112也可以在SSD用高速缓冲存储区域124的容量已知的情况下,根据RAM磁盘122的容量与SSD用高速缓冲存储区域124的容量之和来缩小RAM 120的操作系统管理区域的存储范围。或者,RAM磁盘驱动器112也可以将RAM 120中的操作系统管理区域的存储范围超量缩小以能够将SSD用高速缓冲存储区域124的至少一部分设定在RAM 120的操作系统管理外区域上。
这样,在步骤S120(图10)中,当SSD用高速缓冲存储区域124被设定在RAM 120上时,SSD驱动器114开始监视有无向SSD130A写入数据的写入请求(步骤S130)。SSD驱动器114在检测到数据的写入请求时,将该数据保存到SSD用高速缓冲存储区域124中(步骤S140)。在此,与将数据直接写入到SSD 130A中的速度相比,将数据写入到RAM 120的SSD用高速缓冲存储区域124的速度较快,因此用户感觉到向SSD 130A写入数据的写入速度提高了。
在步骤S150中,SSD驱动器114判断在SSD用高速缓冲存储区域124是否保存了规定的数据量。在SSD用高速缓冲存储区域124中保存了规定量的数据的情况下,SSD驱动器114将保存在SSD用高速缓冲存储区域124中的数据传送到SSD 130A(步骤S160)。在SSD用高速缓冲存储区域124中没有保存规定量的数据的情况下,SSD驱动器114重新开始监视有无向SSD 130A写入数据的写入请求(步骤S130)。另外,在步骤S160中,在数据的传送完成的情况下,SSD驱动器114重新开始监视有无向SSD130A写入数据的写入请求。
通过步骤S130~S160的处理,SSD用高速缓冲存储区域124作为SSD 130A的磁盘高速缓存而发挥功能。即,通过SSD用高速缓冲存储区域124来提高用户感受到的向SSD 130A的数据传送速度。另外,也减少向SSD 130A的访问次数,从而提高了对SSD 130A的访问效率。
这样,如果根据第二实施例的计算机100A,则能够在RAM120的操作系统管理外区域中将RAM磁盘122和SSD用高速缓冲存储区域124设置为相互不重叠的连续区域。因而,提高对RAM磁盘122和SSD用高速缓冲存储区域124的访问速度。
C.变形例:
此外,本发明并不限于上述的实施例、实施方式,在不脱离其宗旨的范围内能够以各种方式实施,例如还能够进行如下的变形。
C1.变形例1:
在上述实施例中,也可以将通过硬件实现的一部分结构替换为软件,相反,也可以将通过软件实现的一部分结构替换为硬件。另外,也能够由其它程序、硬件执行RAM磁盘驱动器112的一部分功能。
C2.变形例2:
在上述实施例中,对计算机100、100A导入了32位的操作系统。但是,作为操作系统,也可以导入64位的操作系统。在此,在64位的操作系统中,通常将RAM的物理存储器中的8GB~128GB的范围设定为操作系统管理区域,在这种情况下,物理存储器中的该设定范围外侧的区域形成操作系统管理外区域。
C3.变形例3:
在上述实施例中,RAM磁盘驱动器112在由用户指定的RAM磁盘122的容量大于RAM 120中的操作系统管理外区域的容量时,缩小了RAM 120中的操作系统管理区域的存储范围。但是,RAM磁盘驱动器112例如也可以在由用户指定的RAM磁盘122的容量小于RAM 120中的操作系统管理外区域的容量时,增大操作系统管理区域的范围以减少RAM 120上的操作系统管理外区域中的未使用区域。
C4.变形例4:
在上述实施例中,RAM磁盘驱动器112将从操作系统管理外区域的末尾起的连续区域设定为RAM磁盘122的存储区域。但是,RAM磁盘驱动器112也可以将操作系统管理外区域中的任意位置的连续区域设定为RAM磁盘122的存储区域。
C 5.变形例5:
在上述实施例中,RAM磁盘驱动器112通过在boot.ini文件中设置/MAXMEM=nn开关,来改变RAM 120中的操作系统管理区域的范围。但是,RAM磁盘驱动器112也可以通过其它方法来改变操作系统管理区域的范围。例如,也可以在操作系统是Windows XP的情况下,在boot.ini文件中设置/BURNMEMORY=nn开关,来指定操作系统无法使用的存储容量。另外,在操作系统是Windows Vista、Windows 7的情况下,RAM磁盘驱动器112也可以通过编辑启动结构数据来改变RAM120中的操作系统管理区域的范围。此外,“WINDOWS VISTA”是微软股份有限公司的注册商标。
C6.变形例6:
在上述实施例中,RAM磁盘驱动器112通过操作用图像10来受理来自用户的RAM磁盘122的容量的指定。但是,RAM磁盘驱动器112也可以通过操作用图像10来受理来自用户的对RAM 120中的操作系统管理区域的范围的指定。
C7.变形例7:
在上述第二实施例中,RAM磁盘驱动器112将与不作为RAM磁盘122的操作系统管理外区域使用的空闲区域有关的信息保存到注册表中,SSD驱动器114从注册表获取该信息。但是,RAM磁盘驱动器112也可以通过其它的方法使SSD驱动器114获取该信息。例如,也可以在RAM磁盘驱动器112与SSD驱动器114之间在预先规定的SSD 130A中的注册表以外的保存场所保存该信息。
C8.变形例8:
在上述第二实施例中,RAM磁盘驱动器112对RAM 120的操作系统管理外区域优先地设定RAM磁盘122。但是,也可以通过SSD驱动器114执行在第二实施例中说明的RAM磁盘驱动器112的处理来在RAM 120的操作系统管理外区域中优先于RAM磁盘122设定SSD用高速缓冲存储区域124。
C9.变形例9:
在上述第二实施例中,计算机100A具备作为外部存储装置的SSD 130A,具有作为其磁盘驱动器的SSD驱动器114。但是,计算机100A也可以具备SSD以外的其它种类的存储装置来作为外部存储装置,并具备用于该存储装置的磁盘驱动器。在这种情况下,该磁盘驱动器也可以在RAM 120的操作系统管理外区域中设定用于该存储装置的高速缓冲存储区域。
C10.变形例10:
在上述第二实施例中,SSD驱动器114读入由RAM磁盘驱动器112写入到注册表中的信息,根据该信息,使用RAM 120的操作系统管理外区域。但是,也可以替换SSD驱动器114而由其它软件读入RAM磁盘驱动器112所写入的注册表的信息,根据该信息,使用RAM 120的操作系统管理外区域。

Claims (4)

1.一种提高对计算机的主存储装置的访问速度的方法,该方法使用计算机的主存储装置的存储区域中的不由上述计算机的操作系统管理的管理外存储区域来提高对上述主存储装置的访问速度,该方法具备以下工序:
(a)第一模块受理由用户进行的用于指定RAM磁盘的容量的设定操作,上述第一模块是将上述主存储装置的一部分区域用作上述RAM磁盘的模块;以及
(b)上述第一模块在上述计算机启动时,将上述管理外存储区域中的连续的区域设定为具有通过上述设定操作而指定的容量的RAM磁盘的存储区域,
其中,上述工序(b)包括以下工序:上述第一模块根据在上述工序(a)中由用户指定的上述RAM磁盘的容量来改变上述主存储装置的由上述操作系统进行管理的存储区域的范围,确保用于上述RAM磁盘的存储区域。
2.根据权利要求1所述的方法,其特征在于,
还具备以下工序:
(c)上述第一模块将上述管理外存储区域中没有作为上述RAM磁盘的存储区域而使用的未使用的存储区域的范围写入到注册表中;以及
(d)第二模块根据在上述工序(c)中被写入到上述注册表中的信息,从上述未使用的存储区域的范围中优先地确保用于上述计算机的外部存储装置的高速缓冲存储区域。
3.一种在计算机中使用的存储装置系统,其具备:
主存储装置;以及
第一模块,其将上述主存储装置的一部分存储区域用作RAM磁盘,
其中,上述第一模块具备:
接口模块,其用于由将上述主存储装置的一部分区域用作RAM磁盘的第一模块受理由用户进行的用于指定上述RAM磁盘的容量的设定操作;以及
存储区域设定模块,其用于在上述计算机启动时,将管理外存储区域中的连续的区域设定为具有由上述设定操作指定的容量的RAM磁盘的存储区域,其中,上述管理外存储区域是上述主存储装置的存储区域中的不由上述计算机的操作系统管理的存储区域,
其中,上述存储区域设定模块根据由上述接口模块受理的、用户指定的上述RAM磁盘的容量,来改变上述主存储装置的由上述操作系统进行管理的存储区域的范围,确保用于上述RAM磁盘的存储区域。
4.根据权利要求3所述的存储装置系统,其特征在于,
还具备第二模块,该第二模块将上述主存储装置的一部分存储区域作为用于上述计算机的外部存储装置的高速缓冲存储器区域而使用,
上述第一模块将上述管理外存储区域中没有作为上述RAM磁盘的存储区域而使用的未使用的存储区域的范围写入到注册表中,
上述第二模块根据由上述第一模块写入到上述注册表中的信息,从上述未使用的存储区域的范围中优先地确保用于上述外部存储装置的高速缓冲存储区域。
CN2011100348393A 2010-02-10 2011-01-31 提高对主存储装置的访问速度的方法以及存储装置系统 Pending CN102147769A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010027558A JP4886866B2 (ja) 2010-02-10 2010-02-10 主記憶装置へのアクセスを高速化する方法および記憶装置システム
JP2010-027558 2010-11-16

Publications (1)

Publication Number Publication Date
CN102147769A true CN102147769A (zh) 2011-08-10

Family

ID=44354572

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011100348393A Pending CN102147769A (zh) 2010-02-10 2011-01-31 提高对主存储装置的访问速度的方法以及存储装置系统

Country Status (3)

Country Link
US (1) US8516186B2 (zh)
JP (1) JP4886866B2 (zh)
CN (1) CN102147769A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107430547A (zh) * 2015-03-27 2017-12-01 英特尔公司 用于非易失性存储设备的故障安全写回高速缓存模式设备驱动

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9442858B2 (en) 2012-07-13 2016-09-13 Ianywhere Solutions, Inc. Solid state drives as a persistent cache for database systems
JP2014206884A (ja) * 2013-04-15 2014-10-30 株式会社フィックスターズ 情報処理装置、情報処理方法、およびプログラム
JP5890824B2 (ja) * 2013-11-28 2016-03-22 京セラドキュメントソリューションズ株式会社 電子機器
WO2017056310A1 (ja) * 2015-10-02 2017-04-06 株式会社日立製作所 計算機および計算機の制御方法
US20170161203A1 (en) * 2015-12-03 2017-06-08 Intel Corporation Increased memory capacity
US10579465B1 (en) 2018-03-29 2020-03-03 Keep Security LLC Systems and methods for self correcting secure computer systems
US11263074B1 (en) 2018-03-29 2022-03-01 Keep Security, Llc Systems and methods for self correcting secure computer systems
US11231988B1 (en) 2018-03-29 2022-01-25 Keep Security, Llc Systems and methods for secure deletion of information on self correcting secure computer systems
US11175981B1 (en) 2018-03-29 2021-11-16 Keep Security LLC Systems and methods for dynamic self correcting secure computer systems
US11669389B1 (en) 2018-03-29 2023-06-06 Keep Security, Llc Systems and methods for secure deletion of information on self correcting secure computer systems
CN112783418B (zh) * 2019-11-01 2023-03-31 华为技术有限公司 一种存储应用程序数据的方法及移动终端

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6032240A (en) * 1997-11-12 2000-02-29 Intergraph Corporation Bypassing a nonpaged pool controller when accessing a remainder portion of a random access memory
CN1983215A (zh) * 2005-12-16 2007-06-20 祥群科技股份有限公司 一种储存装置及其储存数据的保护方法
WO2009126011A2 (ko) * 2008-04-11 2009-10-15 엘지전자 주식회사 광 디스크 드라이브처럼 동작 가능한 메모리 드라이브 및 메모리 드라이브를 광 디스크 드라이브로 가상화하는 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1185607A (ja) 1997-09-08 1999-03-30 Nec Corp Ramディスク使用方法および該方法を記録した記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6032240A (en) * 1997-11-12 2000-02-29 Intergraph Corporation Bypassing a nonpaged pool controller when accessing a remainder portion of a random access memory
CN1983215A (zh) * 2005-12-16 2007-06-20 祥群科技股份有限公司 一种储存装置及其储存数据的保护方法
WO2009126011A2 (ko) * 2008-04-11 2009-10-15 엘지전자 주식회사 광 디스크 드라이브처럼 동작 가능한 메모리 드라이브 및 메모리 드라이브를 광 디스크 드라이브로 가상화하는 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107430547A (zh) * 2015-03-27 2017-12-01 英特尔公司 用于非易失性存储设备的故障安全写回高速缓存模式设备驱动

Also Published As

Publication number Publication date
JP4886866B2 (ja) 2012-02-29
US8516186B2 (en) 2013-08-20
JP2011164968A (ja) 2011-08-25
US20110197019A1 (en) 2011-08-11

Similar Documents

Publication Publication Date Title
CN102147769A (zh) 提高对主存储装置的访问速度的方法以及存储装置系统
US7328320B2 (en) Storage system and method for acquisition and utilization of snapshots
US8086877B2 (en) Storage device and control method for the same
KR102002830B1 (ko) 세그먼트 클리닝 장치 및 방법
CN101968721B (zh) 提高对外部存储装置的访问速度的方法以及外部存储系统
JP5445463B2 (ja) 計算機システム、データ保存方法およびプログラム
US20140052904A1 (en) Systems and methods for recovering addressing data
US8151079B2 (en) Computer system, storage area allocation method, and management computer
CN104423894A (zh) 数据储存装置以及快闪存储器控制方法
JP2008225765A (ja) ネットワークストレージ・システムとその管理方法及び制御プログラム
CN105874428A (zh) 用于多个操作系统环境中的操作系统转变的技术
CN104317734A (zh) 一种适用于slab的内存分配方法及装置
CN110019083B (zh) 分布式文件系统的存储方法、装置、电子设备及存储介质
CN100472459C (zh) 自动释放嵌入式系统中应用程序模块泄漏内存的系统
WO2011121870A1 (ja) データ記録装置、及びデータ記録方法
CN109933435B (zh) 控制方法、装置及计算机设备
EP3321809B1 (en) Memory access method, apparatus and system
CN115934579A (zh) 固态硬盘垃圾回收方法、加速装置、设备及计算机介质
US11663040B2 (en) Computer system and resource reallocation method
KR20100050098A (ko) 영상처리장치 및 그 제어 방법
CN110781133B (zh) 一种row快照方法、系统、设备及计算机可读存储介质
CN101833557A (zh) 基于应用程序的文件缓存方法和装置
CN101996141A (zh) 计算机系统、盘存储装置和控制所述计算机系统的方法
US11853203B1 (en) Systems and methods with variable size super blocks in zoned namespace devices
KR101618999B1 (ko) 네트워크 부트 시스템

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: 20110810