JP5381624B2 - メモリ管理機能を有するプログラム及び装置 - Google Patents
メモリ管理機能を有するプログラム及び装置 Download PDFInfo
- Publication number
- JP5381624B2 JP5381624B2 JP2009253531A JP2009253531A JP5381624B2 JP 5381624 B2 JP5381624 B2 JP 5381624B2 JP 2009253531 A JP2009253531 A JP 2009253531A JP 2009253531 A JP2009253531 A JP 2009253531A JP 5381624 B2 JP5381624 B2 JP 5381624B2
- Authority
- JP
- Japan
- Prior art keywords
- area
- memory
- heap
- heap area
- size
- 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.)
- Expired - Fee Related
Links
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
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
- G06F12/0269—Incremental or concurrent garbage collection, e.g. in real-time systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
Description
(付記1)
コンピュータを、
ヒープ領域以外のメモリ領域にオブジェクト用のヘッダーを付加して、前記メモリ領域を擬似的なオブジェクトとして扱い、前記メモリ領域により分割されている複数のヒープ領域を1つの連続したヒープ領域として扱うメモリ管理手段として機能させるためのメモリ管理機能を有するプログラム。
(付記2)
前記メモリ管理手段は、前記メモリ領域の存在により、指定された最大ヒープ領域サイズの獲得ができなければ、ヒープ領域以外のメモリ領域にオブジェクト用のヘッダーを付加して前記メモリ領域を擬似的なオブジェクトとして扱い、前記メモリ領域により分割されている複数のヒープ領域を1つの連続したヒープ領域として扱うことで、前記ヒープ領域を拡張し、指定された最大ヒープ領域サイズを獲得する付記1記載のメモリ管理機能を有するプログラム。
(付記3)
前記メモリ管理手段は、前記オブジェクトが前記ヒープ領域へ動的に割り当てられたことにより前記ヒープ領域に空き領域がなくなると、前記ヒープ領域へ動的に割り当てられた前記オブジェクトのうち使用されなくなった前記オブジェクトを開放すると共に、前記ヒープ領域へ動的に割り当てられた前記オブジェクトのうち使用されている前記オブジェクトを集めて、前記ヒープ領域に連続した空き領域を生成する付記1記載のメモリ管理機能を有するプログラム。
(付記4)
前記メモリ管理手段は、前記ヒープ領域へ動的に割り当てられた前記オブジェクトのうち使用されている前記オブジェクトを集める際、前記擬似的なオブジェクトを管理するテーブルを参照して、前記擬似的なオブジェクトを移動させない付記3記載のメモリ管理機能を有するプログラム。
(付記5)
メモリ管理機能を有する装置であって、
ヒープ領域以外のメモリ領域にオブジェクト用のヘッダーを付加して、前記メモリ領域を擬似的なオブジェクトとして扱い、前記メモリ領域により分割されている複数のヒープ領域を1つの連続したヒープ領域として扱うメモリ管理手段
を有する装置。
11 入力装置
12 出力装置
13 ドライブ装置
14 補助記憶装置
15 主記憶装置
16 演算処理装置
17 インターフェース装置
18 記録媒体
20 仮想マシン
21 クラスローダ
22 インタプリタ・動的コンパイラ
23 メモリ管理機能
24 移動不可能オブジェクト管理テーブル
25 GC対象ヒープ領域の管理用データ
30 ユーザアプリケーション
40 共有ライブラリ
61,64 ヘッダー
62 データ域
63 ヒープ領域以外のメモリ領域
Claims (5)
- コンピュータを、
ヒープ領域以外のメモリ領域にオブジェクト用のヘッダーを付加して、前記メモリ領域を擬似的なオブジェクトとして扱い、前記メモリ領域により分割されている複数のヒープ領域を1つの連続したヒープ領域として扱うメモリ管理手段として機能させるためのメモリ管理機能を有するプログラム。 - 前記メモリ管理手段は、前記メモリ領域の存在により、指定された最大ヒープ領域サイズの獲得ができなければ、ヒープ領域以外のメモリ領域にオブジェクト用のヘッダーを付加して前記メモリ領域を擬似的なオブジェクトとして扱い、前記メモリ領域により分割されている複数のヒープ領域を1つの連続したヒープ領域として扱うことで、前記ヒープ領域を拡張し、指定された最大ヒープ領域サイズを獲得する請求項1記載のメモリ管理機能を有するプログラム。
- 前記メモリ管理手段は、前記オブジェクトが前記ヒープ領域へ動的に割り当てられたことにより前記ヒープ領域に空き領域がなくなると、前記ヒープ領域へ動的に割り当てられた前記オブジェクトのうち使用されなくなった前記オブジェクトを開放すると共に、前記ヒープ領域へ動的に割り当てられた前記オブジェクトのうち使用されている前記オブジェクトを集めて、前記ヒープ領域に連続した空き領域を生成する請求項1記載のメモリ管理機能を有するプログラム。
- 前記メモリ管理手段は、前記ヒープ領域へ動的に割り当てられた前記オブジェクトのうち使用されている前記オブジェクトを集める際、前記擬似的なオブジェクトを管理するテーブルを参照して、前記擬似的なオブジェクトを移動させない請求項3記載のメモリ管理機能を有するプログラム。
- メモリ管理機能を有する装置であって、
ヒープ領域以外のメモリ領域にオブジェクト用のヘッダーを付加して、前記メモリ領域を擬似的なオブジェクトとして扱い、前記メモリ領域により分割されている複数のヒープ領域を1つの連続したヒープ領域として扱うメモリ管理手段
を有する装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009253531A JP5381624B2 (ja) | 2009-11-04 | 2009-11-04 | メモリ管理機能を有するプログラム及び装置 |
US12/916,808 US8352700B2 (en) | 2009-11-04 | 2010-11-01 | Memory management program and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009253531A JP5381624B2 (ja) | 2009-11-04 | 2009-11-04 | メモリ管理機能を有するプログラム及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011100230A JP2011100230A (ja) | 2011-05-19 |
JP5381624B2 true JP5381624B2 (ja) | 2014-01-08 |
Family
ID=43926610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009253531A Expired - Fee Related JP5381624B2 (ja) | 2009-11-04 | 2009-11-04 | メモリ管理機能を有するプログラム及び装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8352700B2 (ja) |
JP (1) | JP5381624B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014078175A (ja) * | 2012-10-11 | 2014-05-01 | Canon Inc | 情報処理装置、その制御方法、及びプログラム |
US9582413B2 (en) * | 2014-12-04 | 2017-02-28 | International Business Machines Corporation | Alignment based block concurrency for accessing memory |
US11334329B2 (en) | 2018-06-08 | 2022-05-17 | Shanghai Cambricon Information Technology Co., Ltd. | General machine learning model, and model file generation and parsing method |
KR102700419B1 (ko) * | 2018-09-04 | 2024-08-30 | 삼성전자주식회사 | 전자장치 및 그 제어방법 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59158459A (ja) | 1983-03-01 | 1984-09-07 | Nec Corp | 構造体メモリ回収方式 |
JPH03204048A (ja) * | 1989-12-30 | 1991-09-05 | Ricoh Co Ltd | メモリ管理方法 |
JPH0520090A (ja) | 1991-07-09 | 1993-01-29 | Fuji Facom Corp | 計算機システム |
JP3610528B2 (ja) * | 1995-01-24 | 2005-01-12 | ブラザー工業株式会社 | メモリ管理方法及び装置 |
US7792880B2 (en) * | 2004-01-05 | 2010-09-07 | International Business Machines Corporation | Method and apparatus for efficient implementation of discontiguous objects |
JP4504756B2 (ja) * | 2004-07-26 | 2010-07-14 | 株式会社アプリックス | Java(登録商標名)実行環境におけるメモリ管理方法及びメモリ管理プログラム |
US8250121B2 (en) * | 2009-11-18 | 2012-08-21 | Oracle America, Inc. | Zero-copy maturing of large objects in generational heap with copying collection |
-
2009
- 2009-11-04 JP JP2009253531A patent/JP5381624B2/ja not_active Expired - Fee Related
-
2010
- 2010-11-01 US US12/916,808 patent/US8352700B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20110107038A1 (en) | 2011-05-05 |
JP2011100230A (ja) | 2011-05-19 |
US8352700B2 (en) | 2013-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8805896B2 (en) | System and method for use with garbage collected languages for enabling the allocated heap memory to be updated at runtime | |
US7024436B2 (en) | Computer system with two heaps in contiguous storage | |
US7263700B1 (en) | Serially, reusable virtual machine | |
US6446257B1 (en) | Method and apparatus for pre-allocation of system resources to facilitate garbage collection | |
JP4917138B2 (ja) | オブジェクト最適配置装置、オブジェクト最適配置方法、及びオブジェクト最適配置プログラム | |
US8156492B2 (en) | System and method to improve memory usage in virtual machines running as hypervisor guests | |
US9384129B2 (en) | Garbage collection based on total resource usage and managed object metrics | |
US7107426B2 (en) | Computer system with heap reset for performing generational garbage collection implemented by card-marking between successive applications | |
US9037830B2 (en) | Organization of a small object area and a large object area in a Java heap | |
US8943290B2 (en) | Automatic management of heterogeneous memory resources | |
US6804765B2 (en) | Computer system with multiple heaps | |
JP5980916B2 (ja) | コンピュータにより実行される方法及びコンピュータシステム | |
US7454448B1 (en) | Synchronizing object promotion in a multi-tasking virtual machine with generational garbage collection | |
US20070203959A1 (en) | Apparatus and method for managing resources using virtual ID in multiple Java application environment | |
US20100011357A1 (en) | System and method for garbage collection in a virtual machine | |
JP2014517434A (ja) | コンピュータにより実行される方法及びコンピュータシステム | |
CN108196937B (zh) | 字符串对象的处理方法、装置、计算机设备和存储介质 | |
JP5381624B2 (ja) | メモリ管理機能を有するプログラム及び装置 | |
US8972629B2 (en) | Low-contention update buffer queuing for large systems | |
US20080195681A1 (en) | Method and system for garbage collection in a multitasking environment | |
US8447793B2 (en) | Efficient remembered set for region-based garbage collectors | |
US20090228537A1 (en) | Object Allocation System and Method | |
JP5489884B2 (ja) | 命令実行装置、命令実行方法、及び命令実行プログラム | |
US8140597B2 (en) | Computer system memory management | |
JP4589095B2 (ja) | プログラム実行装置及びプログラム実行方法及びデータ領域管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120720 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130823 |
|
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: 20130903 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130916 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131015 |
|
LAPS | Cancellation because of no payment of annual fees |