File-Backed和分頁檔支援的區段
磁片檔案可暫時或永久包含要共用的資料,支援所有記憶體區段 (「支援」) 。
當您建立區段時,可以識別將支援區段的特定資料檔案。 這類區段稱為 檔案支援的 區段。
如果您未識別支援檔,則區段是由系統的分頁檔案所支援,而區段稱為 分頁檔支援 區段。 檔案支援的區段中的資料可以永久寫入磁片。 分頁檔支援區段中的資料永遠不會永久寫入磁片。
檔案支援的區段會反映磁片上實際檔案的內容;換句話說,它是記憶體對應檔案。 指定檔案支援區段內記憶體位置的任何存取,都會對應至相關聯檔案中位置的存取權。
如果進程將檢視對應為唯讀,則從檢視讀取的任何資料都會以透明方式從檔案讀取。 同樣地,如果進程將檢視對應為讀取/寫入,則從檢視讀取或寫入檢視的任何資料都會以透明方式讀取或寫入檔案。 不論是哪一種情況,檢視的虛擬記憶體都不會在頁面檔案中使用任何空間。
檔案支援的區段也可以對應為寫入時複製。 在此情況下,檢視的資料會從檔案讀取,但寫入檢視的任何資料都不會寫入檔案;而是在取消對應最後一個檢視之後捨棄,並關閉區段的最後一個控制碼。
分頁檔支援區段是由頁面檔案所支援,而不是由磁片上的任何明確檔案支援。 在終結區段物件之後,系統會自動捨棄對頁面檔案支援區段所做的任何變更。 分頁檔支援的區段可以當做兩個進程之間的共用記憶體區段使用。
任何檔案支援的區段都可以在兩個進程之間共用。 相同的實體記憶體位址範圍會對應至每個進程內的虛擬記憶體位址範圍 (但不一定對應至相同的虛擬位址) 。