JP2017194964A5 - - Google Patents

Download PDF

Info

Publication number
JP2017194964A5
JP2017194964A5 JP2017081927A JP2017081927A JP2017194964A5 JP 2017194964 A5 JP2017194964 A5 JP 2017194964A5 JP 2017081927 A JP2017081927 A JP 2017081927A JP 2017081927 A JP2017081927 A JP 2017081927A JP 2017194964 A5 JP2017194964 A5 JP 2017194964A5
Authority
JP
Japan
Prior art keywords
application
physical address
operating system
address
offset
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
Application number
JP2017081927A
Other languages
English (en)
Other versions
JP2017194964A (ja
JP6757289B2 (ja
Filing date
Publication date
Priority claimed from US15/333,010 external-priority patent/US10380012B2/en
Application filed filed Critical
Publication of JP2017194964A publication Critical patent/JP2017194964A/ja
Publication of JP2017194964A5 publication Critical patent/JP2017194964A5/ja
Application granted granted Critical
Publication of JP6757289B2 publication Critical patent/JP6757289B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (10)

  1. 第1のアプリケーション及び第2のアプリケーションと通信するオペレーティングシステムを利用したコンピュータ具現方法であって、
    前記第1のアプリケーションから第1の物理的アドレスを受信する段階と、
    前記第2のアプリケーションが、アプリケーションのオフセットを用いて前記第1のアプリケーションと通信する段階と、
    データ伝達を実現するために前第1の物理的アドレスに基づいてオペレーティングシステムレベル仮想アドレスを決定する段階と、を含み、
    前記第1のアプリケーションは、第1のページテーブル有し、前記第1のページテーブルを使用して前記第1のアプリケーションの仮想ページをメモリの物理的ページにマッピングし、前記第1のアプリケーションに対応する前記第1の物理的アドレスを決定するために第1の物理的ページフレームナンバー及び第1のオフセットを使用することによって、前記第1の物理的アドレスは決定され、
    前記アプリケーションのオフセットは、前記第2のアプリケーションに対応する第2の物理的アドレスを決定するために前記第1の物理的アドレスに適用され、
    前記オペレーティングシステムレベルの仮想アドレスは、前記第1の物理的アドレスのみに基づいたカーネル変換テーブルによって決定され、前記オペレーティングシステムは、前記第1の物理的アドレスのみを介して前記第1のアプリケーション及び前記第2のアプリケーションと通信することを特徴とする方法。
  2. 前記第1のアプリケーション又は前記第2のアプリケーションが使用者入力を受信する前にメモリの割当を遂行し、前記第1のアプリケーション及び前記第2のアプリケーションと前記割当を共有する段階をさらに含むことを特徴とする請求項1に記載の方法。
  3. 前記オペレーティングシステム内に多のモジュールがあり、前記モジュールの各々は、自分のオペレーティングシステムレベル仮想メモリを有し、
    前記モジュールの全てが前記第1の物理的アドレスを使用して前記第1のアプリケーションと直接通信することを許容する段階をさらに含むことを特徴とする請求項1に記載の方法。
  4. バッファを利用して互いに通信する単一ノードの第1のアプリケーション、第2のアプリケーション、オペレーティングシステム、及びハードウェアを利用しコンピュータ具現方法であって、
    前記第1のアプリケーションが、第1のアプリケーションレベル仮想アドレスを前記第1のアプリケーションに対応する第1の物理的アドレスに変換し、前記オペレーティングシステムに前記第1の物理的アドレスを通信する段階と、
    前記第2のアプリケーションに対応する第2の物理的アドレスを決定するために、前記第1の物理的アドレスに適用されるアプリケーションのオフセットを用いて前記第1のアプリケーションと前記第2のアプリケーションとが互いに通信する段階と、
    前記オペレーティングシステムが前記第1の物理的アドレスを使用してオペレーティングシステムレベル仮想アドレスを決定する段階と、を含み、
    前記オペレーティングシステムレベルの仮想アドレスは、前記第1の物理的アドレスのみに基づいたカーネル変換テーブルによって決定され、前記オペレーティングシステムは、前記第1の物理的アドレスのみを介して前記第1のアプリケーション及び前記第2のアプリケーションと通信することを特徴とする方法。
  5. 前記第1のアプリケーションは、前記オペレーティングシステムの介入無しでハードウェアのオフセットを使用して計算された直接メモリアクセス(Direct Memory Access、以下、DMA)アドレスを使用して前記ハードウェアと通信することを特徴とする請求項4に記載の方法。
  6. 前記オペレーティングシステムは、メモリバッファを事前割当し、使用者入力を受信する前に、物理的アドレスをアプリケーションにマッピングする方法を提供することを特徴とする請求項4に記載の方法。
  7. 前記第1のアプリケーションは、前記第1のアプリケーション、前記第2のアプリケーション、前記オペレーティングシステム、及び前記ハードウェアの間で前記バッファを使用してデータを伝達する前に、前記第1の物理的アドレス及びメモリのDMAアドレスを獲得することを特徴とする請求項4に記載の方法。
  8. 前記オペレーティングシステム内に複数のモジュールがあり、前記複数のモジュールの各々は、前記第1のアプリケーションと直接通信し、前記第1の物理的アドレスを利用して自分のオペレーティングシステムレベル仮想アドレスを決定することを特徴とする請求項4に記載の方法。
  9. データ伝達を制御する装置であって、
    第1のアプリケーションが、第1のアプリケーションレベル仮想アドレスを前記第1のアプリケーションに対応する第1の物理的アドレスに変換し、オペレーティングシステムに前記第1の物理的アドレスを通信することを許容し、第2のアプリケーションが、アプリケーションのオフセットを用いて前記第1のアプリケーションと通信することを許容するメモリマッパーを備え、
    前記アプリケーションのオフセットは、前記第2のアプリケーションに対応する第2の物理的アドレスを決定するために、前記第1の物理的アドレスに適用され、
    カーネル変換テーブルは、前記第1の物理的アドレスのみに基づいたオペレーティングシステムレベルの仮想アドレスを決定するために使用され、
    前記オペレーティングシステムは、前記第1の物理的アドレスのみを介して前記第1のアプリケーション及び前記第2のアプリケーションと通信することを特徴とする装置。
  10. 前記メモリマッパーは、前記第1のアプリケーションがDMAアドレス及びハードウェアのオフセットを使用して、ハードウェアと直接通信することを許容することを特徴とする請求項に記載の装置。
JP2017081927A 2016-04-22 2017-04-18 メモリの事前割当と関連されたバッファマッピング方式 Active JP6757289B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662326537P 2016-04-22 2016-04-22
US62/326,537 2016-04-22
US15/333,010 2016-10-24
US15/333,010 US10380012B2 (en) 2016-04-22 2016-10-24 Buffer mapping scheme involving pre-allocation of memory

Publications (3)

Publication Number Publication Date
JP2017194964A JP2017194964A (ja) 2017-10-26
JP2017194964A5 true JP2017194964A5 (ja) 2020-05-28
JP6757289B2 JP6757289B2 (ja) 2020-09-16

Family

ID=60090251

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017081927A Active JP6757289B2 (ja) 2016-04-22 2017-04-18 メモリの事前割当と関連されたバッファマッピング方式

Country Status (5)

Country Link
US (1) US10380012B2 (ja)
JP (1) JP6757289B2 (ja)
KR (1) KR102814052B1 (ja)
CN (1) CN107305509B (ja)
TW (1) TWI738737B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110119637B (zh) * 2018-02-07 2023-04-14 联发科技股份有限公司 硬件控制方法与硬件控制系统
US11792307B2 (en) 2018-03-28 2023-10-17 Apple Inc. Methods and apparatus for single entity buffer pool management
US11558348B2 (en) 2019-09-26 2023-01-17 Apple Inc. Methods and apparatus for emerging use case support in user space networking
US11829303B2 (en) 2019-09-26 2023-11-28 Apple Inc. Methods and apparatus for device driver operation in non-kernel space
US11606302B2 (en) 2020-06-12 2023-03-14 Apple Inc. Methods and apparatus for flow-based batching and processing
US11775359B2 (en) 2020-09-11 2023-10-03 Apple Inc. Methods and apparatuses for cross-layer processing
US11954540B2 (en) 2020-09-14 2024-04-09 Apple Inc. Methods and apparatus for thread-level execution in non-kernel space
US11799986B2 (en) 2020-09-22 2023-10-24 Apple Inc. Methods and apparatus for thread level execution in non-kernel space
US11882051B2 (en) 2021-07-26 2024-01-23 Apple Inc. Systems and methods for managing transmission control protocol (TCP) acknowledgements
US11876719B2 (en) 2021-07-26 2024-01-16 Apple Inc. Systems and methods for managing transmission control protocol (TCP) acknowledgements
WO2024128825A1 (ko) * 2022-12-14 2024-06-20 삼성전자 주식회사 전자 장치 및 메모리 관리 방법

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0926929A (ja) 1994-10-11 1997-01-28 Sun Microsyst Inc 効率のよいデータ転送メカニズムに関する方法及び装置
US7493465B2 (en) * 2004-05-17 2009-02-17 Oracle International Corporation Method and system for extended memory with user mode input/output operations
US20050273571A1 (en) * 2004-06-02 2005-12-08 Lyon Thomas L Distributed virtual multiprocessor
US7590777B2 (en) 2004-12-10 2009-09-15 International Business Machines Corporation Transferring data between system and storage in a shared buffer
US7739474B2 (en) * 2006-02-07 2010-06-15 International Business Machines Corporation Method and system for unifying memory access for CPU and IO operations
US20070255866A1 (en) 2006-05-01 2007-11-01 Eliezer Aloni Method and system for a user space TCP offload engine (TOE)
US8015388B1 (en) * 2006-08-04 2011-09-06 Vmware, Inc. Bypassing guest page table walk for shadow page table entries not present in guest page table
US8166194B2 (en) 2006-12-13 2012-04-24 Microsoft Corporation Lock-free shared audio buffer
US7979645B2 (en) * 2007-09-14 2011-07-12 Ricoh Company, Limited Multiprocessor system for memory mapping of processing nodes
US8521966B2 (en) * 2007-11-16 2013-08-27 Vmware, Inc. VM inter-process communications
US8504744B2 (en) 2010-10-28 2013-08-06 Alcatel Lucent Lock-less buffer management scheme for telecommunication network applications
US8909727B2 (en) 2010-11-24 2014-12-09 International Business Machines Corporation RDMA read destination buffers mapped onto a single representation
US9092426B1 (en) * 2011-01-03 2015-07-28 Applied Micro Circuts Corporation Zero-copy direct memory access (DMA) network-attached storage (NAS) file system block writing
US8909894B1 (en) * 2011-03-16 2014-12-09 Tintri Inc. Automatically aligning virtual blocks to physical blocks
US8868867B2 (en) 2011-09-15 2014-10-21 The Regents Of The University Of California Method for reducing latency of accessing data stored in a file system on a computer storage device by caching file system permission information in the computer storage device
CN102402487B (zh) * 2011-11-15 2014-10-22 北京天融信科技股份有限公司 一种零拷贝接收报文的方法和系统
US10210096B2 (en) * 2013-10-01 2019-02-19 Ampere Computing Llc Multi-stage address translation for a computing device

Similar Documents

Publication Publication Date Title
JP2017194964A5 (ja)
CN103942087B (zh) 虚拟机热迁移方法及相关装置和集群系统
EP3125126B1 (en) Data processing system and data processing method
US10467182B2 (en) Remote direct memory access adapter state migration in a virtual environment
CN103621026B (zh) 虚拟机的数据交换方法、装置和系统
CN107305509B (zh) 涉及内存的预分配的缓冲区映射方案
KR102317657B1 (ko) Nvdimm을 포함하는 장치 및 그것의 엑세스 방법
KR20150091663A (ko) 멀티 채널 메모리를 포함하는 시스템 및 그 동작 방법
CN101470633B (zh) 一种虚拟机监视器、虚拟机系统及其内存处理方法
US10338813B2 (en) Storage controller and using method therefor
CN102650976A (zh) 一种支持单根io虚拟化用户级接口控制装置及其方法
JP2020533678A5 (ja)
WO2016065611A1 (zh) 访问文件的方法、系统和主机
US11847049B2 (en) Processing system that increases the memory capacity of a GPGPU
US20210011755A1 (en) Systems, methods, and devices for pooled shared/virtualized or pooled memory with thin provisioning of storage class memory modules/cards and accelerators managed by composable management software
EP3465450B1 (en) Improving throughput in openfabrics environments
US12045475B1 (en) Resizable scratchpad memory
CN105745900B (zh) 访问文件的方法、分布式存储系统和网络设备
US12056072B1 (en) Low latency memory notification
US11042656B2 (en) Data porch for throttling data access
EP3143738B1 (en) Method of distributing data and device supporting the same
US20180181440A1 (en) Resource allocation system, apparatus allocation controller and apparatus recognizing method
CN107155307B (zh) 访问文件的方法、系统和主机
CN102447725A (zh) 一种网络设备的虚拟化方法、装置和系统