Memory
為什麼塊設備的傳輸單元block不是page?
作業系統概念說
字元流設備一個接一個地傳輸字節,而塊設備將一個字節塊作為一個單元傳輸。
但是聽說主記憶體和磁碟之間的傳輸單位是頁。
報價中的“轉移”發生在什麼和什麼之間?為什麼它的傳輸單位不是頁而是塊或字節?
謝謝。
傳輸通常發生在儲存設備和主記憶體儲器之間。當您在提到磁碟時聽到頁面時,他們可能在談論以頁面為單位的虛擬記憶體,因為這是 MMU 處理的儲存單元。但是塊設備與可能是也可能不是磁碟的各種設備相關,因此您擁有塊和塊大小的單獨概念。磁碟塊大小和記憶體頁大小過去(通常)相同,都是 4096 字節,這當然很方便。但沒有什麼說他們必須是相同的。例如,您可能有一個用於儲存圖像的多 TB 磁碟,將塊大小增加到 32k 或更大是有意義的……這對記憶體頁面大小沒有影響。通常,只要一個是另一個的 2 倍的冪,它就可以在沒有太多麻煩的情況下工作。