我知道您可以對塊設備(/dev/sda 等)使用常規 I/O 功能,但是您可以只讀取一些大小為 n 的資料,還是必須能被 512 整除?有沒有聽說過小尺寸的閱讀?一些設備的塊大于 512 位元組,如果較小的大小有開銷,我怎么知道最佳的塊大小?
uj5u.com熱心網友回復:
根據維基百科以及 Unix 和類 Unix 系統(因此是 Linux):
塊特殊檔案或塊設備提供對硬體設備的緩沖訪問,并從它們的細節中提供一些抽象。與字符設備不同,塊設備將始終允許程式員讀取或寫入任何大小(包括單個字符/位元組)和任何對齊方式的塊。不利的一面是,由于塊設備是緩沖的,程式員不知道寫入資料從內核緩沖區傳遞到實際設備需要多長時間,或者實際上兩個單獨的寫入將以什么順序到達物理設備。 .
這意味著您可以使用任何大小進行讀取。由于驅動程式緩沖,物理讀取將始終讀取物理扇區。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/417148.html
標籤:
