CN112395220B - Processing method, device and system of shared storage controller and storage controller - Google Patents
Processing method, device and system of shared storage controller and storage controller Download PDFInfo
- Publication number
- CN112395220B CN112395220B CN202011297443.3A CN202011297443A CN112395220B CN 112395220 B CN112395220 B CN 112395220B CN 202011297443 A CN202011297443 A CN 202011297443A CN 112395220 B CN112395220 B CN 112395220B
- Authority
- CN
- China
- Prior art keywords
- address
- request
- hard disk
- storage controller
- computing node
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 13
- 238000013507 mapping Methods 0.000 claims abstract description 131
- 230000004044 response Effects 0.000 claims abstract description 44
- 238000000034 method Methods 0.000 claims abstract description 36
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 239000002699 waste material Substances 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 9
- 238000005192 partition Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0615—Address space extension
- G06F12/0623—Address space extension for memory modules
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)
Abstract
Description
技术领域technical field
本发明涉及计算机存储技术领域,尤其涉及一种共享存储控制器的处理方法、装置、系统及存储控制器、存储介质。The present invention relates to the technical field of computer storage, in particular to a processing method, device, and system for sharing a storage controller, a storage controller, and a storage medium.
背景技术Background technique
共享存储控制器可以解决高密度服务器存储系统占用机柜空间过大,存储资源不能按需分配的问题。共享存储控制器将存储资源进行了池化,通过软件配置的方式,可以根据不同应用自身的需求,将整个存储资源进行按需分配,具有弹性,按需简约的特点。The shared storage controller can solve the problem that the high-density server storage system occupies too much cabinet space and the storage resources cannot be allocated on demand. The shared storage controller pools storage resources. Through software configuration, the entire storage resource can be allocated on demand according to the needs of different applications. It is flexible and simple on demand.
在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:In the process of realizing the present invention, the inventor found that there are at least the following technical problems in the prior art:
现有共享存储控制器的实现方式,均是基于静态地址映射方式实现的。该方式一方面需要为使用该共享存储控制器的各个计算节点逐一配置每个分区的大小,十分繁琐。另一方面,该方式不是按照每个计算节点实际使用的硬盘大小进行存储资源分配,有可能造成存储资源浪费。Existing implementations of shared memory controllers are all based on static address mapping. On the one hand, this method needs to configure the size of each partition one by one for each computing node using the shared storage controller, which is very cumbersome. On the other hand, this method does not allocate storage resources according to the size of the hard disk actually used by each computing node, which may cause waste of storage resources.
发明内容Contents of the invention
本发明提供的共享存储控制器的处理方法、装置、系统及存储控制器、存储介质,能够避免存储资源的浪费。The processing method, device, system, storage controller and storage medium provided by the present invention can avoid waste of storage resources.
一方面,本发明提供一种共享存储控制器的处理方法,包括:In one aspect, the present invention provides a processing method for a shared storage controller, including:
共享存储控制器接收计算节点对数据的请求;The shared storage controller receives the computing node's request for data;
所述共享存储控制器对所述请求进行解析,解析出所述请求中携带的虚拟地址;The shared memory controller parses the request, and parses out the virtual address carried in the request;
所述共享存储控制器根据地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;The shared memory controller performs address mapping according to the address mapping relationship table, and obtains a physical address corresponding to the virtual address;
所述共享存储控制器根据映射后的物理地址,发起硬盘访问;The shared storage controller initiates hard disk access according to the mapped physical address;
所述共享存储控制器接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。The shared storage controller receives the response result of the hard disk, and forwards the response result to the computing node that initiated the request.
另一方面,本发明还提供一种共享存储控制器,包括:On the other hand, the present invention also provides a shared storage controller, including:
第一接收单元,用于接收计算节点对数据的请求;a first receiving unit, configured to receive a computing node's request for data;
解析单元,用于对所述请求进行解析,解析出所述请求中携带的虚拟地址;A parsing unit, configured to parse the request, and parse out the virtual address carried in the request;
映射单元,用于根据地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;a mapping unit, configured to perform address mapping according to an address mapping relationship table, and obtain a physical address corresponding to the virtual address;
访问单元,用于根据映射后的物理地址,发起硬盘访问;The access unit is used for initiating hard disk access according to the mapped physical address;
第二接收单元,用于接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。The second receiving unit is configured to receive the response result of the hard disk, and forward the response result to the computing node that initiates the request.
另一方面,本发明还提供一种共享存储控制器的处理系统,包括:On the other hand, the present invention also provides a processing system for sharing a memory controller, including:
至少一个共享存储控制器;分别与每个所述共享存储控制器直接连接的硬盘和至少一个计算节点;At least one shared storage controller; a hard disk and at least one computing node directly connected to each shared storage controller;
所述共享存储控制器用于,接收计算节点对数据的请求;对所述请求进行解析,解析出所述请求中携带的虚拟地址;根据地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;根据映射后的物理地址,发起硬盘访问;接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。The shared storage controller is configured to receive a request from a computing node for data; parse the request to obtain a virtual address carried in the request; perform address mapping according to an address mapping table, and obtain the virtual address corresponding to the virtual address. physical address; initiate hard disk access according to the mapped physical address; receive a response result from the hard disk, and forward the response result to the computing node that initiated the request.
另一方面,本发明还提供一种共享存储控制器的处理装置,包括:On the other hand, the present invention also provides a processing device for sharing a storage controller, including:
存储器;memory;
以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行所述的方法。and a processor coupled to the memory, the processor configured to perform the method based on instructions stored in the memory.
另一方面,本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现所述的方法。On the other hand, the present invention also provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer instructions, and the computer instructions implement the method when executed by a processor.
上述方案中,基于动态地址映射的共享存储控制器,全程自主建立维护地址映射关系表,仅为有真实访问的虚拟地址分配物理地址空间,避免了存储资源的浪费。In the above solution, the shared storage controller based on dynamic address mapping independently establishes and maintains the address mapping relationship table throughout the process, and only allocates physical address space for virtual addresses with real access, avoiding waste of storage resources.
附图说明Description of drawings
图1为本发明第一实施例所述的一种共享存储控制器的处理方法的流程图;FIG. 1 is a flowchart of a processing method for a shared memory controller according to the first embodiment of the present invention;
图2为本发明实施例中的动态地址映射共享存储控制器的实现方案的示意图;FIG. 2 is a schematic diagram of an implementation scheme of a dynamic address mapping shared memory controller in an embodiment of the present invention;
图3为本发明实施例硬盘表项DTE的数据结构的示意图;Fig. 3 is the schematic diagram of the data structure of hard disk entry DTE of the embodiment of the present invention;
图4为本发明实施例中动态地址映射共享存储控制器的处理流程示意图。FIG. 4 is a schematic diagram of a processing flow of a dynamic address mapping shared memory controller in an embodiment of the present invention.
图5为本发明实施例中Disk Table Cache的示意图;Fig. 5 is the schematic diagram of Disk Table Cache in the embodiment of the present invention;
图6为本发明实施例中共享存储控制器的处理系统的示意图;FIG. 6 is a schematic diagram of a processing system sharing a memory controller in an embodiment of the present invention;
图7为本发明实施例中共享存储控制器的处理流程示意图;FIG. 7 is a schematic diagram of a processing flow of a shared storage controller in an embodiment of the present invention;
图8为本发明所述的一种共享存储控制器的连接示意图。FIG. 8 is a schematic diagram of connection of a shared storage controller according to the present invention.
图9为本发明所述的一种共享存储控制器的处理装置的连接图。FIG. 9 is a connection diagram of a processing device sharing a memory controller according to the present invention.
具体实施方式Detailed ways
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments It is only some embodiments of the present invention, but not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.
第一实施例:First embodiment:
如图1所示,为本发明所述的一种共享存储控制器的处理方法,包括:As shown in Figure 1, it is a processing method of a shared memory controller according to the present invention, including:
步骤11,将各计算节点访问的硬盘地址作为虚拟地址,将所述虚拟地址映射后的地址作为物理地址;将所述虚拟地址的空间和所述物理地址的空间以预定大小的块为单位进行划分;Step 11, use the address of the hard disk accessed by each computing node as a virtual address, and use the address mapped from the virtual address as a physical address; use the space of the virtual address and the space of the physical address as a unit of a block of a predetermined size division;
步骤12,在共享存储控制器中建立地址映射关系表,所述地址映射关系表用于记录共享存储控制器的本地硬盘中的虚拟地址和物理地址之间的映射关系。Step 12, establishing an address mapping relationship table in the shared storage controller, where the address mapping relationship table is used to record the mapping relationship between virtual addresses and physical addresses in the local hard disk of the shared storage controller.
步骤13,共享存储控制器接收计算节点对数据的请求;Step 13, the shared storage controller receives the computing node's request for data;
步骤14,所述共享存储控制器对所述请求进行解析,解析出所述请求中携带的虚拟地址;Step 14, the shared storage controller parses the request, and parses out the virtual address carried in the request;
步骤15,所述共享存储控制器根据所述地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;Step 15, the shared storage controller performs address mapping according to the address mapping relationship table, and obtains a physical address corresponding to the virtual address;
步骤16,所述共享存储控制器根据映射后的物理地址,发起硬盘访问;
步骤17,所述共享存储控制器接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。Step 17, the shared storage controller receives the response result of the hard disk, and forwards the response result to the computing node that initiated the request.
上述方案中,基于动态地址映射的共享存储控制器,全程自主建立维护地址映射关系表,仅为有真实访问的虚拟地址分配物理地址空间,避免了存储资源的浪费。In the above solution, the shared storage controller based on dynamic address mapping independently establishes and maintains the address mapping relationship table throughout the process, and only allocates physical address space for virtual addresses with real access, avoiding waste of storage resources.
期中,所述地址映射关系表包括硬盘表项DTE;During the period, the address mapping relationship table includes a hard disk entry DTE;
所述硬盘表项DTE的数据结构包括:The data structure of the hard disk entry DTE includes:
PR,用于标识所述硬盘表项是否有效,当bit为1时代表所述表项有效,为0时代表所述表项无效;PR, used to identify whether the hard disk entry is valid, when the bit is 1, it means that the entry is valid, and when it is 0, it means that the entry is invalid;
S:为共享标志位,bit为1时代表所述虚拟地址为多计算节点共享,为0时代表为私有地址;S: It is a shared flag bit. When the bit is 1, it means that the virtual address is shared by multiple computing nodes. When it is 0, it means that it is a private address;
计算节点标识位,用于标识发起请求的计算节点的标识;The computing node identification bit is used to identify the identification of the computing node that initiates the request;
虚拟地址位,为标识计算节点访问的虚拟地址的位;The virtual address bit is a bit identifying a virtual address accessed by the computing node;
物理地址位,为标识经所述共享存储控制器映射后的物理地址的位。The physical address bit is a bit that identifies the physical address mapped by the shared memory controller.
可选的,所述步骤15包括:Optionally, the step 15 includes:
当在地址映射关系表中查找到第一硬盘表项时,所述第一硬盘表项中的计算节点的标识与发起所述请求的计算节点的标识一致,且所述硬盘表项中的虚拟地址与所述请求中的虚拟地址相同,则将所述请求地址的虚拟地址转换为所述第一硬盘表项中所记录的物理地址,完成地址映射;When the first hard disk entry is found in the address mapping table, the identifier of the computing node in the first hard disk entry is consistent with the identifier of the computing node that initiated the request, and the virtual The address is the same as the virtual address in the request, then converting the virtual address of the request address into the physical address recorded in the first hard disk entry, and completing the address mapping;
当在所述地址映射关系表中没有查找到所述第一硬盘表项时,则在所述地址映射关系表中新建第二硬盘表项;所述第二硬盘表项的Req ID为请求的计算节点,所述第二硬盘表项的虚拟地址为所述请求携带的虚拟地址,所述第二硬盘表项的物理地址为所述硬盘的下一个未分配的物理地址块的首地址,以完成地址映射。When not finding the first hard disk entry in the address mapping table, then create a second hard disk entry in the address mapping table; the Req ID of the second hard disk entry is requested The computing node, the virtual address of the second hard disk entry is the virtual address carried in the request, the physical address of the second hard disk entry is the first address of the next unallocated physical address block of the hard disk, and Complete address mapping.
第二实施例:Second embodiment:
本发明所述的一种共享存储控制器的处理方法的另一实施例,包括:Another embodiment of the processing method of a shared memory controller according to the present invention includes:
步骤21,将各计算节点访问的硬盘地址作为虚拟地址,将所述虚拟地址映射后的地址作为物理地址;将所述虚拟地址的空间和所述物理地址的空间以预定大小的块为单位进行划分;Step 21, use the address of the hard disk accessed by each computing node as a virtual address, and use the address mapped from the virtual address as a physical address; use the space of the virtual address and the space of the physical address as a unit of a block of a predetermined size division;
步骤22,在共享存储控制器中建立地址映射关系表,所述地址映射关系表用于记录共享存储控制器的本地硬盘中的虚拟地址和物理地址之间的映射关系。Step 22, establishing an address mapping relationship table in the shared storage controller, where the address mapping relationship table is used to record the mapping relationship between virtual addresses and physical addresses in the local hard disk of the shared storage controller.
步骤23,共享存储控制器接收计算节点对数据的请求;Step 23, the shared storage controller receives the computing node's request for data;
步骤24,当所述计算节点请求的数据跨越至少两个块时,将所述请求拆分成至少两个子请求,每个子请求对应一个块的访问;分别解析出各个所述子请求中携带的虚拟地址。
步骤25,所述共享存储控制器根据所述地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;Step 25, the shared memory controller performs address mapping according to the address mapping relationship table, and obtains a physical address corresponding to the virtual address;
步骤26,所述共享存储控制器根据映射后的物理地址,发起硬盘访问;Step 26, the shared storage controller initiates hard disk access according to the mapped physical address;
步骤27,所述共享存储控制器接收所述硬盘的至少两次响应结果,将至少两次访问硬盘返回的响应组合成一个响应,并将合成的所述响应返回给所述计算节点。Step 27: The shared storage controller receives at least two response results from the hard disk, combines the responses returned by at least two accesses to the hard disk into one response, and returns the combined response to the computing node.
上述实施例中,能够针对计算节点请求的数据跨越至少两个块时的场景进行处理。In the foregoing embodiments, processing can be performed on a scenario where data requested by a computing node spans at least two blocks.
第三实施例:Third embodiment:
本发明所述的一种共享存储控制器的处理方法的另一实施例,包括:Another embodiment of the processing method of a shared memory controller according to the present invention includes:
步骤31,将各计算节点访问的硬盘地址作为虚拟地址,将所述虚拟地址映射后的地址作为物理地址;将所述虚拟地址的空间和所述物理地址的空间以预定大小的块为单位进行划分;Step 31, use the address of the hard disk accessed by each computing node as a virtual address, and use the address mapped from the virtual address as a physical address; the space of the virtual address and the space of the physical address are performed in units of blocks of a predetermined size division;
步骤32,在共享存储控制器中建立地址映射关系表,所述地址映射关系表用于记录共享存储控制器的本地硬盘中的虚拟地址和物理地址之间的映射关系。且共享存储控制器中预先设置有地址映射关系表缓存空间,所述地址映射关系表缓存空间存储有硬盘表项;Step 32, establishing an address mapping relationship table in the shared storage controller, where the address mapping relationship table is used to record the mapping relationship between virtual addresses and physical addresses in the local hard disk of the shared storage controller. And the address mapping relationship table cache space is preset in the shared storage controller, and the address mapping relationship table cache space stores hard disk entries;
步骤33,共享存储控制器接收计算节点对数据的请求;
步骤34,所述共享存储控制器对所述请求进行解析,解析出所述请求中携带的虚拟地址;
步骤35,所述共享存储控制器根据所述地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;所述步骤15包括:在所述地址映射关系表和所述地址映射关系表缓存空间中分别查找所述第一硬盘表项;当在所述地址映射关系表中查找到第一硬盘表项时,则进行地址映射,并停止在地址映射关系表中查找。Step 35, the shared memory controller performs address mapping according to the address mapping relationship table, and obtains the physical address corresponding to the virtual address; the step 15 includes: in the address mapping relationship table and the address mapping relationship The first hard disk entry is searched in the table cache space; when the first hard disk entry is found in the address mapping table, address mapping is performed, and the search in the address mapping table is stopped.
步骤36,所述共享存储控制器根据映射后的物理地址,发起硬盘访问;
步骤37,所述共享存储控制器接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。
上述实施例,使用地址映射关系表缓存空间,可以加快地址映射的映射时间。In the above embodiment, the address mapping time can be accelerated by using the cache space of the address mapping relationship table.
第四实施例:Fourth embodiment:
本发明所述的一种共享存储控制器的处理方法的另一实施例,包括:Another embodiment of the processing method of a shared memory controller according to the present invention includes:
步骤41,将各计算节点访问的硬盘地址作为虚拟地址,将所述虚拟地址映射后的地址作为物理地址;将所述虚拟地址的空间和所述物理地址的空间以预定大小的块为单位进行划分;预先配置共享虚拟地址空间的起始地址及空间大小;Step 41, use the address of the hard disk accessed by each computing node as a virtual address, and use the address mapped from the virtual address as a physical address; use the space of the virtual address and the space of the physical address as a unit of a block of a predetermined size Division; pre-configure the start address and space size of the shared virtual address space;
步骤42,在共享存储控制器中建立地址映射关系表,所述地址映射关系表用于记录共享存储控制器的本地硬盘中的虚拟地址和物理地址之间的映射关系。Step 42, establishing an address mapping relationship table in the shared storage controller, where the address mapping relationship table is used to record the mapping relationship between virtual addresses and physical addresses in the local hard disk of the shared storage controller.
步骤43,共享存储控制器接收计算节点对数据的请求;Step 43, the shared storage controller receives the computing node's request for data;
步骤44,所述共享存储控制器对所述请求进行解析,解析出所述请求中携带的虚拟地址;Step 44, the shared storage controller parses the request, and parses out the virtual address carried in the request;
步骤45,所述共享存储控制器根据所述地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;所述步骤15包括:当所述第二硬盘表项中的虚拟地址与所述请求中的虚拟地址相同时,且所述第二硬盘表项的S位表示该虚拟地址处于共享虚拟地址空间范围时,用将所述请求地址的虚拟地址转换为所述第二硬盘表项中所记录的物理地址,完成地址映射。Step 45, the shared storage controller performs address mapping according to the address mapping relationship table, and obtains the physical address corresponding to the virtual address; the step 15 includes: when the virtual address in the second hard disk entry is the same as When the virtual address in the request is the same, and the S bit of the second hard disk entry indicates that the virtual address is in the shared virtual address space range, the virtual address of the request address is converted into the second hard disk table The physical address recorded in the item completes the address mapping.
步骤46,所述共享存储控制器根据映射后的物理地址,发起硬盘访问;Step 46, the shared storage controller initiates hard disk access according to the mapped physical address;
步骤47,所述共享存储控制器接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。Step 47, the shared storage controller receives the response result of the hard disk, and forwards the response result to the computing node that initiated the request.
上述实施例,可以应用于共享虚拟地址空间的处理场景。The foregoing embodiments may be applied to a processing scenario of sharing a virtual address space.
第五实施例:Fifth embodiment:
本发明所述的一种共享存储控制器的处理方法的另一实施例,包括:Another embodiment of the processing method of a shared memory controller according to the present invention includes:
步骤41,将各计算节点访问的硬盘地址作为虚拟地址,将所述虚拟地址映射后的地址作为物理地址;将所述虚拟地址的空间和所述物理地址的空间以预定大小的块为单位进行划分;Step 41, use the address of the hard disk accessed by each computing node as a virtual address, and use the address mapped from the virtual address as a physical address; use the space of the virtual address and the space of the physical address as a unit of a block of a predetermined size division;
步骤42,在共享存储控制器中建立地址映射关系表,所述地址映射关系表用于记录共享存储控制器的本地硬盘中的虚拟地址和物理地址之间的映射关系。Step 42, establishing an address mapping relationship table in the shared storage controller, where the address mapping relationship table is used to record the mapping relationship between virtual addresses and physical addresses in the local hard disk of the shared storage controller.
步骤43,共享存储控制器接收计算节点对数据的请求;当所述请求为写请求,且所述请求的虚拟地址处于共享虚拟地址空间范围内,则所述共享存储控制器判断是否为主控制计算节点发起的请求,生成判断结果;当所述判断结果为是时,则执行步骤14;否则,丢弃所述请求,不进行处理。Step 43: The shared storage controller receives a computing node's request for data; when the request is a write request, and the virtual address of the request is within the range of the shared virtual address space, the shared storage controller determines whether it is the main controller Compute the request initiated by the node, and generate a judgment result; if the judgment result is yes, execute step 14; otherwise, discard the request without processing.
步骤44,所述共享存储控制器对所述请求进行解析,解析出所述请求中携带的虚拟地址;Step 44, the shared storage controller parses the request, and parses out the virtual address carried in the request;
步骤45,所述共享存储控制器根据所述地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;Step 45, the shared memory controller performs address mapping according to the address mapping relationship table, and obtains a physical address corresponding to the virtual address;
步骤46,所述共享存储控制器根据映射后的物理地址,发起硬盘访问;Step 46, the shared storage controller initiates hard disk access according to the mapped physical address;
步骤47,所述共享存储控制器接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。Step 47, the shared storage controller receives the response result of the hard disk, and forwards the response result to the computing node that initiated the request.
上述实施例中,适用于多个计算节点的应用场景。The foregoing embodiments are applicable to application scenarios of multiple computing nodes.
以下描述本发明的应用场景。本发明提出了一种基于动态地址映射的共享存储控制器的处理方法。该方法在各个计算节点访问硬盘时,根据其访问地址及存储资源池情况,动态确定其与各硬盘的映射关系。而不是提前就将各计算节点与各硬盘的映射关系固定好。该实现方法一方面,不需要提前为每个计算节点的各个分区配置与存储资源池中各硬盘的映射关系,只需要配置每个计算节点使用的总存储容量及共享空间地址即可。另一方面,该方法只为各计算节点实际使用的硬盘地址进行存储资源映射,对于未使用到的地址则不会在存储资源池中为其保留资源,避免了存储资源浪费。共享存储控制器可以通过软件配置的方式,将整个存储资源池按需分配给各个计算节点。且整个过程对于各个计算节点是完全透明的。The application scenarios of the present invention are described below. The invention proposes a processing method of a shared memory controller based on dynamic address mapping. The method dynamically determines the mapping relationship between each computing node and each hard disk according to its access address and storage resource pool conditions when each computing node accesses the hard disk. Instead of fixing the mapping relationship between each computing node and each hard disk in advance. On the one hand, this implementation method does not need to configure the mapping relationship between each partition of each computing node and each hard disk in the storage resource pool in advance, and only needs to configure the total storage capacity and shared space address used by each computing node. On the other hand, this method only performs storage resource mapping for the hard disk addresses actually used by each computing node, and does not reserve resources for unused addresses in the storage resource pool, avoiding waste of storage resources. The shared storage controller can allocate the entire storage resource pool to each computing node on demand through software configuration. And the whole process is completely transparent to each computing node.
整个系统由计算节点、共享存储控制器、硬盘三个模块组成,如图2所示。该方案通过软件配置各计算节点所需存储资源的大小及共享空间地址即可。具体的映射关系,则由共享存储控制器本身进行动态建立和维护。The whole system consists of three modules: computing nodes, shared storage controllers, and hard disks, as shown in Figure 2. In this solution, the size of the storage resources required by each computing node and the address of the shared space can be configured through software. The specific mapping relationship is dynamically established and maintained by the shared storage controller itself.
图2为动态地址映射共享存储控制器实现方案。将各计算节点访问的硬盘地址称为虚拟地址,将经过共享存储控制器进行映射后的地址称为物理地址。将虚拟地址空间和物理地址空间以块为单位进行划分。例如:每块大小可以为2M Bytes。如果一个物理地址空间容量为4T Bytes,那么以2M Bytes为一块进行分块,则可分出2M个块单位。Figure 2 is the implementation scheme of the dynamic address mapping shared memory controller. The hard disk address accessed by each computing node is called a virtual address, and the address mapped by the shared storage controller is called a physical address. Divide the virtual address space and physical address space in units of blocks. For example: the size of each block can be 2M Bytes. If the capacity of a physical address space is 4T Bytes, then 2M Bytes are divided into blocks, and 2M block units can be divided.
共享存储控制器自身维护一个地址映射关系表,称为Disk Table,该表负责维护与该共享存储控制器所带硬盘相关的地址映射。Disk Table中包含的表项称为Disk TableEntry(DTE),每个DTE负责维护一个块单位的地址映射关系。例如,共享存储控制器所带硬盘容量为4T Bytes,则该共享存储控制器中的Disk Table含有2M个DTE。DTE的格式如图3所示。The shared storage controller itself maintains an address mapping relationship table, called Disk Table, which is responsible for maintaining the address mapping related to the hard disk of the shared storage controller. The entries contained in the Disk Table are called Disk TableEntry (DTE), and each DTE is responsible for maintaining the address mapping relationship of a block unit. For example, if the hard disk capacity of the shared storage controller is 4T Bytes, then the Disk Table in the shared storage controller contains 2M DTEs. The format of DTE is shown in Figure 3.
PR:标识该表项是否有效。该bit为1代表该表项有效,为0代表该表项无效。PR: Indicates whether the entry is valid. If the bit is 1, it means that the entry is valid, and if it is 0, it means that the entry is invalid.
S:共享标志位,该bit为1代表该虚拟地址为多计算节点共享,为0代表为私有地址。S: Shared flag bit, when the bit is 1, it means that the virtual address is shared by multiple computing nodes, and when it is 0, it means it is a private address.
计算节点标识Req ID:标识发起请求的计算节点标识。Computing node ID Req ID: identifies the ID of the computing node that initiated the request.
虚拟地址Virtual Address[47:21],标识计算节点访问的虚拟地址的高27位。The virtual address Virtual Address[47:21] identifies the upper 27 bits of the virtual address accessed by the computing node.
Reserved:保留位。Reserved: reserved bit.
物理地址Physical Address[47:21]:标识经该共享存储控制器映射后的物理地址的高27位。Physical address Physical Address[47:21]: identifies the upper 27 bits of the physical address mapped by the shared memory controller.
每个计算节点在发起硬盘请求后,该请求会发往共享存储控制器。共享存储控制器的处理流程如图4所示,具体可以分为如下几个步骤:After each computing node initiates a hard disk request, the request will be sent to the shared storage controller. The processing flow of the shared memory controller is shown in Figure 4, which can be divided into the following steps:
步骤1,共享存储控制器对计算节点的请求进行解析。解析出计算节点发起的请求命令、地址、长度、数据等信息。
步骤2,共享存储控制器根据该请求中的地址进行查表。
如果在Disk Table中查找到含有该计算节点对应请求地址的表项,即该表项中的的Req ID与发起该请求的计算节点一致,且该表项中的Virtual Address[47:21]与请求地址的高27位相同,则将该请求地址的高27位转换为表项中所记录的Physical Address[47:21],完成地址映射。If an entry containing the request address corresponding to the computing node is found in the Disk Table, that is, the Req ID in the entry is consistent with the computing node that initiated the request, and the Virtual Address[47:21] in the entry is the same as If the upper 27 bits of the request address are the same, the upper 27 bits of the request address are converted to the Physical Address[47:21] recorded in the entry to complete the address mapping.
如果在Disk Table中查找不到含有该计算节点对应请求地址的表项,则在DiskTable中新建一个表项。该表项的Req ID为请求的计算节点,该表项的Virtual Address[47:21]为对应请求地址的高27位,该表项的Physical Address[47:21]为该硬盘下一个未分配的物理地址块首地址的高27位,最后将该表项的PR置位。建立新的表项后,即可按照此表项完成地址映射。If the entry containing the request address corresponding to the computing node cannot be found in the Disk Table, create a new entry in the DiskTable. The Req ID of this entry is the requested computing node, the Virtual Address[47:21] of this entry is the upper 27 bits of the address corresponding to the request, and the Physical Address[47:21] of this entry is the next unallocated The upper 27 bits of the first address of the physical address block, and finally set the PR of the entry. After creating a new table entry, address mapping can be completed according to this table entry.
步骤3,共享存储控制器按映射后的物理地址,发起硬盘访问。Step 3, the shared storage controller initiates hard disk access according to the mapped physical address.
步骤4,共享存储控制器接收硬盘响应的结果,并将结果转发至发起请求的计算节点。
在一个实施例中,如果计算节点的一次数据请求跨越了2个块,则需要将该数据请求拆分成两个请求,每个请求对应一个块的访问。然后对两个请求依次分别进行查表、地址映射、访问硬盘。最后将两次访问硬盘返回的结果进行组合,组合成一个响应返回给对应计算节点。In one embodiment, if a data request of a computing node spans two blocks, the data request needs to be split into two requests, and each request corresponds to the access of one block. Then perform table lookup, address mapping, and access to the hard disk for the two requests in turn. Finally, the results returned by the two visits to the hard disk are combined, and a response is returned to the corresponding computing node.
在一个实施例中,为了进一步提高数据请求响应的速度,减少查表所用时间,在共享存储控制器中加入了Disk Table Cache。在该Cache中可以存储2K个DTE,每次解析数据请求后,以计算节点编号及请求地址的高27位进行查表的同时,在Disk Table Cache中进行查找。如果在Disk Table Cache中命中,则直接进行地址映射,并停止在Disk Table中查找。如果没在Disk Table Cache中命中,则在Disk Table中找到该DTE后,将该DTE复制到Disk Table Cache中,如图5所示,为Disk Table Cache的示意图。如果Disk Table Cache已满,则将其中最长时间未命中的DTE移除出Disk Table Cache。In one embodiment, in order to further increase the response speed of data requests and reduce the time spent on table lookup, a Disk Table Cache is added to the shared storage controller. 2K DTEs can be stored in the Cache. After each data request is parsed, the node number and the upper 27 bits of the request address are used to look up the table while searching in the Disk Table Cache. If it hits in the Disk Table Cache, directly perform address mapping and stop searching in the Disk Table. If there is no hit in the Disk Table Cache, after finding the DTE in the Disk Table, copy the DTE to the Disk Table Cache, as shown in Figure 5, which is a schematic diagram of the Disk Table Cache. If the Disk Table Cache is full, the DTE that has not been hit for the longest time will be removed from the Disk Table Cache.
在一个实施例中,本技术方案公开的基于动态地址映射方式实现的共享存储控制器,也可以支持多计算节点共享虚拟地址。如果要使能共享虚拟地址功能,则需要在软件配置时,配置共享虚拟地址空间的起始地址及空间大小。In one embodiment, the shared storage controller based on the dynamic address mapping method disclosed in this technical solution can also support the sharing of virtual addresses by multiple computing nodes. If you want to enable the shared virtual address function, you need to configure the start address and space size of the shared virtual address space during software configuration.
使能共享虚拟地址后,在Disk Table中建立新的DTE表项的时候,需要检查该计算节点发起的数据请求中的虚拟地址是否处于共享虚拟地址空间范围,如果处于共享虚拟地址空间范围,则将该DTE表项中的S共享标志位进行置位。After the shared virtual address is enabled, when creating a new DTE entry in the Disk Table, it is necessary to check whether the virtual address in the data request initiated by the computing node is within the range of the shared virtual address space. If it is within the range of the shared virtual address space, then Set the S shared flag bit in the DTE entry.
共享存储控制器在处理各计算节点发起的数据请求,进行查表的时候。如果匹配Virtual Address的DTE表项S位为1,即代表该地址处于共享虚拟地址空间范围,那么则不需要再对其Req ID进行匹配,即可用此DTE完成地址映射。When the shared storage controller processes data requests initiated by each computing node and performs table lookup. If the S bit of the DTE entry matching the Virtual Address is 1, it means that the address is in the range of the shared virtual address space, then there is no need to match the Req ID, and this DTE can be used to complete address mapping.
在不同计算节点共享同一段地址空间的情况下,只有计算节点1对共享地址空间具有写权限,其余计算节点仅对共享地址空间具有读权限。如果计算节点发起的数据请求为写请求且地址处于共享虚拟地址空间范围内,则需要检查是否为计算节点1发起的该请求。如果是计算节点1发起的请求,则按正常流程处理。如果不是计算节点1发起的请求,则直接丢弃该请求,并向发起的计算节点,返回正常完成响应。When different computing nodes share the same segment of address space, only computing
现有的共享存储控制器实现方法中,地址映射关系表是通过软件的方式静态配置的。这种配置方式,一方面要配置的内容十分繁琐,容易配置错误;另一方面,即便是各个计算节点没有使用的虚拟地址空间也会被分配对应的物理地址空间,会造成存储资源的浪费。In the existing shared memory controller implementation method, the address mapping relationship table is statically configured by means of software. In this configuration method, on the one hand, the content to be configured is very cumbersome, and it is easy to make configuration errors; on the other hand, even the unused virtual address space of each computing node will be allocated the corresponding physical address space, which will cause a waste of storage resources.
本发明具有以下有益效果:The present invention has the following beneficial effects:
1、本发明中,共享存储控制器自身来维护地址映射关系表,在共享存储控制器内部建立Disk Table,通过查表来完成地址映射,跨越块边界访问的问题。1. In the present invention, the shared storage controller itself maintains the address mapping relationship table, establishes a Disk Table inside the shared storage controller, completes address mapping by looking up the table, and accesses across block boundaries.
2.本发明通过增加Disk Table Cache,提高了查表效率。2. The present invention improves the table look-up efficiency by increasing the Disk Table Cache.
3.本发明基于动态地址映射的多计算节点共享虚拟地址,动态地址映射共享存储控制器,是由共享存储控制器自身来维护地址映射关系表,动态的建立虚拟地址和物理地址的映射关系。因此,既可以免去软件配置的繁琐,又可以仅为计算节点实际使用到的虚拟地址空间分配物理地址空间,因此可提升存储资源的使用率,避免存储资源的浪费。3. The present invention is based on the multi-computing node sharing virtual address of dynamic address mapping, and the dynamic address mapping shared storage controller maintains the address mapping relationship table by the shared storage controller itself, and dynamically establishes the mapping relationship between virtual address and physical address. Therefore, the cumbersome software configuration can be avoided, and the physical address space can be allocated only to the virtual address space actually used by the computing nodes, so the utilization rate of storage resources can be improved and the waste of storage resources can be avoided.
下面以拥有32个计算节点的系统为例,介绍基于动态地址映射的共享存储控制器的实施例。The following uses a system with 32 computing nodes as an example to introduce an embodiment of a shared storage controller based on dynamic address mapping.
如图6所示,整个系统一共包含4个共享存储控制器,每个共享存储控制器与8个计算节点和1个硬盘直接相连,同时每个共享存储控制器都与其余3个共享存储控制器相连,4个硬盘通过共享存储控制器组成一个存储资源池,被32个计算节点按需使用。As shown in Figure 6, the entire system contains 4 shared storage controllers, each shared storage controller is directly connected to 8 computing nodes and 1 hard disk, and each shared storage controller is connected to the remaining 3 shared storage controllers. The four hard disks form a storage resource pool through the shared storage controller, which is used by 32 computing nodes on demand.
以计算节点1发起数据请求为例,共享存储控制器的处理流程如图7所示。Taking the data request initiated by computing
步骤1,计算节点1发起数据请求到共享控制器1,共享控制器1对该数据请求进行解析,解析出该地址的命令、地址、长度、数据等信息。In
步骤2,共享存储控制器1根据该请求中的地址进行查表。如果在共享存储控制器1的地址映射表中查询到该表项,则按照表项进行地址映射。然后按映射后的物理地址,对硬盘1发起访问。最后将硬盘1的响应转发至计算节点1。In
步骤3,如果在共享存储控制器1的地址映射表中没有查询到该表项,则将该请求发往共享存储控制器2。然后在共享存储控制器2中,根据该请求中的地址进行查表。Step 3, if the entry is not found in the address mapping table of the shared
步骤4,如果在共享存储控制器2的地址映射表中命中,则按命中的表项进行地址映射,并由共享存储控制器2按映射后的物理地址对硬盘2发起访问,然后将硬盘2的响应转发至共享存储控制器1,最后由共享存储控制器1将结果返回计算节点1。
步骤5,如果没在共享存储控制器2的地址映射表中命中,则依次在共享存储控制器3和共享存储控制4中重复第3步和第4步。Step 5, if there is no hit in the address mapping table of the shared
步骤6,如果该请求在4个共享存储控制器的地址映射表中均没有命中,则在共享存储控制器1中为该请求建立新的DTE。并按新建的DTE完成地址映射,然后按映射后的物理地址,对硬盘1发起访问。最后将硬盘1的响应转发至计算节点1。Step 6, if the request has no hit in the address mapping tables of the four shared memory controllers, a new DTE is established for the request in the shared
步骤7,如果共享存储控制器1中已没有可分配的块,则依次在共享存储控制器2、3、4中,查询是否有可分配的块,并在有可分配块的共享存储控制器中,建立新的DTE,完成地址映射,向对应的硬盘发起访问。然后对应的共享存储控制器再将其硬盘的响应返回共享控制器1,最后由共享控制器1将结果返回计算节点1。Step 7, if there is no block that can be allocated in the shared
上述方案中,基于动态地址映射的共享存储控制器,全程自主建立维护地址映射关系表,仅为有真实访问的虚拟地址分配物理地址空间,避免了存储资源的浪费。In the above solution, the shared storage controller based on dynamic address mapping independently establishes and maintains the address mapping relationship table throughout the process, and only allocates physical address space for virtual addresses with real access, avoiding waste of storage resources.
如图8所示,为本发明所述的一种共享存储控制器,包括:As shown in Figure 8, it is a shared memory controller according to the present invention, including:
第一接收单元,用于接收计算节点对数据的请求;a first receiving unit, configured to receive a computing node's request for data;
解析单元,用于对所述请求进行解析,解析出所述请求中携带的虚拟地址;A parsing unit, configured to parse the request, and parse out the virtual address carried in the request;
映射单元,用于根据地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;a mapping unit, configured to perform address mapping according to an address mapping relationship table, and obtain a physical address corresponding to the virtual address;
访问单元,用于根据映射后的物理地址,发起硬盘访问;The access unit is used for initiating hard disk access according to the mapped physical address;
第二接收单元,用于接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。The second receiving unit is configured to receive the response result of the hard disk, and forward the response result to the computing node that initiates the request.
本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。The device of this embodiment can be used to implement the technical solution of the above method embodiment, and its implementation principle and technical effect are similar, and will not be repeated here.
如图6所示,为本发明所述的一种共享存储控制器的处理系统,包括:As shown in Figure 6, it is a processing system of a shared storage controller according to the present invention, including:
至少一个共享存储控制器;分别与每个所述共享存储控制器直接连接的硬盘和至少一个计算节点;At least one shared storage controller; a hard disk and at least one computing node directly connected to each shared storage controller;
所述共享存储控制器用于,接收计算节点对数据的请求;对所述请求进行解析,解析出所述请求中携带的虚拟地址;根据所述地址映射关系表,进行地址映射,获取所述虚拟地址对应的物理地址;根据映射后的物理地址,发起硬盘访问;接收所述硬盘的响应结果,并将所述响应结果转发至发起请求的所述计算节点。The shared storage controller is configured to receive a request from a computing node for data; parse the request to obtain a virtual address carried in the request; perform address mapping according to the address mapping table to obtain the virtual address A physical address corresponding to the address; initiating hard disk access according to the mapped physical address; receiving a response result from the hard disk, and forwarding the response result to the computing node that initiated the request.
如图9所示,本发明还提供一种共享存储控制器的处理装置,包括:As shown in FIG. 9, the present invention also provides a processing device for a shared memory controller, including:
存储器;memory;
以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行所述的方法。and a processor coupled to the memory, the processor configured to perform the method based on instructions stored in the memory.
本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行所述的方法。The present invention also provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are executed by a processor to execute the method.
本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。Those of ordinary skill in the art can understand that all or part of the processes in the above method embodiments can be completed by instructing related hardware through computer programs. The program can be stored in a computer-readable storage medium. The program During execution, it may include the processes of the embodiments of the above-mentioned methods. Wherein, the storage medium may be a magnetic disk, an optical disk, a read-only memory (Read-Only Memory, ROM) or a random access memory (Random Access Memory, RAM) and the like.
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。The above is only a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Anyone skilled in the art can easily think of changes or substitutions within the technical scope disclosed in the present invention. All should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention should be determined by the protection scope of the claims.
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011297443.3A CN112395220B (en) | 2020-11-18 | 2020-11-18 | Processing method, device and system of shared storage controller and storage controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011297443.3A CN112395220B (en) | 2020-11-18 | 2020-11-18 | Processing method, device and system of shared storage controller and storage controller |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112395220A CN112395220A (en) | 2021-02-23 |
CN112395220B true CN112395220B (en) | 2023-02-28 |
Family
ID=74606673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011297443.3A Active CN112395220B (en) | 2020-11-18 | 2020-11-18 | Processing method, device and system of shared storage controller and storage controller |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112395220B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116010296A (en) * | 2021-10-21 | 2023-04-25 | 华为技术有限公司 | A method, device and system for processing requests |
CN114710467B (en) * | 2022-03-25 | 2024-03-12 | 阿里巴巴(中国)有限公司 | IP address storage method and device and hardware gateway |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1705269A (en) * | 2004-05-25 | 2005-12-07 | 中国科学院计算技术研究所 | Remote page access method for use in shared virtual memory system and network interface card |
CN102498478A (en) * | 2009-07-24 | 2012-06-13 | 超威半导体公司 | Iommu using two-level address translation for i/o and computation offload devices on a peripheral interconnect |
CN103368848A (en) * | 2012-03-30 | 2013-10-23 | 富士通株式会社 | Information processing apparatus, arithmetic device, and information transferring method |
CN104123228A (en) * | 2014-07-21 | 2014-10-29 | 曙光信息产业(北京)有限公司 | Data storage system and application method thereof |
CN104133777A (en) * | 2014-07-24 | 2014-11-05 | 曙光信息产业(北京)有限公司 | Shared memory system and use method of shared memory system |
CN104601711A (en) * | 2015-01-27 | 2015-05-06 | 曙光云计算技术有限公司 | FPGA-based data storage method and system used for cloud server |
CN105793830A (en) * | 2013-12-26 | 2016-07-20 | 英特尔公司 | Sharing memory and I/O services between nodes |
CN108139937A (en) * | 2015-10-13 | 2018-06-08 | 华为技术有限公司 | More I/O virtualization systems |
CN108170544A (en) * | 2017-12-29 | 2018-06-15 | 中国人民解放军国防科技大学 | A Shared Data Dynamic Update Method for Data Conflict-Free Programs |
CN106105152B (en) * | 2014-05-22 | 2018-07-13 | 华为技术有限公司 | A kind of node interconnection device and server system |
CN110392084A (en) * | 2018-04-20 | 2019-10-29 | 伊姆西Ip控股有限责任公司 | The method, equipment and computer program product of management address in a distributed system |
CN110869913A (en) * | 2017-07-14 | 2020-03-06 | Arm有限公司 | Memory system for data processing network |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6681239B1 (en) * | 1996-12-23 | 2004-01-20 | International Business Machines Corporation | Computer system having shared address space among multiple virtual address spaces |
US20040117588A1 (en) * | 2002-12-12 | 2004-06-17 | International Business Machines Corporation | Access request for a data processing system having no system memory |
US7734890B2 (en) * | 2006-10-06 | 2010-06-08 | Okralabs Llc | Method and system for using a distributable virtual address space |
CN102110196B (en) * | 2009-12-25 | 2015-04-29 | 中国长城计算机深圳股份有限公司 | Method and system for safely transmitting data among parallel-running multiple user operating systems |
CN107729159B (en) * | 2017-09-29 | 2021-01-15 | 华为技术有限公司 | Address mapping method and device for shared memory |
-
2020
- 2020-11-18 CN CN202011297443.3A patent/CN112395220B/en active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1705269A (en) * | 2004-05-25 | 2005-12-07 | 中国科学院计算技术研究所 | Remote page access method for use in shared virtual memory system and network interface card |
CN102498478A (en) * | 2009-07-24 | 2012-06-13 | 超威半导体公司 | Iommu using two-level address translation for i/o and computation offload devices on a peripheral interconnect |
CN103368848A (en) * | 2012-03-30 | 2013-10-23 | 富士通株式会社 | Information processing apparatus, arithmetic device, and information transferring method |
CN105793830A (en) * | 2013-12-26 | 2016-07-20 | 英特尔公司 | Sharing memory and I/O services between nodes |
CN106105152B (en) * | 2014-05-22 | 2018-07-13 | 华为技术有限公司 | A kind of node interconnection device and server system |
CN104123228A (en) * | 2014-07-21 | 2014-10-29 | 曙光信息产业(北京)有限公司 | Data storage system and application method thereof |
CN104133777A (en) * | 2014-07-24 | 2014-11-05 | 曙光信息产业(北京)有限公司 | Shared memory system and use method of shared memory system |
CN104601711A (en) * | 2015-01-27 | 2015-05-06 | 曙光云计算技术有限公司 | FPGA-based data storage method and system used for cloud server |
CN108139937A (en) * | 2015-10-13 | 2018-06-08 | 华为技术有限公司 | More I/O virtualization systems |
CN110869913A (en) * | 2017-07-14 | 2020-03-06 | Arm有限公司 | Memory system for data processing network |
CN108170544A (en) * | 2017-12-29 | 2018-06-15 | 中国人民解放军国防科技大学 | A Shared Data Dynamic Update Method for Data Conflict-Free Programs |
CN110392084A (en) * | 2018-04-20 | 2019-10-29 | 伊姆西Ip控股有限责任公司 | The method, equipment and computer program product of management address in a distributed system |
Also Published As
Publication number | Publication date |
---|---|
CN112395220A (en) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3929756B1 (en) | Method, system, and intelligent network interface card for migrating data | |
TWI549060B (en) | Access methods and devices for virtual machine data | |
WO2015180598A1 (en) | Method, apparatus and system for processing access information of storage device | |
WO2015067074A1 (en) | Data reading method and apparatus | |
CN105518631B (en) | EMS memory management process, device and system and network-on-chip | |
US8001323B2 (en) | Network storage system, management method therefor, and control program product therefor | |
EP3441884B1 (en) | Method for managing translation lookaside buffer and multi-core processor | |
CN103389884A (en) | Method for processing input/output request, host, server and virtual machine | |
WO2016065611A1 (en) | File access method, system and host | |
CN112395220B (en) | Processing method, device and system of shared storage controller and storage controller | |
CN106648832B (en) | Device and method for improving resource utilization rate of virtual machine | |
CN116644006B (en) | A memory page management method, system, device, equipment and computer medium | |
US20210311654A1 (en) | Distributed Storage System and Computer Program Product | |
WO2015180650A1 (en) | Method and device for generating key value in storage area network | |
US20250217037A1 (en) | Data Migration Method and Apparatus, Chip, and Computer-Readable Storage Medium | |
WO2016119618A1 (en) | Remote memory allocation method, device and system | |
WO2021120843A1 (en) | Cloud host memory allocation method, cloud host, device, and storage medium | |
WO2024222015A1 (en) | Data processing system and dynamic memory allocation method | |
WO2017031637A1 (en) | Memory access method, apparatus and system | |
US20230132442A1 (en) | Method for processing data by using intermediate device, computer system, and intermediate device | |
US11675510B2 (en) | Systems and methods for scalable shared memory among networked devices comprising IP addressable memory blocks | |
WO2022222977A1 (en) | Method and apparatus for managing memory of physical server for running cloud service instances | |
US20180341595A1 (en) | Memory Address Assignment Method for Virtual Machine and Apparatus | |
KR101233109B1 (en) | System and method of reducing traffic among multi-cores used to meet cache coherence | |
WO2017113329A1 (en) | Cache management method for host cluster and host |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |