JP2014517434A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2014517434A5 JP2014517434A5 JP2014517072A JP2014517072A JP2014517434A5 JP 2014517434 A5 JP2014517434 A5 JP 2014517434A5 JP 2014517072 A JP2014517072 A JP 2014517072A JP 2014517072 A JP2014517072 A JP 2014517072A JP 2014517434 A5 JP2014517434 A5 JP 2014517434A5
- Authority
- JP
- Japan
- Prior art keywords
- memory
- application
- allocation
- host
- request
- 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
- 238000000034 method Methods 0.000 claims 4
- 238000004590 computer program Methods 0.000 claims 2
- 241001385733 Aesculus indica Species 0.000 claims 1
Description
一実施形態において、メモリ管理システムはメモリの割当各々に関する電力状態(の情報)を受信する。例えば、電力レベルXの場合、システムは、メモリ割当はもはや必要ないと判断してもよい。これは、その電力レベルにおいて必要とされていない何らかのメモリをオフロード又は解放することで、バッテリに制約のある装置が低電力モードに切り替わるようにすることが可能である。例えば、移動電話機は、着信呼に応答する又は新規電子メールをユーザに通知する程度に十分なアプリケーションデータをメモリに維持するが、他の低優先度の機能又はアプリケーションを解放してもよい。一実施形態において、アプリケーションは、低電力状態ならばメモリを利用する前にポインタの有効性を確認する必要があるにすぎないが、より高い電力状態ならばメモリに対して通常のアクセスを行うかもしれない。これは、所与の何らかのプラットフォームに関し、アプリケーションとホストとの間の取り決めによる保証として実行されることが可能である。
Claims (17)
- アプリケーションからメモリ優先度情報を受信するアプリケーションホストにおいてメモリ管理を行うためにコンピュータが少なくとも1つのプロセッサにより実行する方法であって、
複数のメモリ割当リクエストを示す情報であって1つ以上のアプリケーションによりメモリの割当がどのように利用されるかを示す情報を、アプリケーションホストにおいて受信するステップと、
前記アプリケーションホストにおいてアプリケーションを効率的に実行させ続けるための処理の必要性を示す少なくとも1つのメモリ状態を検出するステップと、
処理する対象への割当を決定するために、受信した割当リクエストを列挙するステップと、
処理する対象への1つ以上の列挙された割当を選択するステップと、
検出した前記メモリ状態を改善するために、選択された前記割当による処理を実行するステップと
を有する方法。 - 前記複数のメモリ割当リクエストを示す情報を受信するステップが、前記アプリケーションホストによりアプリケーションから受信された保存されている割当のリスト又は他のデータ構造にアクセスすることを含む、請求項1に記載の方法。
- 前記複数のメモリ割当リクエストを示す情報を受信するステップが、何れの割当を解放できるか、何れの割当にページングできるか、或いは、利用可能なメモリを効率的に管理するために何れの割当が処理されるかを決定する前記アプリケーションホストを支援する優先度情報又は他の情報にアクセスすることを含む、請求項1に記載の方法。
- 前記メモリ状態を確認するステップが、あるアプリケーションは実行に必要なメモリが不足しつつあること、及びアプリケーションに付与するためにメモリを動作している他のアプリケーションから取得することを確認することを含む、請求項1に記載の方法。
- 前記メモリ状態を確認するステップが、対象のアプリケーションのメモリリクエストが充足されないことを確認し、前記アプリケーションホストが前記割当リクエストを受信する時までに前記アプリケーションのメモリリクエストを充足するように予め更なるメモリを利用可能にすることを含む、請求項1に記載の方法。
- 前記受信した割当リクエストを列挙するステップが、解放される必要があった場合に容易に復元できる割当を判別するために割当のリスト又は他のデータ構造を検査することを含む、請求項1に記載の方法。
- 前記受信した割当リクエストを列挙するステップが、アプリケーションが直ぐには使用されそうにないアプリケーションを判別するために割当のリスト又は他のデータ構造を検査することを含む、請求項1に記載の方法。
- 前記割当を選択するステップが、割当を要求した前記アプリケーションにより該割当がどのように使用されるかを示す受信した情報に基づいて該割当を選択することを含む、請求項1に記載の方法。
- 前記割当を選択するステップが、特定のトータルサイズのメモリについて複数の割当を選択し、該トータルサイズに至る又は超える割当を選択することを含む、請求項1に記載の方法。
- 前記処理を実行するステップが、以前に割り当てたメモリを解放する、或いはメモリ内容をディスク又は他のストレージと交換することを含む、請求項1に記載の方法。
- 前記処理を実行するステップが、前記アプリケーションが前記割当に依存する処理を修正できるように前記アプリケーションに前記処理を通知することを含む、請求項1に記載の方法。
- ホストにおいて動作するアプリケーションから受信した割当メタデータを利用して前記ホストの中でメモリを効率的に管理する、以下の要素に組み込まれるソフトウェア命令を実行するように形成されたプロセッサ及びメモリを有するコンピュータシステムであって、
メモリ割当の利用の仕方を交渉するように1つ以上のアプリケーション及び前記ホストの間に通信インタフェースを提供するアプリケーションインタフェース要素と、
アプリケーションが動作する環境を含み、当該コンピュータシステムにより行われるメモリ管理にアクセスするホスト要素と、
メモリを割り当てるためのリクエストをアプリケーションから受信するリクエスト受信要素であって、前記リクエストの各々は、割り当てられたメモリを前記アプリケーションがどのように使用するかを示す情報を前記ホストに提供するメタデータを含む、リクエスト受信要素と、
メモリ管理の判断を行う際に使用するために、受信したリクエスト及び関連するメタデータ情報を保存するリクエスト保存要素と、
1つ以上の受信したアプリケーション割当リクエストを充足するように、メモリを割り当てる実際の処理を実行する割当要素と、
装置におけるメモリを管理する処理を実行し、以前に受信して保存したリクエスト情報にアクセスし、実行される処理の影響を受ける1つ上の適切なメモリ割当を決定するメモリ処理要素と
を有するコンピュータシステム。 - 前記アプリケーションインタフェース要素はアプリケーションプログラミングインタフェース(API)を含み、前記ホストが前記アプリケーションを提供し、前記アプリケーションは前記割当を示す情報を該APIを通じて提供し、前記ホストが前記アプリケーションの代わりにメモリを管理できるようにする、請求項12に記載のコンピュータシステム。
- 前記アプリケーションインタフェース要素は、メモリの利用状況の情報を前記ホストに提供するためにアプリケーションバイナリモジュールを静的又は動的に分析する、請求項12に記載のコンピュータシステム。
- 前記リクエスト受信要素、前記リクエスト保存要素、前記割当要素及び前記メモリ処理要素は、アプリケーションメモリを管理するために、前記ホストにアクセス可能なメモリマネジャの構成要素を形成する、請求項12に記載のコンピュータシステム。
- 請求項1〜11のうち何れか1項に記載の方法を前記少なくとも1つのプロセッサに実行させるコンピュータプログラム。
- 請求項16に記載のコンピュータプログラムを記憶するコンピュータ読み取り可能な記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/163,741 | 2011-06-20 | ||
US13/163,741 US9558040B2 (en) | 2011-06-20 | 2011-06-20 | Memory manager with enhanced application metadata |
PCT/US2012/043036 WO2012177579A2 (en) | 2011-06-20 | 2012-06-18 | Memory manager with enhanced application metadata |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2014517434A JP2014517434A (ja) | 2014-07-17 |
JP2014517434A5 true JP2014517434A5 (ja) | 2015-07-16 |
JP6370218B2 JP6370218B2 (ja) | 2018-08-08 |
Family
ID=47354692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014517072A Active JP6370218B2 (ja) | 2011-06-20 | 2012-06-18 | メモリ管理方法、コンピュータシステム、コンピュータプログラム及び記憶媒体 |
Country Status (8)
Country | Link |
---|---|
US (1) | US9558040B2 (ja) |
EP (1) | EP2721480B1 (ja) |
JP (1) | JP6370218B2 (ja) |
KR (1) | KR101955737B1 (ja) |
CN (1) | CN103620548B (ja) |
AR (1) | AR086712A1 (ja) |
TW (1) | TW201301029A (ja) |
WO (1) | WO2012177579A2 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8627036B2 (en) | 2011-09-12 | 2014-01-07 | Microsoft Corporation | Memory management techniques |
US9208082B1 (en) * | 2012-03-23 | 2015-12-08 | David R. Cheriton | Hardware-supported per-process metadata tags |
US20140379481A1 (en) * | 2013-06-19 | 2014-12-25 | Adobe Systems Incorporated | Method and apparatus for targeting messages in desktop and mobile applications |
CN103399822B (zh) * | 2013-08-14 | 2017-05-24 | 上海斐讯数据通信技术有限公司 | 用于解决申请图片内存不足的内存分配方法及系统 |
US9832268B2 (en) | 2014-08-28 | 2017-11-28 | Software AG USA Inc. | System, method, and medium for managing priority in requests to in-memory data grid (IMDG) |
US10282747B2 (en) * | 2015-06-02 | 2019-05-07 | Adobe Inc. | Using user segments for targeted content |
US9983887B2 (en) | 2015-06-05 | 2018-05-29 | Apple Inc. | Memory management of data processing systems |
US10013198B2 (en) | 2015-08-24 | 2018-07-03 | International Business Machines Corporation | Limiting memory consumption in a distributed environment at a group level |
US10469671B2 (en) | 2016-12-27 | 2019-11-05 | At&T Mobility Ii Llc | Network-based per-application data usage limitations |
US10318888B2 (en) | 2017-03-06 | 2019-06-11 | International Business Machines Corporation | Pre-backing virtual storage using historical learned data |
US10977570B2 (en) | 2017-06-19 | 2021-04-13 | Rigetti & Co, Inc. | Distributed quantum computing system |
US10368128B2 (en) | 2017-08-11 | 2019-07-30 | Microsoft Technology Licensing, Llc | Memory allocation type for media buffer |
US10877691B2 (en) * | 2017-12-29 | 2020-12-29 | Intel Corporation | Stream classification based on logical regions |
US20190370043A1 (en) * | 2018-04-30 | 2019-12-05 | Nutanix, Inc. | Cooperative memory management |
US11327551B2 (en) * | 2019-02-14 | 2022-05-10 | Micron Technology, Inc. | Methods and apparatus for characterizing memory devices |
US10963396B1 (en) | 2019-09-17 | 2021-03-30 | Micron Technology, Inc. | Memory system for binding data to a memory namespace |
US11269780B2 (en) | 2019-09-17 | 2022-03-08 | Micron Technology, Inc. | Mapping non-typed memory access to typed memory access |
US11494311B2 (en) | 2019-09-17 | 2022-11-08 | Micron Technology, Inc. | Page table hooks to memory types |
US11650742B2 (en) | 2019-09-17 | 2023-05-16 | Micron Technology, Inc. | Accessing stored metadata to identify memory devices in which data is stored |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6023712A (en) * | 1997-07-30 | 2000-02-08 | Quarterdeck Corporation | Method and apparatus for brokering memory resources |
US6058461A (en) | 1997-12-02 | 2000-05-02 | Advanced Micro Devices, Inc. | Computer system including priorities for memory operations and allowing a higher priority memory operation to interrupt a lower priority memory operation |
AU2001258853A1 (en) | 2000-05-30 | 2001-12-11 | Information System Development Institute | Processing method using synchronization structure of information processor |
US6941437B2 (en) | 2001-07-19 | 2005-09-06 | Wind River Systems, Inc. | Memory allocation scheme |
US7069396B2 (en) * | 2002-06-27 | 2006-06-27 | Hewlett-Packard Development Company, L.P. | Deferred memory allocation for application threads |
US7406699B2 (en) | 2003-04-02 | 2008-07-29 | Microsoft Corporation | Enhanced runtime hosting |
US7032088B2 (en) | 2003-08-07 | 2006-04-18 | Siemens Corporate Research, Inc. | Advanced memory management architecture for large data volumes |
US7213084B2 (en) | 2003-10-10 | 2007-05-01 | International Business Machines Corporation | System and method for allocating memory allocation bandwidth by assigning fixed priority of access to DMA machines and programmable priority to processing unit |
KR100631782B1 (ko) * | 2004-07-27 | 2006-10-11 | 삼성전자주식회사 | 객체지향 어플리케이션에서의 효율적인 메모리 관리 방법및 장치 |
JP2006107197A (ja) | 2004-10-06 | 2006-04-20 | Nec Corp | メモリ制御方法およびプログラムならびに端末装置 |
KR20060033606A (ko) * | 2004-10-15 | 2006-04-19 | 주식회사 팬택앤큐리텔 | 힙 메모리 관리장치 및 그 방법 |
US20060149914A1 (en) * | 2004-12-30 | 2006-07-06 | Doris Tom F | Systems and methods for allocating data structures to memories |
US7395385B2 (en) | 2005-02-12 | 2008-07-01 | Broadcom Corporation | Memory management for a mobile multimedia processor |
US20060275934A1 (en) * | 2005-06-03 | 2006-12-07 | William Pohl | Management of computer processes |
US7702843B1 (en) | 2006-04-27 | 2010-04-20 | Vmware, Inc. | Determining memory conditions in a virtual machine |
JP2007323393A (ja) | 2006-06-01 | 2007-12-13 | Fuji Xerox Co Ltd | 画像処理装置及びプログラム |
US7827358B2 (en) * | 2007-01-07 | 2010-11-02 | Apple Inc. | Memory management methods and systems |
US8341611B2 (en) | 2007-04-11 | 2012-12-25 | Apple Inc. | Application interface on multiple processors |
US8510743B2 (en) | 2007-10-31 | 2013-08-13 | Google Inc. | Terminating computer applications |
TWI438633B (zh) * | 2007-11-29 | 2014-05-21 | Ibm | 記憶體管理之垃圾收集方法、其電腦程式產品,及其裝置 |
US8812809B2 (en) * | 2008-06-10 | 2014-08-19 | Oracle America, Inc. | Method and apparatus for allocating memory for immutable data on a computing device |
KR20090131142A (ko) * | 2008-06-17 | 2009-12-28 | 재단법인서울대학교산학협력재단 | 메모리 관리 장치 및 방법 |
US20100070678A1 (en) * | 2008-09-12 | 2010-03-18 | Vmware, Inc. | Saving and Restoring State Information for Virtualized Computer Systems |
US8291192B2 (en) | 2008-10-30 | 2012-10-16 | Kyocera Document Solutions, Inc. | Memory management system |
JP5235751B2 (ja) | 2009-03-30 | 2013-07-10 | 株式会社日立製作所 | 仮想計算機を有する物理計算機 |
-
2011
- 2011-06-20 US US13/163,741 patent/US9558040B2/en active Active
-
2012
- 2012-04-20 TW TW101114221A patent/TW201301029A/zh unknown
- 2012-06-18 JP JP2014517072A patent/JP6370218B2/ja active Active
- 2012-06-18 KR KR1020137033916A patent/KR101955737B1/ko active IP Right Grant
- 2012-06-18 CN CN201280030154.4A patent/CN103620548B/zh active Active
- 2012-06-18 EP EP12801960.1A patent/EP2721480B1/en active Active
- 2012-06-18 WO PCT/US2012/043036 patent/WO2012177579A2/en unknown
- 2012-06-21 AR ARP120102231A patent/AR086712A1/es active IP Right Grant
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2014517434A5 (ja) | ||
US10182018B2 (en) | Resource management based on device-specific or user-specific resource usage profiles | |
US10740136B2 (en) | Automatic virtual machine termination in a cloud | |
US9678797B2 (en) | Dynamic resource management for multi-process applications | |
US10831392B2 (en) | Volatile and nonvolatile memory management method and electronic device | |
US9489293B2 (en) | Techniques for opportunistic data storage | |
US10554575B2 (en) | Equitable sharing of system resources in workflow execution | |
US9229751B2 (en) | Apparatus and method for managing virtual memory | |
JP2014520346A5 (ja) | ||
US10423462B2 (en) | Dynamic load balancing for data allocation to servers | |
JP2014523022A5 (ja) | ||
WO2013051154A1 (ja) | メモリ割り当て制御方法、プログラムおよび情報処理装置 | |
US9448920B2 (en) | Granting and revoking supplemental memory allocation requests | |
US20150039767A1 (en) | Global cloud computing environment resource allocation with local optimization | |
WO2016041446A1 (zh) | 一种资源分配方法、装置及设备 | |
CN105677481A (zh) | 一种数据处理方法、系统及电子设备 | |
US10956228B2 (en) | Task management using a virtual node | |
CN109840217B (zh) | 一种缓存资源分配和装置 | |
JPWO2013051154A1 (ja) | メモリ割り当て制御方法、プログラムおよび情報処理装置 |