操作系统 在内存中的数据结构
到目前为止,我们已经讨论了实现文件系统所需的硬盘上必须存在的数据结构。在这里,我们将讨论实现文件系统所需的必须在内存中存在的数据结构。
内存中的数据结构用于文件系统管理以及通过缓存提高性能。这些信息在挂载时加载,并在弹出时丢弃。
- 内存中的挂载表
内存中的挂载表包含正在挂载到系统上的所有设备的列表。每当与设备保持连接时,将在挂载表中进行注册。
- 内存中的目录结构缓存
这是CPU最近访问的目录列表。将来可能还会访问列表中的目录,因此最好将它们临时存储在缓存中。
- 系统范围的打开文件表
这是系统中所有打开文件的列表,在特定时间点。当用户打开任何文件进行读写时,将在此打开文件表中创建条目。
- 每个进程的打开文件表
这是每个进程所拥有的打开文件的列表。由于系统中已经有一个所有打开文件的列表,因此它只包含指向系统范围表中相应条目的指针。