📜  物理和逻辑文件系统

📅  最后修改于: 2021-08-29 11:48:49             🧑  作者: Mango

1.物理文件:
物理文件包含存储在iSeries系统上的实际数据,以及如何将数据呈现给程序或从程序接收数据的描述。它们仅包含一种记录格式,以及一个或多个成员。可以使用字段级别描述或记录级别描述来描述数据库文件中的记录。

字段级别的描述向系统描述了记录中的字段。使用字段级别描述创建的数据库文件称为外部描述文件。记录级别的描述仅描述记录的长度,而不描述记录的内容。使用记录级别描述创建的数据库文件称为程序描述文件。这意味着您的ILE C / C++程序必须描述记录中的字段。

ILE C / C++程序可以使用外部描述的文件或程序描述的文件。如果它使用外部描述的文件,则ILE C / C++编译器可以从外部描述的文件中提取信息,并自动在您的程序中包含字段信息。您的程序不需要定义字段信息。有关更多信息,请参见“在程序中使用外部描述的文件”。物理文件可以具有键控序列访问路径。这意味着数据以基于文件中一个或多个关键字段的顺序呈现给ILE C / C++程序。

2.逻辑文件:
逻辑文件不包含数据。它们包含对在一个或多个物理文件中找到的记录的描述。逻辑文件是一个或多个物理文件的视图或表示。包含多种格式的逻辑文件称为多格式逻辑文件。

如果您的程序处理的逻辑文件包含多个记录格式,则可以使用_Rformat()函数来设置要使用的格式。某些操作无法在逻辑文件上执行。如果您以打开模式W,W +,WB或WB +打开逻辑文件以进行流文件处理,则文件将被打开但不会清除。如果您以打开模式WR或WR +打开逻辑文件进行记录文件处理,则文件会打开但不会清除。可以使用字段级别描述或记录级别描述来描述iSeries数据库文件中的记录。

记录的字段级别描述包括对所有字段及其在该记录中的排列的描述。由于字段的描述及其排列方式保存在数据库文件中,而不是保存在您的ILE C / C++程序中,因此使用字段级描述创建的数据库文件称为外部描述文件。

物理文件与逻辑文件:

  • 物理文件–
    存储在磁盘或磁带上的字节的集合。
  • 逻辑文件–
    一个“频道”(类似于电话线),将文件的位置和物理格式的详细信息隐藏到程序中。

当程序要使用特定的文件“数据”时,操作系统必须找到称为“数据”的物理文件,并通过为其分配逻辑文件来命名逻辑名称。该逻辑文件具有程序内部使用的逻辑名。

Physical File Logical File
It occupies the portion of memory. It contains the original data. It does not occupy memory space. It does not contain data.
A physical file contains one record format. It can contain upto 32 record formats.
It can exist without logical file. It cannot exist without physical file.
If there is a logical file for physical file, the physical file cannot be deleted until and unless we delete the logical file. If there is a logical file for a physical file, the logical file can be deleted without deleting the physical file.
CRTPF command is used to make such object. CRTLF command is used to make such object.

逻辑存储视图–用户查看的是目录和存储卷中组织的文件的集合。

  • 逻辑文件结构与其物理实现无关。
  • 逻辑文件结构“忽略”。

物理存储分配–记录可以存储在单独的文件位置。数据访问方法和数据编码方法。

物理存储视图–组织为线性地址空间的物理存储位置的集合。

  • 文件细分为记录。
  • 记录通常包含有关单个客户,诸如库存中的产品或事件之类的信息。
  • 记录分为多个字段。
  • 字段是数据的单个单位。