CN1996271A - 一种数据传输的方法及系统 - Google Patents
一种数据传输的方法及系统 Download PDFInfo
- Publication number
- CN1996271A CN1996271A CNA2006100646601A CN200610064660A CN1996271A CN 1996271 A CN1996271 A CN 1996271A CN A2006100646601 A CNA2006100646601 A CN A2006100646601A CN 200610064660 A CN200610064660 A CN 200610064660A CN 1996271 A CN1996271 A CN 1996271A
- Authority
- CN
- China
- Prior art keywords
- buffer
- buffer stopper
- data
- indication information
- kernel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明适用于计算机通信领域,提供了一种数据传输方法,所述方法基于主存缓冲区和内核实现,所述主存缓冲区包括至少两个缓冲块,每个缓冲块配置有指示该缓冲块的指示信息,所述方法包括:第一通信方从内核获取至少一个空闲缓冲块的指示信息,并将数据写入对应的空闲缓冲块;第二通信方从内核获取所述承载数据的缓冲块的指示信息,并从对应的承载数据的缓冲块读取数据。相应的,本发明还提供一种数据传输系统。本发明在两个通信方之间进行通信时,实现双方通信中的数据零拷贝,有效提高了系统性能,节省了宝贵的内存资源,降低了系统成本。
Description
技术领域
本发明属于数据通信领域,尤其涉及一种外围设备和用户程序之间数据传输的方法及系统。
背景技术
目前,在很多面向特殊用途的芯片解决方案中,普遍采用的是通用中央处理器(Central Processing Unit,CPU)核加数字信号处理(Digital SignalProcessing,DSP)引擎的嵌入式系统架构,如网际协议(Internet Protocol,IP)处理器、第三代(3G)手机芯片、IP电视(IPTV)的芯片等。Linux是嵌入式系统采用的主流操作系统之一。
在以Linux构建的嵌入式系统中,CPU核以外的处理设备,如输入/输出(Input/Output,I/O)设备等外围设备与主存之间的数据通讯通常采用直接内存访问(Direct Memory Access,DMA)方式。由于CPU与外围设备的通信性能限制,一般必须在系统启动时在主存中配置固定的内存空间作为DMA缓冲区,实现内存和外部存储器之间的数据交换,而不是在每次通讯时动态配置。另外,主存中还必须保持若干个由操作系统可以直接访问的内核缓冲区,缓冲外围设备和主存之间需要交换的数据。
由于Linux系统采用虚拟地址映射,用户态与内核态均不能直接访问对方的地址空间。因此,通常用户态与内核态的相互通讯有两种方式:一是将数据在内核态和用户态之间做一次拷贝,这种方式适用于数据量小,且性能不敏感的应用。二是使用地址映射,即将用户态地址和物理地址都映射到同一块物理内存,这种方式适用于数据量大,且性能要求较高的应用,在实现时主要分成两个阶段:
1.外围设备驱动使用DMA方式从DMA缓冲区存取数据;
2.用户程序使用操作系统从内核缓冲区调用存取数据;
在阶段1中,当外围设备使用DMA方式对预先配置的DMA缓冲区完成数据存取后,触发中断通知操作系统数据已经处理完毕,中断例程调度其他程序将DMA缓冲区中的数据拷贝到内核缓冲区。在阶段2中,用户程序使用系统调用获取内核缓冲区对应的用户态地址。
在上述方案中,由于用户程序与设备外围设备之间的数据通讯至少要经历一次拷贝,数据通讯效率比较低。同时,使用DMA方式写数据时,由于数据缓冲使用无缓冲(uncached)模式且采取静态分配模式,读取效率低下。由于地址映射是很费时的操作,因此,当用户态与内核态通讯使用地址映射方式时,通常使用大块连续内存,一次映射就绪,并由相应的内核模块来管理这块内存。除非使用保留内存,很难在系统运行一段时间之后分配到大块连续内存。同时,如果与外围设备通讯的数据大小有很大波动,则会导致保留内存中出现大量碎片。
发明内容
本发明实施例的目的在于提供一种数据传输方法和系统,实现两个通信方之间的数据零拷贝通信。
为了解决上述技术问题,本发明实施例提出的技术方案如下:
一种数据传输方法,所述方法基于主存缓冲区和内核实现,所述主存缓冲区包括至少两个缓冲块,每个缓冲块配置有指示该缓冲块的指示信息,所述方法包括下述步骤:
第一通信方从内核获取至少一个空闲缓冲块的指示信息,并将数据写入对应的空闲缓冲块;
第二通信方从内核获取所述承载数据的缓冲块的的指示信息,并从对应的承载数据的缓冲块读取数据。
一种数据传输系统,所述系统包括第一通信方、第二通信方、内核和主存缓冲区;
主存缓冲区包括至少两个缓冲块,每个缓冲块配置有指示该缓冲块的指示信息;
内核,用于管理缓冲块的指示信息;
第一通信方,从主存缓冲区获取至少一个空闲缓冲块的指示信息,并将数据块写入对应的空闲缓冲块;
第二通信方,从内核获取所述承载数据的缓冲块的指示信息,并从对应的承载数据的缓冲块读取数据。
本发明实施例通过将主存缓冲区划分为至少两个缓冲块,并在两个通信方之间进行通信时,采用让对方获取承载数据的缓冲块的指示信息,对方根据指示信息直接去缓冲块读取数据,实现双方通信中的数据零拷贝,有效提高了系统性能,节省了宝贵的内存资源,降低了系统成本。
附图说明
图1是本发明实施例中缓冲块的状态迁移示意图;
图2是本发明实施例中数据传输的实现原理图;
图3是本发明实施例中数据传输的系统结构图。
具体实施方式
为了使本发明实施例的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明实施例进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例适用于包含内核的操作系统,且操作系统中的用户程序与内核对应不同的地址空间,在本发明实施例中,外围设备与用户程序之间动态交换缓冲块指示信息,同时结合地址映射实现了用户程序与外围设备之间数据的零拷贝,可以大幅度提高数据传输性能。
在本发明实施例中,内核将主存缓冲区划分为至少两个缓冲块,对应每个缓冲块配置有指示该缓冲块的指示信息,指示信息可以为缓冲块指针,也可以为指代缓冲块的信息体,信息体可以包含缓冲块指针,指示信息通常是由内核进行管理。该指示信息包含对应缓冲块的物理地址。缓冲块的大小可以相等,以方便内核管理,每个缓冲块的大小不限,一般为主存缓冲区的最小自然单位,当然缓冲块的大小也可以不相等。这样就可以将用户数据分解成以缓冲块为单元的数据组,然后通过缓冲块实现数据传输。
如图1所示,为方便管理,可以根据当前使用者的不同,将主存缓冲区中的缓冲块分为以下四个状态:
自由态:此时缓冲块未写入数据,处于空闲状态,可以随时被外围设备或者用户程序取用;
外围设备占用态:缓冲块被外围设备占用,外围设备可以读写数据;
内核占用态:此时缓冲块中已经有数据,且被内核所使用;
用户程序占用态:此时缓冲块被用户程序占用,用户程序可以读写数据。
状态迁移的方式可以为:从自由态转移到用户程序占用态再转换到内核占用态或逆向转换,也可以为:从自由态转移到外围设备占用态再转移到内核占用态或逆向转移。
每个状态中的所有缓冲块的指示信息可以用一个队列来管理,每一个指示信息队列对应一个相同状态的缓冲块队列,本发明实施例中,对应四种缓冲块状态,指示信息队列相应包括:
自由态缓冲块指示信息队列,用于指示处于自由态的空闲缓冲块;
内核占用态缓冲块指示信息队列,用于指示处于内核占用态的缓冲块;
外围设备占用态缓冲块指示信息队列,用于指示处于外围设备占用态的缓冲块;
用户程序占用态缓冲块指示信息队列,用于指示处于用户程序占用态的缓冲块;
当然,根据需要,还可以设定不同状态的缓冲块及相应的指示信息队列。
作为本发明的另一实施例,每一个缓冲块的状态也可以使用主存缓冲区首部的状态记录表来记录,这样只需要一个缓冲块队列就可以记录所有缓冲块的状态了。
由于外围设备和用户程序使用的是不同的地址空间,因此缓冲块的交换需要结合地址映射。当数据从外围设备传输到用户程序时,需要将缓冲块的物理地址映射到用户空间,建立缓冲块的物理地址与用户态地址之间的映射。在用户空间,每一个缓冲块都有一个单独的用户态地址,每一个用户态地址分别对应唯一的物理地址。
地址映射的方式可以在传输数据之前进行,也可以在将数据写入缓冲块后进行。
参见图2,以缓冲块指示信息队列对缓冲块状态进行管理为例,介绍本发明实施例数据从外围设备传输到用户程序的过程。首先,外围设备需要获取至少一个空闲缓冲块,即从内核中自由态缓冲块指示信息队列中获取至少一个自由态缓冲块指示信息,然后根据指针信息中的缓冲块物理地址,直接向获取的空闲缓冲块写数据。数据写入缓冲块后,内核控制承载数据的缓冲块的指示信息从外围设备占用态缓冲块的指示信息队列迁移到内核占用态缓冲块的指示信息队列中,并将处于自由态的相应数量的空闲缓冲块指示信息迁移到外围设备占用态缓冲块的指示信息队列中,供外围设备使用。
当用户程序请求读取数据时,先通知内核将处于内核占用态的缓冲块映射到用户空间,建立缓冲块的物理地址与用户态地址之间的映射。用户程序开始读取数据时,内核控制承载数据的缓冲块指示信息从内核占用态队列迁移到用户程序占用态队列。用户程序从缓冲块指示信息得到物理地址,根据映射关系查询缓冲块指示信息中物理地址对应的用户态地址,并用户程序根据用户态地址从对应的缓冲块读取数据。当用户程序完成数据读取后,承载数据的缓冲块恢复为空闲缓冲块,内核将使用完毕的空闲缓冲块的指针归还自由态缓冲块的指示信息队列。
数据从用户程序输出到外围设备的数据传输过程与上述过程类似,主要区别在于缓冲块状态的迁移不同以及地址映射不同。用户程序从处于自由态的缓冲块中获取空闲缓冲块,内核将用户程序获取的空闲缓冲块的用户态地址映射到用户空间,用户程序根据用户态地址向获取的空闲缓冲块写数据。数据写入缓冲块后,缓冲块从用户程序占用态迁移到对应的内核占用态,并将处于自由态的相应数量的空闲缓冲块迁移到用户程序占用态。
当外围设备请求读取数据时,缓冲块从内核占用态迁移到外围设备占用态,外围设备获取承载数据的缓冲块的指示信息,根据指示信息中包含的物理地址去相应的缓冲块读取数据。当外围设备完成数据读取后,将使用完毕的空闲缓冲块的指针归还内核,此时缓冲块的状态迁移到自由态。
在本发明实施例中,用户程序或者外围设备根据需要传输的数据量以及缓冲块的大小确定需要的缓冲块数量,可能需要不止一个空闲缓冲块,如果是多个缓冲块组成缓冲块组,则用户程序或者外围设备将数据分解到每一个缓冲块上,传输时,缓冲块组中所有缓冲块的数据总和构成完整的用户数据。
以下以具体的例子,描述一下用户程序读取外围设备数据的过程。当启动外围设备将数据写入到缓冲块后,在采用直接内存访问方式完成的中断处理中,首先外围设备从处于外围设备占用态的缓冲块中获取空闲缓冲块的指针,并在指针指示下的缓冲块中写入数据,写入数据的多个缓冲块组成一个缓冲块组,该缓冲块组中的缓冲块的状态迁移到内核占用态。然后,内核将相应数量的处于自由态的缓冲块的状态迁移到用户程序占用态。当用户程序请求数据时,先通知内核将缓冲块映射到用户空间。然后,判断是否有处于内核占用态的缓冲块,若有,则将处于内核占用态的一个缓冲块组返回给用户进程,若没有,则可以等待,也可以不等待,这取决于用户进程的需求。当用户程序完成了对这一组缓冲块承载的数据的读取后,通知内核,内核将该组缓冲块迁移到自由态。
图3示出了本发明实施例中数据传输的系统结构,该系统包括第一通信方31、第二通信方32、操作系统内核33、主存缓冲区34和映射模块35。在实施数据传输方法前,内核33通过映射模块35将主存缓冲区划分为多个缓冲块,缓冲块的大小最好相等,一般为主存缓冲区的最小自然单位。每个缓冲块都配置有指示该缓冲块的指示信息,指示信息包含缓冲块的物理地址。
映射模块35,用于建立缓冲块的物理地址和用户态地址之间的映射。缓冲块的物理地址和用户态地址之间的映射可以在缓冲块划分之后进行,也可以在第一通信方或者第二通信方请求数据时进行。
内核33,用于管理缓冲块的指示信息。
第一通信方31,用于向主存缓冲区34读写数据,当需向主存缓冲区写入数据时,从主存缓冲区中获取至少一个空闲缓冲块的指示信息,将数据写入对应的空闲缓冲块。
第二通信方32,用于向主存缓冲区34读写数据,从内核获取所述承载数据的缓冲块的指示信息,根据所述指示信息得到缓冲块的地址信息,根据所述地址信息从对应的承载数据的缓冲块读取数据,数据读取完成后,将空闲缓冲块归还内核。
其中第一通信方可以为外围设备,对应地,第二通信方为用户程序,此时地址信息为用户态地址;
第一通信方可以为用户程序,对应地,第二通信方为外围设备,此时地址信息为物理地址。
在本发明实施例中,用户程序或者外围设备得到的缓冲块可能不止一个,而是包括多个缓冲块的一组,一个缓冲块组中所有缓冲块中的数据总和构成完整的用户数据。
本发明实施例通过采用用户空间到物理空间的地址映射,以及将用户数据分解传送的方式,不需要在内核缓冲区和DMA缓冲区之间进行数据拷贝,实现了用户程序到内核空间的数据零拷贝,同时在内核与外围设备的DMA传输过程中使用在内核中交换缓冲块指示信息的方式,实现主存到外围设备的数据零拷贝,从而实现了用户程序到外围设备之间数据传输的零拷贝,有效提高了系统性能,节省了宝贵的内存资源,降低了系统成本。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (11)
1、一种数据传输方法,其特征在于,所述方法基于主存缓冲区和内核实现,所述主存缓冲区包括至少两个缓冲块,每个缓冲块配置有指示该缓冲块的指示信息,所述方法包括下述步骤:
第一通信方从内核获取至少一个空闲缓冲块的指示信息,并将数据写入对应的空闲缓冲块;
第二通信方从内核获取所述承载数据的缓冲块的的指示信息,并从对应的承载数据的缓冲块读取数据。
2、如权利要求1所述的数据传输方法,其特征在于,所述指示信息为缓冲块指针或者指代缓冲块的信息体。
3、如权利要求1所述的数据传输方法,其特征在于,所述第一通信方和第二通信方中,其中一方为外围设备,另一方为用户程序。
4、如权利要求3所述的数据传输方法,其特征在于,所述指示信息中包含缓冲块的物理地址,并且,所述方法还包括:
所述内核将缓冲块的物理地址映射到用户空间,建立缓冲块的物理地址与用户态地址之间的映射关系。
5、如权利要求4所述的数据传输方法,其特征在于,所述方法还包括:所述外围设备根据缓冲块指示信息中包含的物理地址在对应的缓冲块上写入数据或从对应的缓冲块上读取数据;
所述用户程序根据所述映射关系,查询缓冲块指示信息中物理地址对应的用户态地址,然后根据所述用户态地址在对应的缓冲块上写入数据或从对应的缓冲块上读取数据。
6、如权利要求4或5所述的数据传输方法,其特征在于:
所述内核在数据传输之前,将主存缓冲区包括的所有缓冲块的物理地址映射到用户空间并建立所述映射关系;或者
所述内核在第一通信方将数据写入对应的空闲缓冲块后,再将所述承载数据的缓冲块的物理地址映射到用户空间并建立所述映射关系。
7、如权利要求1所述的数据传输方法,其特征在于,所述内核分别建立空闲缓冲块指示信息队列、内核占用态缓冲块指示信息队列、第一通信方占用态缓冲块指示信息队列和第二通信方占用态缓冲块指示信息队列,并根据各指示信息队列对缓冲块进行管理。
8、如权利要求1所述的数据传输方法,其特征在于,所述内核在每一个缓冲块的主存缓冲区首部的状态记录表中记录缓冲块的状态,并根据记录信息对缓冲块进行管理。
9、一种数据传输系统,其特征在于,所述系统包括第一通信方、第二通信方、内核和主存缓冲区;
主存缓冲区包括至少两个缓冲块,每个缓冲块配置有指示该缓冲块的指示信息;
内核,用于管理缓冲块的指示信息;
第一通信方,从主存缓冲区获取至少一个空闲缓冲块的指示信息,并将数据块写入对应的空闲缓冲块;
第二通信方,从内核获取所述承载数据的缓冲块的指示信息,并从对应的承载数据的缓冲块读取数据。
10、如权利要求9所述的数据传输系统,其特征在于,,所述第一通信方和第二通信方中,其中一方为外围设备,另一方为用户程序。
11、如权利要求10所述的数据传输系统,其特征在于,所述系统还包括映射模块,用于将缓冲块的物理地址映射到用户空间,建立缓冲块物理地址与用户态地址之间的映射。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100646601A CN1996271B (zh) | 2006-12-30 | 2006-12-30 | 一种数据传输的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100646601A CN1996271B (zh) | 2006-12-30 | 2006-12-30 | 一种数据传输的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1996271A true CN1996271A (zh) | 2007-07-11 |
CN1996271B CN1996271B (zh) | 2013-08-28 |
Family
ID=38251368
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006100646601A Active CN1996271B (zh) | 2006-12-30 | 2006-12-30 | 一种数据传输的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1996271B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101150488B (zh) * | 2007-11-15 | 2012-01-25 | 曙光信息产业(北京)有限公司 | 一种零拷贝网络报文接收方法 |
CN102354304A (zh) * | 2011-09-22 | 2012-02-15 | 青岛海信信芯科技有限公司 | 数据传输方法、数据传输装置和soc芯片 |
CN102467473A (zh) * | 2010-11-03 | 2012-05-23 | Tcl集团股份有限公司 | 一种在用户空间和内核之间传输数据的方法和装置 |
CN103229145A (zh) * | 2010-10-28 | 2013-07-31 | 阿尔卡特朗讯公司 | 用于电信网络应用的无锁缓冲器管理方案 |
CN105183373A (zh) * | 2015-08-28 | 2015-12-23 | 迈普通信技术股份有限公司 | 一种数据处理方法及网络设备 |
CN105845167A (zh) * | 2015-01-30 | 2016-08-10 | 爱思开海力士有限公司 | 数据传输电路 |
CN107171980A (zh) * | 2016-03-08 | 2017-09-15 | 迈络思科技Tlv有限公司 | 网络交换机中的灵活的缓冲区分配 |
CN110121114A (zh) * | 2018-02-07 | 2019-08-13 | 华为技术有限公司 | 发送流数据的方法及数据发送设备 |
CN110647493A (zh) * | 2018-06-26 | 2020-01-03 | 大唐移动通信设备有限公司 | 一种数据传输方法、处理器和pcie系统 |
-
2006
- 2006-12-30 CN CN2006100646601A patent/CN1996271B/zh active Active
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101150488B (zh) * | 2007-11-15 | 2012-01-25 | 曙光信息产业(北京)有限公司 | 一种零拷贝网络报文接收方法 |
CN103229145B (zh) * | 2010-10-28 | 2016-10-12 | 阿尔卡特朗讯公司 | 用于电信网络应用的无锁缓冲器管理方案 |
CN103229145A (zh) * | 2010-10-28 | 2013-07-31 | 阿尔卡特朗讯公司 | 用于电信网络应用的无锁缓冲器管理方案 |
CN102467473B (zh) * | 2010-11-03 | 2015-02-11 | Tcl集团股份有限公司 | 一种在用户空间和内核之间传输数据的方法和装置 |
CN102467473A (zh) * | 2010-11-03 | 2012-05-23 | Tcl集团股份有限公司 | 一种在用户空间和内核之间传输数据的方法和装置 |
CN102354304B (zh) * | 2011-09-22 | 2013-10-16 | 青岛海信信芯科技有限公司 | 数据传输方法、数据传输装置和soc芯片 |
CN102354304A (zh) * | 2011-09-22 | 2012-02-15 | 青岛海信信芯科技有限公司 | 数据传输方法、数据传输装置和soc芯片 |
CN105845167A (zh) * | 2015-01-30 | 2016-08-10 | 爱思开海力士有限公司 | 数据传输电路 |
CN105183373A (zh) * | 2015-08-28 | 2015-12-23 | 迈普通信技术股份有限公司 | 一种数据处理方法及网络设备 |
CN105183373B (zh) * | 2015-08-28 | 2018-11-09 | 迈普通信技术股份有限公司 | 一种数据处理方法及网络设备 |
CN107171980A (zh) * | 2016-03-08 | 2017-09-15 | 迈络思科技Tlv有限公司 | 网络交换机中的灵活的缓冲区分配 |
CN107171980B (zh) * | 2016-03-08 | 2021-01-15 | 迈络思科技Tlv有限公司 | 网络交换机中的灵活的缓冲区分配 |
CN110121114A (zh) * | 2018-02-07 | 2019-08-13 | 华为技术有限公司 | 发送流数据的方法及数据发送设备 |
CN110121114B (zh) * | 2018-02-07 | 2021-08-27 | 华为技术有限公司 | 发送流数据的方法及数据发送设备 |
CN110647493A (zh) * | 2018-06-26 | 2020-01-03 | 大唐移动通信设备有限公司 | 一种数据传输方法、处理器和pcie系统 |
CN110647493B (zh) * | 2018-06-26 | 2022-04-01 | 大唐移动通信设备有限公司 | 一种数据传输方法、处理器和pcie系统 |
Also Published As
Publication number | Publication date |
---|---|
CN1996271B (zh) | 2013-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1996271B (zh) | 一种数据传输的方法及系统 | |
CN103314363B (zh) | 用于设计分级存储器系统的高速存储器系统和方法 | |
US9213609B2 (en) | Persistent memory device for backup process checkpoint states | |
CN102541984B (zh) | 一种分布式文件系统客户端的文件系统的实现方法 | |
CN102063406B (zh) | 用于多核处理器的网络共享Cache及其目录控制方法 | |
US20050038941A1 (en) | Method and apparatus for accessing a memory | |
CN101467136A (zh) | 高速非易失性存储器设备 | |
CN103810237A (zh) | 数据管理方法和系统 | |
CN100445965C (zh) | 信息处理设备和信息处理设备的数据控制方法 | |
CN101030170A (zh) | 多状态高速缓存一致性方案的设备、系统和方法 | |
CN101088077B (zh) | 用于多个处理器的存储器访问方法和装置 | |
CN103902013B (zh) | 存储器控制装置及方法 | |
CN101504632B (zh) | 一种dma数据传输方法、系统及一种dma控制器 | |
CN1201233C (zh) | 带有可编程存储体选择的具有不同数据缓冲区容量的多层存储体 | |
US20130054885A1 (en) | Multiport memory element and semiconductor device and system including the same | |
JP2013004036A (ja) | 情報処理装置および画像形成装置 | |
CN104408069A (zh) | 一种基于布隆过滤器思想的一致性目录设计方法 | |
WO2016131175A1 (zh) | 多核系统中数据访问者目录的访问方法及设备 | |
CN107003940A (zh) | 用于在非统一存储器架构中提供改进的延迟的系统和方法 | |
CN105589679B (zh) | 用于共享处理器过程上下文的寄存器堆组织 | |
CN100557584C (zh) | 用于对网络和存储器进行耦合的存储器控制器和方法 | |
WO2023045250A1 (zh) | 一种内存池资源共用的方法、装置、设备及可读介质 | |
CN107111560A (zh) | 用于在非统一存储器架构中提供改进的延迟的系统和方法 | |
CN117795485A (zh) | 一种数据共享的方法及设备 | |
JP6365718B1 (ja) | コンピュータシステム、及びメモリコピー方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |