系统管理指南:设备和文件系统

UFS 直接输入/输出 (Input/Output, I/O)

直接 I/O 旨在用于改进批量 I/O 操作。批量 I/O 操作使用大的缓冲区来传输大文件(大于 256 KB)。

使用 UFS 直接 I/O 可能会使执行各自内部缓冲的应用程序(如数据库引擎)受益。从 Solaris 8 1/01 发行版开始,UFS 直接 I/O 已经增强,允许在访问原始设备时发生的同一种类 I/O 并行。现在,可以从文件系统命名和灵活性中受益,并且仅会降低很少性能。请咨询数据库供应商,以了解它是否可以在其产品配置选项中启用 UFS 直接 I/O。

通过在 mount 命令中使用 forcedirectio 选项,也可以在文件系统上启用直接 I/O。仅当文件系统传输大量连续数据时,启用直接 I/O 才会提高性能。

使用此选项挂载文件系统时,将直接在用户的地址空间和磁盘之间传输数据。如果未对文件系统启用强制直接 I/O,则在用户的地址空间和磁盘之间传输的数据会首先在内核地址空间中进行缓冲。

缺省行为是不对 UFS 文件系统启用强制直接 I/O。 有关更多信息,请参见 mount_ufs(1M)