KR102814052B1 - 메모리의 사전 할당과 관련된 버퍼 매핑 방식 - Google Patents
메모리의 사전 할당과 관련된 버퍼 매핑 방식 Download PDFInfo
- Publication number
- KR102814052B1 KR102814052B1 KR1020170024958A KR20170024958A KR102814052B1 KR 102814052 B1 KR102814052 B1 KR 102814052B1 KR 1020170024958 A KR1020170024958 A KR 1020170024958A KR 20170024958 A KR20170024958 A KR 20170024958A KR 102814052 B1 KR102814052 B1 KR 102814052B1
- Authority
- KR
- South Korea
- Prior art keywords
- application
- operating system
- physical address
- address
- memory
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/1081—Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/656—Address space sharing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
- Bus Control (AREA)
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 (2)
| Publication Number | Publication Date |
|---|---|
| KR20170121045A KR20170121045A (ko) | 2017-11-01 |
| KR102814052B1 true KR102814052B1 (ko) | 2025-05-28 |
Family
ID=60090251
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020170024958A Active KR102814052B1 (ko) | 2016-04-22 | 2017-02-24 | 메모리의 사전 할당과 관련된 버퍼 매핑 방식 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US10380012B2 (enExample) |
| JP (1) | JP6757289B2 (enExample) |
| KR (1) | KR102814052B1 (enExample) |
| CN (1) | CN107305509B (enExample) |
| TW (1) | TWI738737B (enExample) |
Families Citing this family (11)
| 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 |
| US11829303B2 (en) | 2019-09-26 | 2023-11-28 | Apple Inc. | Methods and apparatus for device driver operation in non-kernel space |
| US11558348B2 (en) | 2019-09-26 | 2023-01-17 | Apple Inc. | Methods and apparatus for emerging use case support in user space networking |
| 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 |
| US11876719B2 (en) | 2021-07-26 | 2024-01-16 | Apple Inc. | Systems and methods for managing transmission control protocol (TCP) acknowledgements |
| US11882051B2 (en) | 2021-07-26 | 2024-01-23 | Apple Inc. | Systems and methods for managing transmission control protocol (TCP) acknowledgements |
| WO2024128825A1 (ko) * | 2022-12-14 | 2024-06-20 | 삼성전자 주식회사 | 전자 장치 및 메모리 관리 방법 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050256976A1 (en) * | 2004-05-17 | 2005-11-17 | Oracle International Corporation | Method and system for extended memory with user mode input/output operations |
| US20130339953A1 (en) * | 2007-11-16 | 2013-12-19 | Vmware, Inc. | Vm inter-process communication |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE69524916T2 (de) | 1994-10-11 | 2002-11-14 | Sun Microsystems, Inc. | Verfahren und Vorrichtung zur Datenübertragung im Bereich der Rechnersysteme |
| 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 |
| 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 |
-
2016
- 2016-10-24 US US15/333,010 patent/US10380012B2/en active Active
-
2017
- 2017-02-24 KR KR1020170024958A patent/KR102814052B1/ko active Active
- 2017-03-09 TW TW106107679A patent/TWI738737B/zh active
- 2017-03-17 CN CN201710160628.1A patent/CN107305509B/zh active Active
- 2017-04-18 JP JP2017081927A patent/JP6757289B2/ja active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050256976A1 (en) * | 2004-05-17 | 2005-11-17 | Oracle International Corporation | Method and system for extended memory with user mode input/output operations |
| US20130339953A1 (en) * | 2007-11-16 | 2013-12-19 | Vmware, Inc. | Vm inter-process communication |
Also Published As
| Publication number | Publication date |
|---|---|
| CN107305509B (zh) | 2023-07-04 |
| JP2017194964A (ja) | 2017-10-26 |
| CN107305509A (zh) | 2017-10-31 |
| US20170308460A1 (en) | 2017-10-26 |
| KR20170121045A (ko) | 2017-11-01 |
| US10380012B2 (en) | 2019-08-13 |
| JP6757289B2 (ja) | 2020-09-16 |
| TW201738756A (zh) | 2017-11-01 |
| TWI738737B (zh) | 2021-09-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102814052B1 (ko) | 메모리의 사전 할당과 관련된 버퍼 매핑 방식 | |
| EP3594807B1 (en) | Virtual disk file format conversion method and device | |
| US9081612B2 (en) | Virtual machine control method and virtual machine | |
| CN112612574B (zh) | 输入输出设备的内存访问管理单元、系统及地址转换方法 | |
| US10754679B2 (en) | Method and apparatus for handling network I/O device virtualization | |
| US20050144422A1 (en) | Virtual to physical address translation | |
| US7290112B2 (en) | System and method for virtualization of processor resources | |
| CN109977037B (zh) | 一种dma数据传输方法及系统 | |
| JP2013546104A (ja) | 入出力メモリ管理ユニット(iommu)二層アドレッシング | |
| CN105159742A (zh) | 一种虚拟机pci设备透传方法和系统 | |
| US10013199B2 (en) | Translation bypass by host IOMMU for systems with virtual IOMMU | |
| US20160098367A1 (en) | Logical-to-physical block mapping inside the disk controller: accessing data objects without operating system intervention | |
| EP4509996A1 (en) | Memory sharing method and apparatus | |
| US20250181380A1 (en) | Pre-allocating page table entries to provide virtual machine access to single root input-output virtualization devices | |
| US20170249106A1 (en) | Multiple input-output memory management units with fine grained device scopes for virtual machines | |
| JP2021504804A (ja) | 仮想マシンの動的アドレス変換のためのコンピュータ実装方法、システム、およびコンピュータ・プログラム | |
| US7249241B1 (en) | Method and apparatus for direct virtual memory address caching | |
| WO2023221847A1 (zh) | 基于虚拟机设备直通的数据访问方法、设备以及系统 | |
| US20190102321A1 (en) | Techniques to provide access protection to shared virtual memory | |
| US11494092B2 (en) | Address space access control | |
| JP7196858B2 (ja) | 入出力実行装置、デバイス仮想化システム、入出力実行方法、および、プログラム | |
| CN119806749A (zh) | 一种dpu本地存储虚拟化中的地址映射方法 | |
| US12189726B2 (en) | On-demand paging support for confidential computing | |
| EP4004743A1 (en) | Unified kernel virtual address space for heterogeneous computing | |
| KR20230133126A (ko) | 사용자 가상 주소를 이용한 메모리 액세스 방법 및 이를 이용한 디바이스 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20170224 |
|
| PG1501 | Laying open of application | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20220218 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20170224 Comment text: Patent Application |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20241203 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20250227 |
|
| PG1601 | Publication of registration |