Linuxのディスク用文字デバイス

Linuxのディスク用文字デバイス

他のUNIXシステムではストレージデバイスとして文字デバイスが必要ですが、Linuxではそうでないのはなぜですか?

他のUNIXオペレーティングシステム(AIX、HPUX、Solaris、およびmacOS)は、「/dev/rdisk#」や「/dev/disk#」などのストレージデバイスを使用します。

ベストアンサー1

私の考えでは、このウィキペディアの記事https://en.wikipedia.org/wiki/Raw_deviceよく説明されています:

コンピューティング、特にUnixまたはUnixファミリーのオペレーティングシステムでは、rawデバイスは、オペレーティングシステムのキャッシュとバッファをバイパスしてハードドライブなどのストレージデバイスに直接アクセスできるようにする文字デバイスファイルに関連付けられている特殊な論理デバイスです(ハードウェアキャッシュは引き続き使用されます。することができます)。データベース管理システムなどのアプリケーションはrawデバイスを直接使用できるため、この操作をオペレーティングシステムに送信するのではなく、データのキャッシュ方法を管理できます。

FreeBSDでは、すべてのデバイスファイルは実際にはrawデバイスです。バッファ管理を簡素化し、スケーラビリティとパフォーマンスを向上させるために、FreeBSD 4.0では、rawデバイスではなくデバイスのサポートが削除されました。1

Linuxカーネルでは、rawデバイスは廃止され、O_DIRECTフラグを代わりに使用できるため、ある時点で削除される予定です。

おすすめ記事