操作系统中物理文件系统与逻辑文件系统的区别

2025 年 5 月 1 日 | 阅读 4 分钟

在本文中,您将学习物理文件系统和逻辑文件系统之间的区别。但在讨论差异之前,您必须了解物理逻辑文件系统

什么是物理文件系统?

物理文件存储在 iSeries 系统上的实际数据,并描述数据如何显示给程序或从程序检索。它们只有一种记录类型和一个或多个成员。可以使用字段级描述或记录级描述来描述数据库文件中的记录。

字段级描述定义了记录的字段。另一方面,记录级描述定义了记录的长度。程序描述的文件是使用记录级描述准备的数据库文件。外部指定的文件是使用字段级描述准备的数据库文件。这意味着记录中的字段必须在您的 ILE C/C++ 软件中进行描述。

外部指定或 ILE C/C++ 程序可以使用程序描述的文件。如果程序需要外部描述的文件,ILE C/C++ 编译器可以从中提取数据并自动向其中添加字段信息。字段信息不需要在您的程序中定义。物理文件可以存在键控序列访问路径。这意味着数据以特定序列提供给 ILE C/C++ 程序,该序列基于文件中的各种键字段。

什么是逻辑文件系统?

逻辑文件表示或透视多个物理文件。逻辑文件不包含数据。它们包含多个物理文件中找到的记录的描述。多格式逻辑文件是包含各种格式的逻辑文件。

如果您的程序正在处理具有多种记录格式的逻辑文件,您可以使用 _Rformat() 函数指定要使用的格式。不允许对逻辑文件执行某些操作。当您使用打开模式 W、W+、WB、WB+、WR 或 WR+ 打开逻辑文件进行流和记录文件处理时,文件被打开但未清除。可以使用字段级描述或记录级描述来描述 iSeries 数据库文件中的记录。

记录的字段级描述描述了所有字段以及它们在此记录中的组织方式。使用字段级描述构建的数据库文件被外部描述,因为字段的描述和布局保存在数据库文件中,而不是在您的 ILE C/C++ 软件中。

物理文件系统与逻辑文件系统的主要区别

Difference between physical and logical file systems in OS

在这里,您将了解物理文件系统和逻辑文件系统之间的各种主要区别。物理文件系统和逻辑文件系统之间的各种区别如下:

  1. 物理文件存储在 iSeries 系统上的实际数据,并描述数据如何显示给程序或从程序检索。另一方面,逻辑文件表示或透视一个或多个物理文件。逻辑文件不包含数据。它们包含多个物理文件中找到的记录的描述。
  2. 物理文件可以独立于逻辑文件存在。另一方面,逻辑文件不能没有物理文件而存在。
  3. 如果物理文件存在逻辑文件,则在删除逻辑文件之前可能无法擦除物理文件。另一方面,如果物理文件存在逻辑文件,则可以删除逻辑文件而无需删除实际文件。
  4. 物理文件占用内存空间。它包括原始数据。另一方面,逻辑文件不占用任何内存空间。它不包含数据。
  5. CRTPF 命令用于在物理文件中创建此类对象。另一方面,CRTLF 命令用于在逻辑文件系统中创建此类对象。
  6. 物理文件具有一种记录格式。另一方面,逻辑文件可以包含多达 32 种记录格式。

物理文件系统与逻辑文件系统的对比

在这里,您将学习物理文件系统和逻辑文件系统之间的直接比较。物理文件系统和逻辑文件系统之间的主要区别如下:

物理文件系统逻辑文件系统
物理文件存储在 iSeries 系统上的实际数据,并描述数据如何显示给程序或从程序检索。逻辑文件表示或透视一个或多个物理文件。逻辑文件不包含数据。它们包含一个或多个物理文件中找到的记录的描述。
它占用内存空间,并包含原始数据。它不占用任何内存空间。它不包含数据。
它可以独立于逻辑文件存在。逻辑文件不能没有物理文件而存在。
CRTPF 命令用于在物理文件中创建此类对象。CRTLF 命令用于在逻辑文件系统中创建此类对象。
如果物理文件存在逻辑文件,则在删除逻辑文件之前可能无法擦除物理文件。如果物理文件存在逻辑文件,则可以删除逻辑文件而无需删除实际文件。
物理文件系统具有一种记录格式。逻辑文件系统可以包含多达 32 种记录格式。