JP2014520346A - コンピュータにより実行される方法及びコンピュータシステム - Google Patents
コンピュータにより実行される方法及びコンピュータシステム Download PDFInfo
- Publication number
- JP2014520346A JP2014520346A JP2014517070A JP2014517070A JP2014520346A JP 2014520346 A JP2014520346 A JP 2014520346A JP 2014517070 A JP2014517070 A JP 2014517070A JP 2014517070 A JP2014517070 A JP 2014517070A JP 2014520346 A JP2014520346 A JP 2014520346A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- application
- allocation
- host
- metadata
- 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
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/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
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/25—Using a specific main memory architecture
- G06F2212/251—Local memory within processor subsystem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/70—Details relating to dynamic memory management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Stored Programmes (AREA)
Abstract
Description
改善されたメモリ管理システムによりメモリの割当及び利用を要求するためにソフトウェアアプリケーションにおいてコンピュータの少なくとも1つのプロセッサが実行する方法であって、
アプリケーションがメモリ割当をどのように使用しようとしているかを示す割当メタデータを設定するステップと、
前記メモリ割当の内容を設定するメモリ充足機能を設定するステップと、
複数のアプリケーションの間で共有される物理メモリを管理するホストにより提供される割当インタフェースを起動するステップであって、前記アプリケーションが、設定された割当メタデータ及びメモリ充足機能を前記割当インタフェースを介して前記ホストにもたらす、ステップと、
前記アプリケーションインタフェースを起動したことに応答して、前記アプリケーションが前記メモリ割当を以後使用する際の間接的な識別子として機能するリファレンスを受信するステップと
を有する方法である。
本願において説明されるメモリ管理システムは、メモリがどのように使用されているかを記述する情報をアプリケーションから受信し、メモリを利用するためのアプリケーション要求をアプリケーションホストがよりいっそう制御できるようにする。現在のアプリケーションホストは、アプリケーションがどの程度多くのメモリ要求を行っているか、及びどの程度のメモリサイズが個々の要求で要求されているかということ以外に、アプリケーションによるメモリの利用についてほとんど何も知らない。すなわち、メモリアプリケーション各々の目的、何れのアプリケーションが間もなく使用されることになるか、アプリケーションホストが更に多くのメモリを必要とする場合に何れのメモリアプリケーションが容易に作成し直せるか、何れのメモリアプリケーションがしばらくの間使用できなくなるか、何れのアプリケーションメモリがアプリケーションのパフォーマンスに影響を与えることなくディスクにページングできるか等をアプリケーションホストは把握していない。不都合なことに、アプリケーションホストはこの種の判断を行うタスク又は任務を担っているが、この種の判断を効率的に行うことに関するほとんどの情報をアプリケーションが保持している。
本願において説明されるメモリ管理システムは、メモリがどのように使用されているかを示す又は記述する情報をアプリケーションから受信し、メモリを利用するためのアプリケーション要求をアプリケーションホストがよりいっそう適切に制御できるようにする。現在のアプリケーションホストは、アプリケーションがどの程度多くのメモリ要求を行っているか、及びどの程度のメモリサイズが個々の要求で要求されているかということ以外に、アプリケーションによるメモリの利用についてほとんど何も知らない。すなわち、メモリアプリケーション各々の目的、何れのアプリケーションが間もなく使用されることになるか、アプリケーションホストが更に多くのメモリを必要とする場合に何れのメモリアプリケーションが容易に作成し直せるか、何れのメモリアプリケーションがしばらくの間使用できなくなるか、何れのアプリケーションメモリがアプリケーションのパフォーマンスに影響を与えることなくディスクにページングできるか等をアプリケーションホストは把握していない。不都合なことに、アプリケーションホストはこの種の判断を行うタスク又は任務を担っているが、この種の判断を効率的に行うことに関するほとんどの情報をアプリケーションが保持している。この矛盾又は問題は、現在のところ、基本レベルの機能を提供しかつ何れの処理がなされるかを推測するアプリケーションホストにより解決されている。多くの場合、アプリケーションホストはアプリケーションホストがメモリを必要とする直前にディスクに対するメモリを呼び出す、或いはアプリケーションホストはアプリケーションにとって重要でない多くのメモリ管理労力を費やしてしまうかもしれない。
多くの場合、ソフトウェア開発者にとって、メモリ管理システムとやり取りを行うようにソフトウェアを修正することが可能である。実際に開発されるアプリケーションに関し、ソフトウェア開発者はメモリ管理システムがもたらす利点の観点からメモリ管理システムを使用することを選択するかもしれないし、或いはアプリケーションがメモリ管理システムを使用するように動作する特定のプラットフォームにより決められるかもしれない。多くの場合、アプリケーションは、そのアプリケーションが使用しがちな仕方で割り振られたメモリを維持する。例えば、アプリケーションのユーザインタフェースの或る部分から別の部分へユーザが遷移した場合に、アプリケーションはユーザがそのインタフェースを再び訪れる場合に備えてかつてのインタフェースからの情報を保持するかもしれない。今日、この情報は他のアクティブに使用されるメモリと同程度にホストにとってもまさに必要であるように見えている。本メモリ管理システムはホストにこの種の状況を通知する方法をアプリケーションに提供し、そのようなメモリが優先順位を落とせるようにする。これに応じて、ホストは、そのようなメモリをページングする有望な候補として選択し、或いはアプリケーションからの追加的な情報に起因していっそう効果的な他のメモリ管理判断を可能にする。
メモリ管理システムとやり取りを行うようにソフトウェアアプリケーションを修正することがソフトウェア開発者にとって不可能であった場合、或いはシステムが未修正のアプリケーション(すなわち、本システムと共に動作するように明確には設計されていないアプリケーション)と共に実現される場合であっても、システムはメモリ管理の恩恵を享受することが可能である。これを行うため、システムは、アプリケーションがどのようにしてメモリを使用するかを示す情報を収集する(例えば、静的な分析及び/又はアプリケーションの評価に基づいてもよい。分析又は評価は、アプリケーションを動作させること、メモリの割当の情報を取得すること、アプリケーションの実行時間の間に利用度を監視すること等を含む)。この情報は、パフォーマンス特性を判定する際に有用であり、アプリケーションホストのメモリマネジャにより有益に(intelligently)使用される。この情報の利用の仕方の具体例は、ゴミ又は不要データの高度な収集、ディスクに対する高度なページング、パフォーマンスの高いメモリキャッシュの高度なキャッシュ管理等を含み、アプリケーションが遭遇するかもしれない潜在的なメモリの制約をユーザに警告することさえも含んでもよい。
メモリ管理システムは、アプリケーションにより提供された又はアプリケーションの分析により判定されたメモリの利用の仕方についての追加的な情報を受け取るようになされたカーネル又はアプリケーションホストに対する修正を含む。従来のソフトウェアメモリの管理とは異なり、本願により説明されるアプリケーションにより通知されるメタデータ及びその他の情報により提供されるメモリの利用の仕方に関する更なる情報又は洞察に起因して、カーネルはアプリケーションの情報や処理によらずメモリを一層効率的に管理できる。後にカーネルは如何なる処理がなされたかをアプリケーションに通知する又はメモリを管理し、アプリケーションがメモリを必要とする時点で使用できるようにし、アプリケーションがカーネルのメモリ関連処理を気にしない又は考慮しないで済むようにする。カーネルは、(例えば、重要でない又は使用される見込みがないメモリを低速/低頻度のディスクストレージに移す又はオフロードすることで)より優れたページングを実行できるようにし、メモリの要請が高まった場合にメモリを解放できるようにし、カーネルにより提供されるオペレーティングシステムを利用して1つ以上のアプリケーションに代わってメモリを管理する他の処理を実行できるようにする。例えば、カーネルは少ないフラグメンテーション(fragmentation)でメモリを適切に割り振ることが可能である。
図1は一実施形態によるメモリ管理システムの要素を示すブロック図である。システム100は、メタデータ受信要素105、充足条件要素110、割当リクエスト要素115、メモリ参照要素120、アプリケーションインタフェース要素125、静的分析要素130、動的分析要素135、ホスト要素140、リクエスト受信要素145、リクエスト保存要素150、割当要素155、メモリ処理要素160及びデータ保存要素165を含む。以下、これらの要素の各々を詳細に説明する。
<<システム動作>>
図3は、メモリの割当及び利用を要求するためにソフトウェアアプリケーションにおいて行われるメモリ管理システムの処理を示す一実施形態によるフローチャートを示す。
Claims (15)
- 改善されたメモリ管理システムによりメモリの割当及び利用を要求するためにソフトウェアアプリケーションにおいてコンピュータの少なくとも1つのプロセッサが実行する方法であって、
アプリケーションがメモリ割当をどのように使用しようとしているかを示す割当メタデータを設定するステップと、
前記メモリ割当の内容を設定するメモリ充足機能を設定するステップと、
複数のアプリケーションの間で共有される物理メモリを管理するホストにより提供される割当インタフェースを起動するステップであって、前記アプリケーションが、設定された割当メタデータ及びメモリ充足機能を前記割当インタフェースを介して前記ホストにもたらす、ステップと、
前記アプリケーションインタフェースを起動したことに応答して、前記アプリケーションが前記メモリ割当を以後使用する際の間接的な識別子として機能するリファレンスを受信するステップと
を有する方法。 - 前記割当メタデータを設定するステップにおいて、割当メタデータを受信する割当機能部に通知するパラメータ構造を構築する、請求項1に記載の方法。
- 前記割当メタデータを設定するステップにおいて、割当が生じた後に割当メタデータを提供する個別のアプリケーションプログラミングインタフェース(API)を呼び出す、請求項1に記載の方法。
- 前記割当メタデータを設定するステップにおいて、メモリ管理を促すために、割当メタデータを受け入れるメモリを割り当てるために導出されたクラスのパラメータを設定する、請求項1に記載の方法。
- 設定する前記割当メタデータが、前記アプリケーションに対する前記メモリの優先度を示すメタデータを有する、請求項1に記載の方法。
- 設定する前記割当メタデータが、割り当てられたメタデータを前記アプリケーションがどの程度頻繁に利用するかを示すメタデータを有する、請求項1に記載の方法。
- 設定する前記割当メタデータが、前記アプリケーションにとって該アプリケーションの内容を置換することがどの程度困難であるかを示すメタデータを有する、請求項1に記載の方法。
- 前記メモリ充足機能を設定するステップにおいて、前記メモリ割当の内容を設定するためにファイルの情報にアクセスする関数を設定する、請求項1に記載の方法。
- 前記メモリ充足機能を設定するステップにおいて、前記アプリケーションを起動することなく前記アプリケーションの代わりにメモリ割当の内容を設定するために前記ホストにより後に呼び出すことが可能な関数を設定する、請求項1に記載の方法。
- 前記メモリ充足機能を設定するステップにおいて、前記メモリを解放及び再割当するのに必要な情報、又は前記メモリの割当及び初期割当を前記ホストにとって更に相応しい時まで遅らせるのに必要な情報を前記ホストに提供する、請求項1に記載の方法。
- 前記リファレンスを受信するステップにおいて、前記アプリケーションが前記メモリを使用することを希望している場合に、前記メモリに直接的にアクセスするため前記ホストに前記リファレンスを提供する、請求項1に記載の方法。
- 前記アプリケーションが割り当てられたメモリとの関連を絶ったことを前記アプリケーションが検出した場合に、前記割当インタフェースを起動し、以前に割り当てた該メモリを解放する、請求項1に記載の方法。
- 前記アプリケーションが前記メモリにアクセスした後に、前記メモリを利用できなくしてもよい管理動作を前記ホストが再び実行可能なことを前記ホストに通知する、請求項1に記載の方法。
- ソフトウェアアプリケーションにおいてメモリの割当及び利用を制御する機能をアプリケーションホストに提供する、ソフトウェア命令を実行するように形成されたプロセッサ及びメモリを有するコンピュータシステムであって、
メモリ割当の各々に関連する情報を受信するメタデータ受信要素であって、前記アプリケーションにより前記メモリがどのように使用されるかを示す情報をアプリケーションホストに提供する、メタデータ受信要素と、
特定のメモリ割当がどのようになされるかを示す情報を受信する条件充足要素と、
受信したメタデータ及び充足条件に基づいてメモリを割り当てるために前記アプリケーションから前記ホストへリクエストを送付する割当リクエスト要素と、
以前に送付された割当リクエストに従っていたメモリに前記アプリケーションがアクセスする前に、前記アプリケーションから通知を受信するメモリリファレンス要素と、
メモリ割当の仕方を交渉するために前記アプリケーション及び前記ホストの間に通信インタフェースを提供するアプリケーションインタフェース要素と、
前記アプリケーションが動作する環境を含み、受信したメタデータ及び充足条件を利用してメモリを管理するメモリマネジャを提供するホスト要素と
を有するコンピュータシステム。 - 割り当てたものに前記アプリケーションがどの程度容易にアクセス可能であるべきか、或いは割当に関連する前記メモリに前記アプリケーションがどの程度頻繁にアクセスする予定であるかを示す情報を、前記メタデータ受信要素が受信する、請求項14に記載のコンピュータシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/163,752 US9218206B2 (en) | 2011-06-20 | 2011-06-20 | Memory management model and interface for new applications |
US13/163,752 | 2011-06-20 | ||
PCT/US2012/043030 WO2012177576A2 (en) | 2011-06-20 | 2012-06-18 | Memory management model and interface for new applications |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2014520346A true JP2014520346A (ja) | 2014-08-21 |
JP2014520346A5 JP2014520346A5 (ja) | 2017-04-13 |
JP6138774B2 JP6138774B2 (ja) | 2017-05-31 |
Family
ID=47354694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014517070A Expired - Fee Related JP6138774B2 (ja) | 2011-06-20 | 2012-06-18 | コンピュータにより実行される方法及びコンピュータシステム |
Country Status (8)
Country | Link |
---|---|
US (2) | US9218206B2 (ja) |
EP (1) | EP2721482A4 (ja) |
JP (1) | JP6138774B2 (ja) |
KR (1) | KR101936453B1 (ja) |
CN (1) | CN103608766B (ja) |
AR (1) | AR087009A1 (ja) |
TW (2) | TWI604378B (ja) |
WO (1) | WO2012177576A2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8627036B2 (en) * | 2011-09-12 | 2014-01-07 | Microsoft Corporation | Memory management techniques |
US8966213B2 (en) * | 2012-07-12 | 2015-02-24 | International Business Machines Corporation | Granting and revoking supplemental memory allocation requests |
EP2763372B1 (en) * | 2013-02-01 | 2017-05-10 | HTC Corporation | Electronic apparatus, computer-readable medium and data synchronization method |
US9678797B2 (en) | 2014-03-10 | 2017-06-13 | Microsoft Technology Licensing, Llc | Dynamic resource management for multi-process applications |
KR102317599B1 (ko) | 2014-05-26 | 2021-10-26 | 삼성전자 주식회사 | 전자 장치 및 전자 장치의 단편화 분석 방법 |
US8965348B1 (en) | 2014-06-04 | 2015-02-24 | Grandios Technologies, Llc | Sharing mobile applications between callers |
US9491562B2 (en) | 2014-06-04 | 2016-11-08 | Grandios Technologies, Llc | Sharing mobile applications between callers |
US9395754B2 (en) | 2014-06-04 | 2016-07-19 | Grandios Technologies, Llc | Optimizing memory for a wearable device |
KR102403063B1 (ko) * | 2014-12-05 | 2022-05-30 | 삼성전자주식회사 | 모바일 디바이스 및 모바일 디바이스의 메모리 관리 방법 |
CN105740158A (zh) * | 2014-12-11 | 2016-07-06 | 广州市动景计算机科技有限公司 | 减少便携式终端设备上浏览器内存占用的方法与装置 |
US20170045880A1 (en) * | 2015-04-14 | 2017-02-16 | Sendyne Corporation | Model numerical solver for system control |
US9904337B2 (en) | 2015-06-25 | 2018-02-27 | International Business Machines Corporation | Affinity-aware parallel zeroing of pages in non-uniform memory access (NUMA) servers |
KR102277731B1 (ko) * | 2015-07-21 | 2021-07-14 | 삼성전자주식회사 | 스토리지 시스템의 구동 방법 및 스토리지 컨트롤러 |
US20170185292A1 (en) * | 2015-12-23 | 2017-06-29 | Intel Corporation | Memory Management of High-Performance Memory |
US9996293B1 (en) * | 2016-12-12 | 2018-06-12 | International Business Machines Corporation | Dynamic management of memory allocation in a database |
US10599353B2 (en) * | 2017-05-16 | 2020-03-24 | Apple Inc. | Techniques for managing storage space allocation within a storage device |
US10368128B2 (en) | 2017-08-11 | 2019-07-30 | Microsoft Technology Licensing, Llc | Memory allocation type for media buffer |
KR102467126B1 (ko) * | 2019-12-12 | 2022-11-14 | 미쓰비시덴키 가부시키가이샤 | 데이터 처리 실행 장치, 데이터 처리 실행 방법 및 기록 매체에 저장된 데이터 처리 실행 프로그램 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7149863B1 (en) * | 2003-10-08 | 2006-12-12 | Sun Microsystems, Inc. | System and method of descriptively specifying memory placement in a computer system |
JP2009543236A (ja) * | 2006-07-14 | 2009-12-03 | インテル コーポレイション | マルチタスク仮想マシンのためのヒープ組織 |
US20090307455A1 (en) * | 2008-06-10 | 2009-12-10 | Sun Microsystems, Inc. | Method and apparatus for allocating memory for immutable data on a computing device |
JP2014523022A (ja) * | 2011-06-20 | 2014-09-08 | マイクロソフト コーポレーション | コンピュータにより実行される方法及びコンピュータシステム |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5018060A (en) | 1989-01-26 | 1991-05-21 | Ibm Corporation | Allocating data storage space of peripheral data storage devices using implied allocation based on user parameters |
US6023712A (en) * | 1997-07-30 | 2000-02-08 | Quarterdeck Corporation | Method and apparatus for brokering memory resources |
US6205528B1 (en) * | 1997-08-29 | 2001-03-20 | International Business Machines Corporation | User specifiable allocation of memory for processes in a multiprocessor computer having a non-uniform memory architecture |
US6128713A (en) | 1997-09-24 | 2000-10-03 | Microsoft Corporation | Application programming interface enabling application programs to control allocation of physical memory in a virtual memory system |
US20010042058A1 (en) * | 1998-07-09 | 2001-11-15 | Robert J. Harrington | Apparatus and method for managing memory use by software objects |
US6701420B1 (en) * | 1999-02-01 | 2004-03-02 | Hewlett-Packard Company | Memory management system and method for allocating and reusing memory |
DE19951716A1 (de) * | 1999-10-27 | 2001-05-03 | Heidenhain Gmbh Dr Johannes | Verfahren zur dynamischen Speicherverwaltung |
US7016826B2 (en) | 2000-12-21 | 2006-03-21 | Intel Corporation | Apparatus and method of developing software for a multi-processor chip |
US6895590B2 (en) | 2001-09-26 | 2005-05-17 | Intel Corporation | Method and system enabling both legacy and new applications to access an InfiniBand fabric via a socket API |
US6985976B1 (en) * | 2002-02-22 | 2006-01-10 | Teja Technologies, Inc. | System, method, and computer program product for memory management for defining class lists and node lists for allocation and deallocation of memory blocks |
CA2382718C (en) * | 2002-04-12 | 2007-02-13 | Ibm Canada Limited-Ibm Canada Limitee | Memory balancing and optimization services |
US7069396B2 (en) * | 2002-06-27 | 2006-06-27 | Hewlett-Packard Development Company, L.P. | Deferred memory allocation for application threads |
US7188216B1 (en) | 2002-12-13 | 2007-03-06 | Vignette Corporation | Method and system for an extensible caching framework |
US7278005B1 (en) | 2004-04-01 | 2007-10-02 | Azul Systems, Inc. | Cooperative memory management |
US7484065B2 (en) | 2004-04-20 | 2009-01-27 | Hewlett-Packard Development Company, L.P. | Selective memory allocation |
US7418568B2 (en) * | 2005-01-05 | 2008-08-26 | Sap Ag | Memory management technique |
US7441094B2 (en) | 2005-07-05 | 2008-10-21 | Microsoft Corporation | Memory management configuration |
KR101287976B1 (ko) * | 2006-09-11 | 2013-07-18 | 삼성전자주식회사 | 데이터 어플리케이션의 자동실행 조정방법 및 이를 적용한영상재생장치 |
US7900010B2 (en) | 2007-07-09 | 2011-03-01 | Ittiam Systems (P) Ltd. | System and method for memory allocation management |
TWI438633B (zh) * | 2007-11-29 | 2014-05-21 | Ibm | 記憶體管理之垃圾收集方法、其電腦程式產品,及其裝置 |
KR20100071483A (ko) | 2008-12-19 | 2010-06-29 | 한국전자통신연구원 | 묶음 소프트웨어의 배포 방법 및 시스템 |
-
2011
- 2011-06-20 US US13/163,752 patent/US9218206B2/en active Active
-
2012
- 2012-05-03 TW TW106101330A patent/TWI604378B/zh not_active IP Right Cessation
- 2012-05-03 TW TW101115795A patent/TWI574202B/zh not_active IP Right Cessation
- 2012-06-18 WO PCT/US2012/043030 patent/WO2012177576A2/en unknown
- 2012-06-18 KR KR1020137033887A patent/KR101936453B1/ko active IP Right Grant
- 2012-06-18 JP JP2014517070A patent/JP6138774B2/ja not_active Expired - Fee Related
- 2012-06-18 EP EP12802712.5A patent/EP2721482A4/en not_active Ceased
- 2012-06-18 CN CN201280030227.XA patent/CN103608766B/zh active Active
- 2012-06-21 AR ARP120102230A patent/AR087009A1/es unknown
-
2015
- 2015-12-14 US US14/968,778 patent/US9946641B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7149863B1 (en) * | 2003-10-08 | 2006-12-12 | Sun Microsystems, Inc. | System and method of descriptively specifying memory placement in a computer system |
JP2009543236A (ja) * | 2006-07-14 | 2009-12-03 | インテル コーポレイション | マルチタスク仮想マシンのためのヒープ組織 |
US20090307455A1 (en) * | 2008-06-10 | 2009-12-10 | Sun Microsystems, Inc. | Method and apparatus for allocating memory for immutable data on a computing device |
JP2014523022A (ja) * | 2011-06-20 | 2014-09-08 | マイクロソフト コーポレーション | コンピュータにより実行される方法及びコンピュータシステム |
Also Published As
Publication number | Publication date |
---|---|
CN103608766B (zh) | 2019-06-18 |
US20160188454A1 (en) | 2016-06-30 |
WO2012177576A3 (en) | 2013-04-04 |
WO2012177576A2 (en) | 2012-12-27 |
TW201712527A (zh) | 2017-04-01 |
KR101936453B1 (ko) | 2019-01-08 |
US9946641B2 (en) | 2018-04-17 |
TW201303717A (zh) | 2013-01-16 |
CN103608766A (zh) | 2014-02-26 |
EP2721482A4 (en) | 2016-04-13 |
TWI574202B (zh) | 2017-03-11 |
JP6138774B2 (ja) | 2017-05-31 |
AR087009A1 (es) | 2014-02-05 |
US20120324198A1 (en) | 2012-12-20 |
TWI604378B (zh) | 2017-11-01 |
KR20140034246A (ko) | 2014-03-19 |
US9218206B2 (en) | 2015-12-22 |
EP2721482A2 (en) | 2014-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6370218B2 (ja) | メモリ管理方法、コンピュータシステム、コンピュータプログラム及び記憶媒体 | |
JP6138774B2 (ja) | コンピュータにより実行される方法及びコンピュータシステム | |
JP5980916B2 (ja) | コンピュータにより実行される方法及びコンピュータシステム | |
US10565104B2 (en) | System and method to manage and share managed runtime memory for JAVA virtual machine | |
EP2588957B1 (en) | Cooperative memory resource management via application-level balloon | |
US9606822B2 (en) | Lightweight on-demand virtual machines | |
RU2569805C2 (ru) | Виртуальная архитектура неоднородной памяти для виртуальных машин | |
JP5255348B2 (ja) | クラッシュダンプ用のメモリアロケーション | |
US9110806B2 (en) | Opportunistic page caching for virtualized servers | |
JP2018132981A (ja) | アクセラレータを有する情報処理装置および情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150525 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150525 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20150523 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160620 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160712 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161011 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161213 |
|
A524 | Written submission of copy of amendment under section 19 (pct) |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20170313 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170328 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170426 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6138774 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |