裸設備
此條目翻譯品質不佳。 |
在計算機領域,特別是類Unix系統中,裸設備是一種特殊類型的塊設備文件,允許以直接訪問硬盤的方式訪問一個存儲設備,而不經過操作系統的高速緩存和緩衝器(儘管可能仍舊使用硬件高速緩存)。應用程序如數據庫管理系統可能直接使用裸設備,使它們能自行管理數據的緩存方式,而不將這些任務交給操作系統。
在FreeBSD系統中,所有的塊設備實際都是裸設備。為了簡化緩存的管理以及增強可測量性和性能,FreeBSD 4.0中停止了對非裸設備的支持。
在Linux中,裸設備則被反對並列入了移除計劃,可以通過使用O_DIRECT標誌來替代。[1]為了代替訪問裸設備文件,應用程序可以(且必須)啟用O_DIRECT標誌來訪問一個文件,且高速緩存將被禁用。由於現在裸設備仍然有一定用戶群且仍有一些應用程序沒有對O_DIRECT的支持,有關在Linux內核中將裸設備移除仍然是一個有爭議的話題。裸設備是一種設備文件系統(major number 162)。Linux為裸設備預留了(i.e. 0),通常情況可以在/dev/rawctl找到它。有人主張,裸設備技術可以將一個裸設備綁定至一個已有的塊設備[2]。「已有的塊設備」可能是Linux所能支持的所有類型接口的磁盤或CD-ROM/DVD。(如IDE/ATA或SCSI)