专利名称:信息处理装置、信息处理方法和程序的制作方法
技术领域:
本公开涉及信息处理装置、信息处理方法和程序。更具体地,本公开涉及用于利用连接到网络的存储器、存储空间(storage)或其它记录介质作为虚拟存储区的信息处理装置、信息处理方法和程序。
背景技术:
存在通过使用虚拟存储区来扩展计算机的存储器区域的方法。虚拟存储区是由计算机的操作系统(OS)等虚拟地提供的存储器区域。例如,如果执行程序所需的存储器容量变得大于实际合并的存储器的容量,则计算机的OS等可能必须利用使用中的存储器或存储空间的存储区作为执行程序所需的存储器容量。在此情况下,将存储器或存储空间的存储区设为虚拟存储区。更具体地,可能首先在虚拟存储区中建立虚拟地址。然后将虚拟地址变换为计算机中实际并入的记录介质上的存储区的物理地址。可以使用物理地址来读取和写入数据 (例如,参见日本专利特开No. Hei 8-272754)。
发明内容
对于普通计算机,附接至每一台计算机的存储器或存储空间的存储区可以由此用作虚拟存储区。然而,这些计算机不能使用经由网络连接到每一台计算机的服务器中的硬盘等上的存储区作为它们的虚拟存储区。本公开鉴于以上情形而做出,并且提供了如下的信息处理装置、信息处理方法和程序其用于利用连接到网络的记录介质作为虚拟存储区,以便使用虚拟地址的当前执行程序可以获得对于连接到网络的记录介质上的存储区的容易访问。根据本公开的一个实施例,提供了一种信息处理装置,其连接到网络,所述信息处理装置包括地址变换部件,配置为当在地址变换模块中保存分配给虚拟存储区的虚拟地址,并且在其中将所述虚拟地址与指定连接到所述网络的存储部分的位置的网络节点信息相关联并与所述存储部分中的物理地址相关联时,所述地址变换部件基于所述地址变换模块将所述虚拟地址变换为所述网络节点信息和所述物理地址;以及访问通信部件,配置为基于由所述地址变换部件获取的所述网络节点信息和所述物理地址,所述访问通信部件访问由连接到所述网络的所述存储部分保存的多个存储区之一,所访问的存储区由所述物理地址指定。优选地,所述信息处理装置可以进一步包括具有多个存储区的存储部件;其中,如果由所述地址变换部件获取的所述网络节点信息表示连接到所述网络的所述存储部件的位置,则所述访问通信部件可以访问由所述存储部件保存的所述多个存储区之一,所访问的存储区由所述地址变换部件获取的所述物理地址指定;以及如果由所述地址变换部件获取的所述网络节点信息表示与所述网络上的所述存储部件不同的外部存储部分的位置,则所述访问通信部件可以访问由所述外部存储部分保存的多个存储区之一,所访问的存储区由所述地址变换部件获取的所述物理地址指定。优选地,所述地址变换模块可以保存多个地址变换表,其每一个将所述虚拟地址与所述网络节点信息和所述物理地址相关联;以及基于由所述地址变换模块保存的所述多个地址变换表,所述地址变换部件可以将所述虚拟地址变换为对应的物理地址和对应的网络节点信息。优选地,所述地址变换模块可以保存地址变换表,所述地址变换表将所述虚拟地址与所述网络节点信息和所述物理地址相关联;以及所述信息处理装置可以进一步包括更新部件,配置为更新由所述地址变换模块保存的所述地址变换表。优选地,所述网络节点信息可以是已知为IP地址的因特网协议地址、已知为MAC 地址的介质访问控制地址或域信息中的一部分或全部。优选地,所述地址变换模块可以保存地址变换表,所述地址变换表将所述虚拟地址与所述网络节点信息和所述物理地址相关联;并且所述信息处理装置可以进一步包括传输部件,其配置为将由所述地址变换模块保存的所述地址变换表传送到与所述网络连接的另一个信息处理装置,以便与所述另一个信息处理装置共享所述地址变换表。根据本公开的另一个实施例,提供了一种信息处理方法,用于连接到网络的信息处理装置,所述信息处理装置包括地址变换部件和访问通信部件,所述信息处理方法包括 当在地址变换模块中保存分配给虚拟存储区的虚拟地址,并且在其中将所述虚拟地址与指定连接到所述网络的存储部分的位置的网络节点信息相关联并与所述存储部分中的物理地址相关联时,使得所述地址变换部件基于所述地址变换模块将所述虚拟地址变换为所述网络节点信息和所述物理地址;以及基于由所述地址变换部件获取的所述网络节点信息和所述物理地址,使得所述访问通信部件访问由连接到所述网络的所述存储部分保存的多个存储区之一,所访问的存储区由所述物理地址指定。根据本公开的进一步的实施例,提供了一种程序,使得控制连接到网络的信息处理装置的计算机用作地址变换部件和访问通信部件,所述程序包括当在地址变换模块中保存分配给虚拟存储区的虚拟地址,并且在其中将所述虚拟地址与指定连接到所述网络的存储部分的位置的网络节点信息相关联并与所述存储部分中的物理地址相关联时,使得所述地址变换部件基于所述地址变换模块将所述虚拟地址变换为所述网络节点信息和所述物理地址;以及基于由所述地址变换部件获取的所述网络节点信息和所述物理地址,使得所述访问通信部件访问由连接到所述网络的所述存储部分保存的多个存储区之一,所访问的存储区由所述物理地址指定。根据本公开,如以上概述的那样,当在地址变换模块中保存分配给虚拟存储区的虚拟地址,并且在其中将所述虚拟地址与指定连接到网络的存储部分的位置的网络节点信息相关联并与该存储部分中的物理地址相关联时,基于地址变换模块将虚拟地址变换为网络节点信息和物理地址。然后基于通过地址变换获得的网络节点信息和物理地址,访问由连接到网络的存储部分保存的多个存储区之一,所访问的存储区由物理地址指定。因此,根据本公开,连接到网络的记录介质可以容易地用作虚拟存储区。
图1是示出体现本公开的信息处理系统的典型配置的框图2是示出信息处理装置的典型结构的框图;图3是示出处理器的详细结构的框图;图4是示出在结合存储器管理单元(MMU)使用变换后备缓冲器(TLB)的情况下配备的多个条目的示例的示意图;图5是示出在结合MMU使用地址变换寄存器的情况下配备的典型条目的示意图;图6是示出写信息的示例的示意图;图7是说明如何在DMA控制器的控制下写入写数据的示意图;图8是示出写信息的另一示例的示意图;图9是示出请求信息的示例的示意图;图10是示出响应于请求信息而创建的读出信息的示例的示意图;图11是示出基于接收到的读出信息来写入读出数据的示例的示意图;图12是说明由信息处理装置执行的写处理的流程图;图13是说明由信息处理装置执行的读处理的流程图;以及图14是示出信息处理装置的另一典型结构的示意图。
具体实施例方式现在描述本公开的一些优选实施例(下文称为优选实施例)。将在下列标题之下给出描述1.本公开的实施例(利用地址变换表(其中附加了网络节点地址)的示例)2.变型。<1.优选实施例>[信息处理系统1的典型配置]图1示出体现本公开的信息处理系统1的典型配置。信息处理系统1由经由网络22(如,因特网)互连的信息处理装置21-1到21_N 构成。信息处理装置21-1到21-N均拥有本地存储器,其典型地由存储数据和程序的硬盘等构成。每一个本地存储器具有多个存储区,所述多个存储区可以由每一个信息处理装置21-1到21-N利用作为虚拟存储区。例如,可以将唯一的虚拟地址分配给多个本地存储器的每一个中的多个存储区的
每一个。[信息处理装置21-n的典型结构]图2示出信息处理装置21-n的典型结构。信息处理装置21-n例如可以是连接到网络22的个人计算机等。信息处理装置 21-n典型地由处理器41、输入/输出接口(IF)42、直接存储器访问(DMA)控制器43、本地存储器44和网络接口(IF) 45构成。由CPU(中央处理单元)等构成的处理器41控制所配置的各组件。此外,例如,处理器41可以响应于来自输入/输出接口 42的操作信号来执行适当的处理。稍后将参照图 3详细讨论处理器41。输入/输出接口 42连接到诸如鼠标和键盘之类的操作部分(未示出)。输入/输出接口 42提供有来自用户操作的操作部分的操作信号,并且将提供的信号送至处理器41。在处理器41的控制下,DMA控制器43通过DMA传输将数据从处理器41发送到本地存储器44以便存储。此外,在处理器41的控制下,DMA控制器43从本地存储器44读取数据,并通过DMA传输将取回的数据发送到处理器41。此外,DMA控制器43在处理器41的控制下,通过DMA传输将处理器41中的数据传输到网络接口 45。DMA控制器43还通过DMA传输将数据从网络接口 45发送到处理器41。本地存储器44例如可以是硬盘、EEPR0M(电可擦除可编程只读存储器)或 DRAM (动态随机存取存储器),存储通过DMA传输从DMA控制器43发送的数据等。本地存储器44由多个存储区(其每一个均与表示正讨论的存储区的位置的物理地址相关联)构成。网络接口 45经由网络22将来自DMA控制器43的数据发送到另一信息处理装置 21-ρ(ρ Φ η)。网络接口 45还将通过网络22从另一信息处理装置21_ρ发送的数据提供给 DMA控制器43。[处理器41的典型结构]图3示出处理器41的典型详细结构。处理器41由CPU 61、存储器管理单元(MMU) 62、并入在MMU 62中的变换后备缓冲器(TLB)和高速缓存存储器64构成。CPU 61控制MMU 62、DMA控制器43和其它组件。此外,CPU 61将本地存储器44 中预先保存的程序通过DMA控制器43和MMU 62写入高速缓存存储器。此外,通过MMU 62, CPU 61从高速缓存存储器64(其中保留程序)获取程序。CPU 61通过执行获取的程序来进行预定处理。例如,CPU 61可以向MMU 62提供分配给虚拟存储区的虚拟地址,以便通过MMU 62从高速缓存存储器64读取与该虚拟地址对应的数据。如将在稍后说明的那样,高速缓存存储器64与对应的虚拟地址相关联地保留预定数据。CPU 61然后对于读出数据执行诸如计算和操作这样的处理。CPU 61将处理的结果写入高速缓存存储器64或本地存储器44。例如,如果在高速缓存存储器64中未发现发送到MMU 62的虚拟地址所对应的数据,则CPU 61可以控制DMA控制器43等以从本地存储器44或从另一信息处理装置 21-p (其中存在正讨论的数据)读取对应数据,并将取回的数据供给MMU 62。然后CPU 61可以控制MMU 62以将来自DMA控制器43的数据与对应的虚拟地址相关联,并将数据供给高速缓存存储器64以便存储。以这种方式,CPU 61可以通过MMU 62 从高速缓存存储器64获得供给MMU 62的虚拟地址所对应的数据。通过使用合并的TLB 62,MMU 62将来自CPU 61的虚拟地址变换为对应的物理地址和网络节点地址(两者将在稍后描述),或者将与来自DMA控制器43的数据相关联的物理地址和网络节点地址逆变换为对应的虚拟地址。TLB 63预先保存地址变换表,其包含多个之前创建的条目1到m。图4示出TLB 63的示例。如图4所示,TLB 63预先配备有具有多个条目1到m的地址变换表,所述多个条目 1到m的每一个均包含分配给虚拟存储区的虚拟地址、与虚拟地址对应且分配给本地存储器44上的存储区的物理地址、在将虚拟地址变换为物理地址时用于控制的控制信息、以及表示保留物理地址指定的存储区的本地存储器44(或拥有存储器44的信息处理装置21-n) 的网络上的位置的网络节点地址。网络节点地址可以由唯一表示信息处理装置21-n的信息形成。例如,网络节点地址可以是信息处理装置21-n的IP (因特网协议)地址或MAC(介质访问控制)地址。可替代地,网络节点地址可以是表示信息处理装置21-n的网络上的位置的域信息的一部分或全部(如,部分的主页地址或邮件地址)。如果需要,MMU 62读取并保留多个虚拟地址,所述多个虚拟地址中的每一个均与高速缓存存储器64中保存的数据相关联。MMU 62确定其保留的多个虚拟地址中的每一个是否与来自CPU 61的虚拟地址匹配。如果确定保留的多个虚拟地址中之一与来自CPU 61的虚拟地址匹配,则MMU 62 从高速缓存存储器64读取与匹配的虚拟地址相关联的数据,并将取回的数据供给CPU 61。如果确定保留的多个虚拟地址均不与来自CPU 61的虚拟地址匹配,则MMU 62基于TLB 63中保存的多个条目1到m,将来自CPU 61的虚拟地址变换为对应的物理地址和网络节点地址。MMU 62进入将经由地址变换获得的物理地址和网络节点地址提供给DMA控制器 43。通过使用TLB 63,MMU 62还将与来自DMA控制器43的数据相关联的物理地址和网络节点地址逆变换为对应的虚拟地址。MMU 62与来自DMA控制器43的数据相关联地将通过逆变换获得的虚拟地址供给高速缓存存储器64以便在其中存储。高速缓存存储器64可以由RAM(随机存取存储器)等组成。这样,高速缓存存储器64容纳来自MMU 62且与虚拟地址相关联的数据。之前各段说明了在处理器41中,MMU 62使用地址变换表(诸如如图4所示那样具有多个条目1到m的地址转换表)来执行地址变换。可替代地,MMU 62可以是如图5中所示那样使用仅包含一个条目的地址变换表来执行地址变换的地址变换寄存器。在这种情况下,可以按照需要在使得CPU 61执行相关处理的OS或类似程序的控制下更新图5中指示的单个条目。MMU 62可以由单个变换寄存器组成或者多个地址变换寄存器组成。如果MMU 62由多个地址变换寄存器组成,则多个地址变换寄存器可以共享相同的地址变换表,或者每一个均利用不同的地址变换表。在此情况下,TLB 63可以典型地构造为保存多个地址变换表,以便由多个地址变换寄存器构成的MMU 62使用。除了将网络节点地址添加到TLB 63中保存的地址变换表之外,图3所示的处理器 41基本上与现有处理器相同。这意味着现有处理器可以不加以修改地用作根据本公开的处理器41,这是由于只需要以通过网络节点地址补充的地址变换表替换TLB 63中所保存的地址变换表。这使得可以降低处理器41的制造成本。[传送写信息的示例]图6是示出当信息处理装置21-a将数据写入另一信息处理装置21_b的本地存储器44b中的存储区时所创建的写信息的示例的示意图。参考字符“a”和“b”均表示范围从1到N的不同整数中的一个。在随后的描述中, 为了进行区分的目的,组成信息处理装置21-a的一部分的CPU 61将被称为CPU 61a,而信息处理装置21-b的CPU 61将被称为CPTOlb。对于信息处理装置21的其它组件同样如此。信息处理装置21-a的CPU 61a处理与给定虚拟地址对应的数据,并将处理的数据与处理数据所对应的虚拟地址一起供给MMU 62a。在CPU 61a的控制下,MMU 62a通过使用TLB 63a等将来自CPU 61a的虚拟地址变换为对应的网络节点地址和物理地址。MMU 6 将变换的地址与来自CPU 61a的数据一起发送到DMA控制器43a。在这种情况下,假设通过地址变换获得的网络节点地址表示网络22上信息处理装置21-b的位置,并且同样获得的物理地址表示(S卩,指定)信息处理装置21-b的本地存储器44b中多个存储区的对应一个。DMA控制器43a向网络接口 4 提供信息处理装置21_b的网络节点地址和物理地址以及数据,所述地址和数据从MMU 6 供给。网络接口 4 并入协议信号设置寄存器(未示出),其预先保存通信中使用的现有传输协议信号(包括现有因特网协议等)、传输源地址信息(如,信息处理装置21-a的网络节点地址)和另一传输协议信号(包括与现有因特网协议不同的协议)。在DMA控制器43a的控制下,网络接口 4 从内部协议信号设置寄存器读取现有传输协议信号和另一传输协议信号。网络接口 4 然后构造写信息(如图6所示那样),其包括取回的现有传输协议信号和另一传输协议信号、由来自DMA控制器4 的网络节点地址构成的传输目的地地址、 从DMA控制器4 提供的写数据、以及由来自DMA控制器45a的物理地址形成并指向写数据要写入到的信息处理装置21-b的本地存储器44b中的那个存储区的存储地址(memory address)。由此构造的写信息通过网络22传送到信息处理装置22_b。[写入写数据的示例]图7示出这样的示例基于从信息处理装置21-a发送到信息处理装置21_b的写信息,将写信息中包括的写数据写入本地存储器44b中的多个存储区之一,其中要写入数据的存储区由写信息中包括的存储地址指定。信息处理装置21-b的网络接口 45b通过网络22接收另一传输协议信号和现有协议信号,作为从信息处理装置21-a传送的写信息(如图7所示)的一部分。网络接口 4 前进至将接收到的另一传输协议信号和现有传输协议信号存储至内部协议信号设置寄存器。此外,基于由此存储的另一传输协议信号和现有传输协议信号, 网络接口 4 接收写信息中包括的写数据和存储地址,并将接收到的地址和数据供给DMA 控制器4北。DMA控制器43b将来自网络接口 45b的写数据送往本地存储器44b,以便将数据写入通过网络接口 4 提供的存储地址所指定的本地存储器44b中的那个存储区。在前面的描述中,示出了创建并传送例如如图6所示的写信息的信息处理装置 21-a,所述写信息包括指定写数据要写入到的存储区的存储地址。可替代地,如果写数据要写入到的存储区对于信息处理装置21-b来说是预先已知的,则信息处理装置21-a可以创建例如如图8所示的不包括任何存储地址的写信息。在这种情况下,由于不需要执行具有写信息中包括的存储地址的处理,因此可以更快速地创建和传送写信息。下面参照图9到图11说明的是这样的示例信息处理装置21-a从信息处理装置 21-b读取相关数据,即,信息处理装置21-a请求从信息处理装置21-b发送感兴趣的数据, 并接收响应于请求所传送的数据。[传送请求信息的示例]图9示出信息处理设备21-a所创建的请求信息处理装置21_b发送感兴趣的数据的请求信息的示例。当从虚拟存储区中的正讨论的虚拟地址读取数据时,信息处理装置21-a的CPU 61a将相关的虚拟地址供给MMU 62a。在CPU 61a的控制下,MMU 62a确定其保留的多个虚拟地址(即,与高速缓存存储器64中保存的数据相关联的虚拟地址)中的任何一个是否与CPU 61a发送的虚拟地址相匹配。如果确定保留的多个虚拟地址之一与来自CPU 61a的虚拟地址匹配,则MMU 62a 从高速缓存存储器6 读取与匹配的虚拟地址相关联的数据,并将取回的数据供给CPU 61a。如果确定所保留的多个虚拟地址均不与来自CPU 61a的虚拟地址匹配,则MMU 6 通过例如使用TLB 63a将来自CPU 61a的虚拟地址变换为对应的网络节点地址和物理地址,并将变换的地址提供到DMA控制器43a。基于MMU 62a供给的网络节点地址是否匹配之前保留的信息处理装置21_a的网络节点地址,DMA控制器43a确定MMU 6 供给的网络节点地址是否为信息处理装置21_a 的网络地址。如果确定MMU 62a供给的网络节点地址是信息处理装置21_a的网络地址,则DMA 控制器43a将来自MMU 62a的物理地址发送到本地存储器44a,以便从本地存储器4 中的多个存储区之一读取数据,要从其读取数据的存储区由物理地址指定。DMA控制器43a将取回的数据与MMU 6 供给的网络节点地址和物理地址相关联, 并将数据提供到MMU 62a。在这种情况下,MMU 6 例如通过使用TLB 63,将与来自DMA控制器43a的数据相关联的网络节点地址和物理地址逆变换为对应的虚拟地址。MMU 6 前进至将来自DMA控制器43a的数据与经由逆变换获得的虚拟地址相关联,并将数据发送到高速缓存存储器64 以便在其中存储。如果确定MMU 62a供给的网络节点地址不是信息处理装置21_a的网络地址,则 DMA控制器43a向网络接口 4 提供来自MMU 62a的网络节点地址和物理地址。在这种情况下,假设通过地址变换获得的网络节点地址表示信息处理装置21-b 在网络22上的位置,并且同样获得的物理地址表示信息处理装置21-b的本地存储器44b 中多个存储区的对应一个。在DMA控制器43a的控制下,网络接口 4 从内部协议信号设置寄存器读取现有传输协议信号和另一传输协议信号。
此外,网络接口 4 创建请求数据,所述请求数据包括从DMA控制器4 发送的物理地址并且用以请求本地存储器44b的多个存储区之一中存储的数据,要从其读取数据的存储区由来自DMA控制器45a的物理地址指定。此外,网络接口 4 将来自DMA控制器4 的网络节点地址当作传输目的地地址。 网络接口 4 前进至创建如图9所示的由取回的现有传输协议信号和另一传输协议信号、 传输目的地地址和请求数据构成的请求信息。网络接口 4 将由此创建的请求信息经由网络传送到信息处理装置21-b。[传送读出信息的示例]图10示出信息处理装置21-b基于从信息处理装置21-a接收到的请求信息将相关数据传送到信息处理装置21-a的示例。信息处理装置21-b的网络接口 45b经由网络22接收从信息处理装置21_a提供的请求信息中包括的另一传输协议信号和现有传输协议信号。网络接口 4 然后将接收到的另一传输协议信号和现有传输协议信号供给内部协议信号设置寄存器以便在其中存储。基于写入内部协议信号设置寄存器的另一传输协议信号和现有传输协议信号,网络接口 4 接收请求信息中包括的请求数据,并将接收到的请求数据供给DMA控制器43b。基于来自网络接口 4 的请求数据,DMA控制器4 从本地存储器44b中的存储区之一读取数据,要从其读取数据的存储区由请求数据中包括的物理地址指定。DMA控制器43b向网络接口 4 提供所取回的数据作为读出数据。此外,DMA控制器43b向网络接口 4 提供由指定据以取回读出数据的存储区的物理地址(即,请求数据中包括的物理地址)形成的存储地址。通过使用内部协议信号设置寄存器,网络接口 4 将请求数据中包括的传输目的地地址(即,信息处理装置21-a的网络节点地址)当作其传输目的地地址。网络接口 4 然后创建由传输目的地地址、内部协议信号设置寄存器中保留的另一传输协议信号和现有传输协议信号以及DMA控制器4 供给的读出数据和存储地址构成的读出信息。网络接口 4 将由此创建的读出信息经由网络22传送到信息处理装置21-a。[接收读出信号并存储读出数据的示例]图11示出这样的示例信息处理装置21-a响应于发送到信息处理装置21_b的请求信息,接收从信息处理装置21-b传送的读出信息,所述信息处理装置21-a进一步存储接收到的读出信息中所包括的读出数据。信息处理装置21-a的网络接口 4 经由网络22接收从信息处理装置21_b供给的读出信息中包含的另一传输协议信号和现有传输协议信号。网络接口 4 前进至将接收到的另一传输协议信号和现有传输协议信号发送到内部协议信号设置寄存器以便在其中存储。基于写入协议信号设置寄存器的另一传输协议信号和现有传输协议信号,网络接口 4 经由网络22接收从信息处理装置21-b供给的读出信息中包含的读出数据和存储地址,并将接收到的读出数据和存储地址提供到DMA控制器43a。此外,网络接口 4 提取协议信号设置寄存器中保存的另一传输协议信号中包括的传输源(即,信息处理装置21-b)的网络节点地址,并将提取的网络节点地址供给DMA控制器43a。
与同样从网络接口 4 供给的存储地址和网络节点相关联地,DMA控制器43a将来自网络接口 4 的读出数据提供给处理器41a的MMU 62a。在这种情况下,MMU 62a通过使用TLB 63a,将与来自DMA控制器43a的读出数据相关联的存储地址和网络节点地址逆变换为对应的虚拟地址。然后MMU 6 在将通过逆变换获得的虚拟地址发送到高速缓存存储器6 以便在其中存储之前,将虚拟地址与来自DMA控制器43a的读出数据相关联。[信息处理装置21-a执行的写处理]下面参照图12的流程图说明的是由信息处理装置21-a执行的典型写处理,用于将数据写入信息处理装置21-a的本地存储器4 或信息处理装置21-b的本地存储器44b。写处理可以在如下面这样的情况下开始当CPU 61a处理给定虚拟地址处的数据并控制MMU 6 等以将处理的数据写入由虚拟地址对应的网络节点地址指定的本地存储器中的多个存储区之一时,要写入数据的存储区由与虚拟地址对应的物理地址指定。例如,CPU 61a可以将处理的数据与对应的虚拟地址一起供给MMU62a。在步骤S21,MMU 62a通过使用内部TLB 63a等,将来自CPU 61a的虚拟地址变换为对应的物理地址和网络节点地址。MMU 62a将通过地址变换获得的物理地址和网络节点地址与CPTOla供给的数据一起发送到DMA控制器43a。在步骤S22,基于MMU 62a供给的网络节点地址是否与表示信息处理装置21_a的位置的之前保留的网络节点地址相互相匹配,DMA控制器43a确定来自MMU 62a的网络节点地址是否为表示信息处理装置21-a的位置的网络节点地址。如果基于来自MMU 62a的网络节点地址是否与表示信息处理装置21_a的位置的之前保留的网络节点地址匹配,在步骤S22中确定MMU 6 供给的网络节点地址确实为表示信息处理装置21-a的位置的网络节点地址,则到达步骤S23。在步骤S23,DMA控制器43a将来自MMU 62a的数据供给本地存储器44a,以便将数据写入本地存储器44a中的一个存储区,其中要写入数据的存储区由MMU 62a发送的物理地址指定。如果基于来自MMU 62a的网络节点地址是否与表示信息处理装置21_a的位置的之前保留的网络节点地址相匹配,在步骤S22中确定MMU 6 供给的网络节点地址不是表示信息处理装置21-a的位置的网络节点地址,则到达步骤S24。在步骤S24,DMA控制器43a向网络接口 4 提供MMU 62a供给的网络节点地址、 物理地址和数据。基于DMA控制器43a供给的网络节点地址、物理地址和数据,网络接口 4 创建诸如图6所示的写信息。在步骤S25,网络接口 4 将由此创建的写信息经由网络22传送到信息处理装置 21-b。继而,信息处理装置21-b基于网络接口 4 经由网络22提供的写信息来写数据。该步骤完成写处理。[信息处理装置21-a执行的读处理]下面参照图13的流程图说明的是由信息处理装置21-a执行的典型读处理,用于从信息处理装置21-a的本地存储器4 或信息处理装置21-b的本地存储器44b读取数据。读处理可以在诸如当CPU 61a控制MMU 6 等以从虚拟存储区读取与给定虚拟地址相关联的数据时这样的情况下开始。例如,CPU 61a向MMU 62a发送与作为读出目标的数据对应的虚拟地址。对于读处理,假设在高速缓存存储器64a中未发现信息处理装置21_a的CPU 61a 所需的数据。如果在高速缓存存储器64a中保留CPU 61a所需的数据,则CPU 61a从高速缓存存储器6 读取数据。在步骤S41,MMU 62a通过使用内部TLB 63a等,将CPU 61a供给的虚拟地址变换为对应的物理地址和网络节点地址。MMU 62a将经由地址变换获得的物理地址和网络节点地址提供到DMA控制器43a。在步骤S42,基于从MMU 62a供给的网络节点地址是否与表示信息处理装置21_a 的位置的之前保留的网络节点地址匹配,DMA控制器43a确定来自MMU 62a的网络节点地址是否为表示信息处理装置21-a的位置的网络节点地址。如果基于来自MMU 62a的网络节点地址是否与表示信息处理装置21_a的位置的之前保留的网络节点地址匹配,在步骤S42确定MMU 62a供给的网络节点地址确实为表示信息处理装置21-a的位置的网络节点地址,则到达步骤S43。在步骤S43,DMA控制器43a将来自MMU 62a的物理地址供给本地存储器44a,以便将从本地存储器44a中的存储区之一读取数据,从其读取数据的存储区由MMU 62a发送的物理地址指定。DMA控制器43a在将读出数据发送到MMU 6 之前,将读出数据与MMU 6 供给的物理地址和网络节点地址相关联。MMU 6 将与来自DMA控制器43a的读出数据相关联的物理地址和网络节点地址逆变换为对应的虚拟地址。MMU 6 然后在将数据供给高速缓存存储器6 以便在其中存储之前,将来自DMA 控制器43a的读出数据与通过逆变换所获得的虚拟地址相关联。这允许CPU 61a对置于高速缓存存储器64中的读出数据执行相关处理。如果基于来自MMU 62a的网络节点地址是否与表示信息处理装置21_a的位置的之前保留的网络节点地址匹配,在步骤S42确定MMU 62a供给的网络节点地址不是表示信息处理装置21-a的位置的网络节点地址,则DMA控制器43a将MMU 62a供给的物理地址和网络节点地址发送到网络接口 45a,并将控制传至步骤S44。在步骤S44,如参照图9在以上说明的那样,网络接口 4 基于内部协议信号设置寄存器中先前保留的现有传输协议信号和另一传输协议信号以及从DMA控制器43a供给的物理地址和网络节点地址,创建例如如图9所示的请求信息。网络接口 4 经由网络22将由此创建的请求信息传送到信息处理装置21-b。在步骤S45,网络接口 4 响应于已经传送的请求信息,通过网络22接收从信息处理装置21-b供给的读出信息中包括的另一传输协议信号和现有传输协议信号。网络接口 45a前进至将接收到的另一传输协议信号和现有传输协议信号供给内部协议信号设置寄存器,以便在其中存储。基于协议信号设置寄存器中存储的另一传输协议信号和现有传输协议信号,网络接口 4 经由网络22接收从信息处理装置21-b供给的读出信息中包括的读出数据和存储地址。网络接口 4 将接收到的读出数据和存储地址发送到DMA控制器43a。此外,网络接口 4 提取协议信号设置寄存器中保存的另一传输协议信号中包括的传输源(即,信息处理装置21-b)的网络节点地址,并将提取的网络节点地址供给DMA控制器43a。与同样从网络接口 4 供给的存储地址和网络节点相关联地,DMA控制器43a将来自网络接口 4 的读出数据提供给处理器41a的MMU 62a。在这种情况下,MMU 6 通过使用TLB 63a,将与来自DMA控制器43a的读出数据相关联的存储地址和网络节点地址逆变换为对应的虚拟地址。MMU 62a然后在将经由逆变换获得的虚拟地址发送到高速缓存存储器64a以便在其中存储之前,将虚拟地址与来自DMA控制器43a的读出数据相关联。这完成了读处理。在写处理中,如之前所述的那样,通过使用预先保存地址变换表(其包含将虚拟地址与对应的物理地址和网络节点地址相关联的条目)的TLB 63等,将与感兴趣的写数据对应的虚拟地址变换为对应的物理地址和网络节点地址。然后将数据写入通过地址变换获得的网络节点地址所对应的信息处理装置21-n拥有的本地存储器44中的多个存储区之一,数据要写入到的存储区由同样通过地址变换所获得的物理地址指定。在读处理中,如以上讨论的那样,通过使用TLB 63等,将与感兴趣的读出数据对应的虚拟地址变换为对应的物理地址和网络节点地址。然后从通过地址变换获得的网络节点地址所对应的信息处理装置21-n拥有的本地存储器44中多个存储区之一读取数据,要从其读取数据的本地地址由同样通过地址变换所获得的物理地址指定。以上述方式,信息处理装置21-a不仅可以利用本地存储器44a,而且可以利用例如经由网络22连接的信息处理装置21-b的本地存储器44b作为用于实施虚拟存储区的记录介质。因此,根据以上讨论的优选实施例,信息处理装置21-a可以自由地存取(即,读和写)连接到网络22上的信息处理装置21-1到21-N的多个本地存储器44中存储的数据, 而不论要读取或写入的数据是否存储在本地存储器4 中。<2.变型〉在优选实施例的以上描述中,示出由每一个信息处理装置21-1到21-N拥有的本地存储器44的存储区用作虚拟存储区。可替代地,网络22上存在的服务器或硬盘也可以用作虚拟存储区。即,网络22上发现的任何记录介质可以用作虚拟存储区。根据上述优选实施例,DMA控制器43控制数据的写和读。可替代地,控制数据读写操作的实体不限于DMA控制器43或任何其它特定组件。例如,在图14中所示的信息处理装置21-n’的情况下,在CPU 61的控制下执行数据读写操作时,网络接口 81可以接管DMA控制器43。根据上述优选实施例,信息处理装置21-a的DMA控制器43a确定MMU6h供给的网络节点地址是否为信息处理装置21-a的网络节点地址。可替代地,进行确定的实体不限于DMA控制器43a或任何其它特定组件。例如,在处理器41内部可以提供代替DMA控制器43的、用于进行确定的确定功能块。根据上述优选实施例,每一个信息处理装置21-n的TLB 63预先配备有地址变换表。可替代地,信息处理装置21-a可以创建地址变换表,并经由网络22将其发送到譬如信息处理装置21-b。
在这种情况下,信息处理装置21-b将通过网络22从信息处理装置21-a发送的地址变换表存储到TLB 63b中。在此示例中,信息处理装置21-a创建的地址变换表经由网络22传送到信息处理装置21-b,以便装置21-a创建的地址变换表可以在信息处理装置21-1到21-N之间共享。 如果信息处理装置21-a更新地址变换表,则将更新的地址变换表分发到所涉及的信息处
理装置。根据上述优选实施例,网络接口 4 创建写信息、请求信息和读出信息。可替代地,处理器41a的CPU 61a所执行的程序可被安排用以创建写信息、请求信息和读出信息, 并将这些种类的信息供给网络接口 45a。上述一系列处理可以由硬件或者软件执行。在要执行基于软件的处理的情况下, 构成软件的程序可以预先并入至计算机的专用硬件以便使用或者在使用时安装到能够基于安装的程序执行不同功能的通用个人计算机或类似装置。如果期望单独用硬件执行上述一系列处理(如创建和传送写信息、请求信息或读出信息的那些),则可能需要根据仅可由所涉及的硬件实施的专有协议,构成写信息、请求信息或读出信息中要包括的现有传输协议信号和另一传输协议信号。如果例如采用用于加密写数据、读出信息或请求数据以便通信的适当协议作为专有协议,则与采用现有协议的情况相比,可以更安全地利用虚拟存储区。可替代地,如果期望单独用软件执行用于创建并传送写信息、请求信息或读出信息的处理,则构成软件的程序可以通过使用写信息、请求信息或读出信息中包括的现有传输协议信号来实施。这将会消除对于准备专有协议的需要。例如,本公开可适用于允许网络上存在的数据和程序由方案中的各方共享的所谓的云计算或类似方案。在本说明书中,以上讨论的描述了一系列处理的步骤不仅表示要以所描绘的次序 (即,基于时间顺序)执行的处理,而且表示可以并行执行或单独执行且不一定按时间顺序执行的处理。本领域的技术人员应当理解,根据设计要求和其它因素可能出现各种修改、组合、 部分组合和变更,只要其在所附权利要求或其等同体的范围内即可。本公开包含与2010年7月16日向日本专利局提交的日本优先权专利申请JP 2010-161190中公开的主题有关的主题,其全部内容通过引用的方式合并在此。
权利要求
1.一种连接至网络的信息处理装置,所述信息处理装置包括地址变换部件,配置为当在地址变换模块中保存分配给虚拟存储区的虚拟地址,并且在其中将所述虚拟地址与指定连接到所述网络的存储部分的位置的网络节点信息相关联并与所述存储部分中的物理地址相关联时,所述地址变换部件基于所述地址变换模块将所述虚拟地址变换为所述网络节点信息和所述物理地址;以及访问通信部件,配置为基于所述地址变换部件获取的所述网络节点信息和所述物理地址,所述访问通信部件访问由连接到所述网络的所述存储部分保存的多个存储区之一,所访问的存储区由所述物理地址指定。
2.如权利要求1所述的信息处理装置,进一步包括具有多个存储区的存储部件;其中,如果所述地址变换部件获取的所述网络节点信息表示连接到所述网络的所述存储部件的位置,则所述访问通信部件访问由所述存储部件保存的所述多个存储区之一,所访问的存储区由所述地址变换部件获取的所述物理地址指定;以及如果所述地址变换部件获取的所述网络节点信息表示与所述网络上的所述存储部件不同的外部存储部分的位置,则所述访问通信部件访问由所述外部存储部分保存的多个存储区之一,所访问的存储区由所述地址变换部件获取的所述物理地址指定。
3.如权利要求2所述的信息处理装置,其中,所述地址变换模块保存多个地址变换表, 其每一个将所述虚拟地址与所述网络节点信息和所述物理地址相关联;以及基于所述地址变换模块保存的所述多个地址变换表,所述地址变换部件将所述虚拟地址变换为对应的物理地址和对应的网络节点信息。
4.如权利要求2所述的信息处理装置,其中,所述地址变换模块保存将所述虚拟地址与所述网络节点信息和所述物理地址相关联的地址变换表;并且所述信息处理装置进一步包括更新部件,配置为更新所述地址变换模块所保存的所述地址变换表。
5.如权利要求1所述的信息处理装置,其中,所述网络节点信息是已知为IP地址的因特网协议地址、已知为MAC地址的介质访问控制地址或域信息中的一部分或全部。
6.如权利要求1所述的信息处理装置,其中,所述地址变换模块保存将所述虚拟地址与所述网络节点信息和所述物理地址相关联的地址变换表;并且所述信息处理装置进一步包括传输部件,其配置为将所述地址变换模块保存的所述地址变换表传送到与所述网络连接的另一个信息处理装置,以便与所述另一个信息处理装置共享所述地址变换表。
7.一种用于与网络连接并且包括地址变换部件和访问通信部件的信息处理装置的信息处理方法,所述信息处理方法包括当在地址变换模块中保存分配给虚拟存储区的虚拟地址,并且在其中将所述虚拟地址与指定连接到所述网络的存储部分的位置的网络节点信息相关联并与所述存储部分中的物理地址相关联时,使得所述地址变换部件基于所述地址变换模块将所述虚拟地址变换为所述网络节点信息和所述物理地址;以及基于所述地址变换部件获取的所述网络节点信息和所述物理地址,使得所述访问通信部件访问由连接到所述网络的所述存储部分保存的多个存储区之一,所访问的存储区由所述物理地址指定。
8. 一种用于使得控制连接到网络的信息处理装置的计算机用作地址变换部件和访问通信部件的程序,所述程序包括当在地址变换模块中保存分配给虚拟存储区的虚拟地址,并且在其中将所述虚拟地址与指定连接到所述网络的存储部分的位置的网络节点信息相关联并与所述存储部分中的物理地址相关联时,使得所述地址变换部件基于所述地址变换模块将所述虚拟地址变换为所述网络节点信息和所述物理地址;以及基于由所述地址变换部件获取的所述网络节点信息和所述物理地址,使得所述访问通信部件访问由连接到所述网络的所述存储部分保存的多个存储区之一,所访问的存储区由所述物理地址指定。
全文摘要
在此公开信息处理装置、信息处理方法和程序。所述信息处理装置连接到网络,并且包括地址变换部件,配置为当在地址变换模块中保存分配给虚拟存储区的虚拟地址,并且在其中将所述虚拟地址与指定连接到所述网络的存储部分的位置的网络节点信息相关联并与所述存储部分中的物理地址相关联时,所述地址变换部件基于所述地址变换模块将所述虚拟地址变换为所述网络节点信息和所述物理地址;以及访问通信部件,配置为基于所述地址变换部件获取的所述网络节点信息和所述物理地址,所述访问通信部件访问由连接到所述网络的所述存储部分保存的多个存储区之一,所访问的存储区由所述物理地址指定。
文档编号G06F9/445GK102340552SQ201110200059
公开日2012年2月1日 申请日期2011年7月18日 优先权日2010年7月16日
发明者佐佐木泰树 申请人:索尼公司