精華區beta TransCSI 關於我們 聯絡資訊
※ 引述《likerainny (封!)》之銘言: : 以下何者不是作業系統的記憶體管理方式? : (A)demand paging : (B)garbage collec-tion : (C)segmentation : (D)swapping : 請問答案是哪一個呢? 記憶體管理 1.置換(swap) 主記憶體的容量有限,沒有辦法讓所有的程式載入記憶體內 這時候記憶體管理系統就會提供置換(swapping)機制,以便 置換出(swap out) and 置換入(swap in). 2.虛擬記憶體管理方法 (1)分頁(Damand paging) 將輔助記憶體內的所有程式,均依固定的大小為單位,切割成頁(Page) 主記憶體內也依固定大小為單位,切割成頁框(Page Frame),每個頁框 大小與頁大小相同,然後程式執行的時候,記憶體管理就會去查詢主程 式的第一頁是否在主記憶體內。 (2)分段(Segmentation) 將輔助記憶體內的程式,依邏輯功能切割成segment(所以段的大小會變) 不用將整個程式載入到記憶體內,它只要程式個那個區段載入主記憶體內 就可以執行。 (3)Combine paging and segment 結合分頁跟分段 3.實體記憶體管理方法 (1)Single partition (2)Absolute Fixed partition (3)Relocatable partition (4)Without Compaction of Variable partition (5)Variable partition with compaction 恩...英文自己查 懶的打中文 我們要看的是第三個 (3)Relocatable partition(可重定位分割法) 也就是集中程式在記憶體的一端,而另一端就是完整的一塊未使用的空間 ^^^^^^^^^^^^^^^^^^^^^^(就像Compaction壓縮在一起) 以提供其他程式載入使用。那要用什麼方法才可以分成兩端呢? 就是使用垃圾收集法(garbage-collection) 所以garbage-collection不算是記憶體管理的方法, 恩......算是一種管理記憶體會使用的技巧(技術)吧, 其實每個程式寫的垃圾收集演算法有很多種,不過都是收垃圾。 我想容易讓人誤會的是以下這句話 "自動記憶體管理也就是俗稱的垃圾收集(garbage-collection)" ^^^^^^^^^^^^^^電腦系統自動回收沒有用的動態配置的記憶空間的方法 不要誤會是記憶體管理了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.127.32.29
likerainny:了解了,謝謝你^^ 04/19 17:53
librayan926:well...JAVA have garbage collection 04/22 01:59