文件管理系统 - 设备驱动程序和基本文件系统

时间:2016-10-23 22:24:41

标签: unix operating-system filesystems drivers file-management

本书的第526页操作系统 - 内部和设计原则'第8版,由William Stallings撰写,说明如下。

'在最低级别,设备驱动程序直接与外围设备或其控制器或通道通信。设备驱动程序负责启动设备上的I / O操作并处理I / O请求的完成。对于文件操作,控制的典型设备是磁盘和磁带驱动器。设备驱动程序通常被认为是操作系统的一部分。'

继续说下面的内容。

'下一级别称为基本文件系统或物理I / O级别。这是计算机系统外部环境的主要接口。它处理与磁盘或磁带系统交换的数据块。'

设备驱动程序和基本文件系统的功能与我相同。因此,我并不完全确定Stallings如何区分它们。如果有人能够澄清并详细说明这两者之间的差异,我将不胜感激。感谢。

1 个答案:

答案 0 :(得分:1)

将其分解为图层:

第1层)磁盘的物理I / O需要指定要读取或写入块的盘片,扇区和磁道。

第2层)磁盘的逻辑I / O按数字顺序排列块,读取或写入特定的逻辑块号,然后转换为轨道/盘片/扇区。

操作系统通常支持磁盘的逻辑I / O和物理I / O.也就是说,如今大多数磁盘都是逻辑到物理翻译。只有旧磁盘才需要O / S支持。

如果设备支持逻辑I / O,则设备驱动程序执行I / O.如果设备仅支持物理I / O,则设备驱动程序通常会处理逻辑层和物理层。因此,物理I / O层仅存在于不在硬件中执行逻辑I / O的磁盘的驱动程序中。如果磁盘支持逻辑I / O,则驱动程序中没有第1层。

以上所有内容都是您的第一句话所针对的内容。

第3层)虚拟I / O写入文件的特定字节或块(取决于O / S)。该层通常在设备驱动程序外部处理。在该层,每个支持的文件系统都有单独的模块。对使用相同文件系统的所有磁盘的虚拟I / O请求将通过同一模块。

处理虚拟I / O比简单地读取写入磁盘块要复杂得多。虚拟I / O层需要使用底层磁盘文件系统结构将块分配给特定文件。

这似乎是第二个引用中提到的内容。令我感到困惑的是,为什么它将这称为物理I / O"层而不是"虚拟I / O"层

我到处都是物理I / O和逻辑I / O是将原始块写入磁盘而不考虑磁盘上的文件系统。