No.2ベストアンサー
- 回答日時:
No1 hpsk さんの回答されている通りですが、名前を見てみればイメージしやすいのではないでしょうか。
メモリコンパクション:記憶領域の圧縮
ガーベジコレクション:ゴミ収集
使わなくなった領域 (=ゴミ) を解放する (=収集する) のがガーベジコレクションです。
ちなみに、プログラミング言語の機能としてガーベジコレクション (GC と略すことが多いです) と言った場合、使用しない領域をプログラマが意識することなく、自動で解放してくれる機能を指します。
たとえば、Java には GC があるとか、C/C++ には GC がないとか…。
ただし、ゴミを収集しただけでは、使用可能な領域が断片化してしまうことがあります。
この断片化のことをフラグメンテーションと呼びます。
連続した大きな領域が必要になったときに、フラグメンテーションが多数発生していると、必要な領域が確保できないことがあります。
これを解消するのが、メモリコンパクションです。
# MS-Windows 系 OS で、デフラグという機能があると思いますが、
# これはハードディスクのコンパクション (=フラグメンテーションの
# 解消、デフラグメンテーション) を行っているわけです。
本来の意味としては、メモリコンパクションにガーベジコレクションの意味は含まれないと思うのですが、どうなのでしょうか?>詳しい方、フォローあればお願いします!
確かに、情報処理試験の参考書の中には、両者を同じ意味としているものもあったように思います。
しかし、実使用上は上記のような差異があることを覚えておくと良いと思います。
No.3
- 回答日時:
#1です。
> メモリコンパクションにガーベジコレクションの意味は含まれないと思うのですが
含まれないです。全く別物です。
ただ、メモリの整頓という点では共通しているので、情報処理試験レベルでは同一に扱っているのかもしれません。(私は情報処理試験については詳しく知らないのですが。。。)
大雑把な言い方をすれば、散らかった部屋を整頓するときに、
物を部屋の隅に寄せておくのがコンパクション
いらなくなった物を捨てるのがガーベージコレクション
という感じです。
GCだけやっちゃうと、確かに部屋の空間は増えたけど物はあっちこっちに散乱したまま、という状態になりますね。
No.1
- 回答日時:
コンパクションは、burbeさんの仰るとおり、
「メモリ領域の隙間を集めて、連続した利用可能なメモリ領域を増やす」
ことですが、
ガーベジコレクションは、
「二度と使われないことがわかっているメモリ領域を解放して、再利用できるようにすること」
です。メモリの隙間を集めるという作業は含みません。
C言語のmallocはご存知ですか?
mallocした領域が必要なくなったら、freeをしなければいけませんが、それを自動的にやってくれるものだと思えばいいです。
ただし、ガーベジコレクションのアルゴリズムの中には、ついでにコンパクションもやってしまうものもあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CPU・メモリ・マザーボード ストリーミングの一時処理用の領域について 1 2023/04/11 21:55
- C言語・C++・C# C言語の質問です。 以下の命令を実行するプログラムを作りました ①文字列aとbの長さを表示 ②aとb 1 2022/04/29 15:35
- その他(動画サービス) 動画のストリーミングについての質問です。 1 2023/03/22 02:48
- デスクトップパソコン ん~…分からん 7 2022/06/10 10:47
- 数学 重積分について ∬D2ydxdy D:x^2<=y,y=x+2を計算しているのですが、答えが72/5 2 2022/06/13 22:04
- 数学 数学Aの組み合わせの問題で、右の図のように、正方形を各辺の中点で結んで5つの領域に分ける。隣り合った 4 2023/08/10 09:15
- 地理学 領海と排他的経済水域の違いについて。 上記2点の具体的な違いはなんでしょうか。 範囲が違うのは既に知 3 2023/01/20 19:24
- 社会学 東京一極集中は永久ですか、いつか終わりますか。 7 2022/06/04 12:48
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
- C言語・C++・C# あまりわかりません。 複素数$c$を具体的に定めた複素写像写像$f_c(z)$に対して、原点を含む領 4 2022/10/25 09:17
関連するカテゴリからQ&Aを探す
医師・看護師・助産師
薬剤師・登録販売者・MR
医療事務・調剤薬局事務
歯科衛生士・歯科助手
臨床検査技師・臨床工学技士
理学療法士・作業療法士・言語聴覚士
臨床心理士・心理カウンセラー・ソーシャルワーカー
介護福祉士・ケアマネージャー・社会福祉士
弁護士・行政書士・司法書士・社会保険労務士
フィナンシャルプランナー(FP)
中小企業診断士
公認会計士・税理士
簿記検定・漢字検定・秘書検定
情報処理技術者・Microsoft認定資格
TOEFL・TOEIC・英語検定
建築士
インテリアコーディネーター
宅地建物取引主任者(宅建)
不動産鑑定士・土地家屋調査士
マンション管理士
電気工事士
美容師・理容師
調理師・管理栄養士・パティシエ
シェフ
保育士・幼稚園教諭
教師・教員
国家公務員・地方公務員
警察官・消防士
その他(職業・資格)
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【電気】フリッカー回路ってな...
-
ミキサの原理
-
セレン整流器は金属のセレンが...
-
RS-FF回路について
-
リユーザブル,リエントラント...
-
ソフトウェア開発技術者~タス...
-
主記憶装置からの動的割り当て
-
プログラムの規模を表す単位「k...
-
パソコンでインターネット接続...
-
hdmiはパラレル?シリアル?
-
ubuntuで デイスク/deb/loopと...
-
ライン数とステップ数の違いに...
-
ゆゆにゃ。
-
エラー?メッセージ
-
命令口調について
-
ブラインドタッチ
-
ワープロ検定の勉強法について。
-
Excelでの統計処理(合計点、平...
-
最大スタックサイズを大きくす...
-
固定電話機のパソコンとの連動
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Ic-PcAn はどこのこと?
-
ページ置き換え LRU方式
-
コンパクションとガーベジコレ...
-
SP領域とはなんですか?
-
リユーザブル,リエントラント...
-
アイソレータとはなんですか?
-
【電気】フリッカー回路ってな...
-
ミキサの原理
-
知識があまりありませんので説...
-
人類の農業まで
-
電子回路と電気回路の違いを教...
-
第一級陸上特殊無線技士
-
半導体の前工程と後工程について
-
セレン整流器は金属のセレンが...
-
DMAチャネルの劣る点とは?
-
[病院関係者の方] 人工呼吸器回...
-
ソフトウェア開発技術者~タス...
-
パソコンでインターネット接続...
-
プログラムの規模を表す単位「k...
-
ubuntuで デイスク/deb/loopと...
おすすめ情報