跳至內容

裸設備

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

計算機領域,特別是類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/ATASCSI)

參考文獻

  1. ^ 存档副本. [2010-10-13]. (原始內容存檔於2011-05-17). 
  2. ^ man raw