技術問答
技術文章
iT 徵才
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2019 iT 邦幫忙鐵人賽
DAY
19
0
自我挑戰組
作業系統概論
系列 第
19
篇
DAY 19 Memory Management(中)
2019鐵人賽
betty1005
團隊
77乳加巧克力
2018-11-03 23:11:30
6353 瀏覽
分享至
Swapping
process可以被swap,暫時退出記憶體到後方儲存,然後再帶回到記憶體繼續執行。
Backing-store:快速硬碟足以容納所有使用者的所有記憶體影像旳備份,供直接存取給這些記憶體影像。
Roll out,roll in:用於priority-based排程演算法,低優先的process被換出,所以可以加載和執行高優先權的process。
系統維持ready-to-run process的ready queue,而此ready queue在磁碟上有記憶體影像。
換出的process需要換回到同樣的physical address嗎?
依賴在address binding方法:
考慮在I/O的期間,或從記憶體空間的期間。
swapping的改版,可以在多個系統上找到:
但通常被禁用。
如果閾值分配的記憶體更多的話,就開始。
一旦記憶體需求小於閾值或以下的話,便再禁用。
Context Switch Time including Swapping
如果下個process是被放入CPU而不是記憶體的話,需要去swap出這個process到目標process。
上下文切換時間可以非常快。
100MB的process可以swap到硬碟上,是50MB/sec的傳送速率。
如果減少記憶體swap的尺寸,可以知道有多少記憶體現在真正在使用。
透過使用記憶體的system call 去通知OS。
在swapping上也有其他約束:
在I/O期間,不能swap出去,不然會發生錯誤的process。
傳遞I/O到kernel space,再然後到I/O device。
標準swap不在現代的OS中使用。
當free memory非常低時才使用。
Swapping on Mobile Systems
通常不支持:
flash memory based:
space的小部份。
寫cycle的有限數量。
在flash memory和CPU在mobil platform間,throughput很差。
如果低swapping的話,使用其他方法釋放記憶體。
iOS要求apps自願放棄被分配的記憶體。
如果需要,將會拋出去或重新加載read-only data。
無法釋放可能導致終止。
如果記憶體可用的很低,Android將會終止apps,但首先將apps狀態寫進,以便快速重啟。
留言
追蹤
檢舉
上一篇
DAY 18 Memory Management(上)
下一篇
DAY 20 Memory Management(中下)
系列文
作業系統概論
共
30
篇
目錄
RSS系列文
訂閱系列文
49
人訂閱
26
DAY 26 File-System(檔案系統) (上)
27
DAY 27 File System(檔案系統) (下)
28
DAY 28 Implementing File Systems(檔案系統執行) (上)
29
DAY 29 Implementing File System(檔案執行系統) (中)
30
DAY 30 Implementing File System(檔案執行系統) (下)
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
19856
篇
完賽人數
528
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
17th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
react
熱門問題
防火牆fortinet只開放line 問題
Gem如何找到該功能?!我是Gemini付費使用者
中華電信光纜當骨幹...SWminigbic無法正常使用
我在做 packet tracer 的題目,想請問一下該怎麼做
dhcp 在client 端機碼設定的問題
照片破圖或是有損壞,如何修復?
熱門回答
防火牆fortinet只開放line 問題
中華電信光纜當骨幹...SWminigbic無法正常使用
我在做 packet tracer 的題目,想請問一下該怎麼做
dhcp 在client 端機碼設定的問題
熱門文章
Agentic AI 開發實戰:我是如何設計 “Code + LLM” 混合架構,解決 AI品質不穩的問題?
ISC2 CC 證照考試筆記和影片
VScode 開發應用系統專案(10) - Spring boot MVC 應用系統設計(1)
【資料治理實戰回憶錄】04. 拆解元數據 (下):讓資料「用起來」
[gem5] 該怎麼編譯以及運行 gem5 ?
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}