smallhaung 發表於 2015-12-2 22:39
我的緩存(使用者變數TEMP和TMP 還有系統變數TEMP和TMP)
在我做好第一次主體WIM時 都有改到D:\ 一些系統預 ...
是的...
vhd 所謂的 動態大小 ... 可能 "動態大小" 這4個字讓你有點誤解
動態大小...只是相對於 "固定大小" 的方式來說
用原本的英文來解釋可能會比較合理一點
EXPANDABLE 和 FIXED
EXPANDABLE 意思是 可擴展的
可以 擴展 , 但沒說可以 縮小
2著的差別是...
FIXED 固定大小...是一開始就把 磁區佔好
EXPANDABLE 只有在使用時...才會佔好磁區
磁區 以實際使用來看...是本來就存在的 (就像磁碟剩餘空間...也不會自動釋放掉變 0 吧)
而 刪除檔案...也不是刪除磁區...磁區是刪不掉的...
刪除檔案 只是把 檔案系統 (NTFS FAT ... ) 中的 檔案資料 移除
而所謂 移除 ... 一樣還是寫入動作
例如
檔案系統 NTFS 的 MFT
記錄 有一個檔案叫 ABC.txt ... 其大小 時間...等屬性...和檔案佔用的磁區
而所 謂刪除檔案 可能只是把這些資料...寫入 0x00
也就是 空資料 (拿程式來說就相當是 null 吧)
註:
MFT , Master File Table 請參考
https://msdn.microsoft.com/en-us ... 6%28v=vs.85%29.aspx )
也就是一個 磁碟 實際上只會有 讀/寫 動作...沒有所謂 刪除
檔案 的概念只是基於 碟碟中碟區的讀取管理 (即 檔案系統 File System , 後面簡稱 FS)
所謂 檔案刪除 就只是 刪除 FS 中的 "管理資料" 而以
就一個 實體磁碟 來說...就只能 讀/寫 資料
所以 VHD 也是一樣的
只是 VHD 是虛擬磁碟...VHD檔案 本身就在另一個 磁碟 和 FS 中
對於 VHD 本身來說...磁區 都是 "實際" 存在的
但 相對於 VHD 的上層 磁碟 FS (即 儲存 VHD檔案 的 磁碟 和 FS)
如果 VHD 是 FIXED 那在建立 VHD 時...就會以 VHD 大小...先把磁區都佔好
反之若是 EXPANDABLE , 則不會先佔好磁區 , 只有 VHD資料(檔尾檔首不清楚)
當 VHD 中的 磁碟 磁區 寫入時... VHD檔案才會寫入 (即上層的 磁碟 磁區 FS 才會寫入)
如果你還是不太懂...再舉例吧 |