🏷️ 知识点:内存映射文件

共 1 道相关题目

2025 年第 30 题 操作系统 选择题

关于内存映射文件,下列说法正确的是( )。

I. 可实现进程间通信

II. 实现了页面到磁盘块的映射

III. 将文件映射到进程的虚拟地址空间

IV. 将文件映射到系统的物理地址空间

内存映射文件

A. I、III B. I、IV C. II、III D. I、II、III

[tag_link]

正确答案:A

本题考察 内存映射文件,现对选项进行逐一分析:

  • I. 内存映射文件可以用于进程间通信,因为多个进程可以将同一个文件映射到各自的虚拟地址空间,从而共享数据。✅
  • II. 这个选项比较有争议,按照大家的反馈,出题人想考查的应该是 磁盘块 → 页面的映射。❌
  • III. 内存映射文件的核心概念就是将文件映射到进程的虚拟地址空间,使得进程可以通过访问内存来操作文件。✅
  • IV. 内存映射文件是将文件映射到进程的虚拟地址空间,而不是直接映射到物理地址空间。虚拟地址空间最终会通过操作系统的内存管理单元(MMU)映射到物理地址空间。❌所以正确的是 I、III,选择 A。【注意】 严格来说,II 的描述是符合现代操作系统的实现的(比如 linux 中的 mmap 接口中如果开启 MAP_SHARED(共享映射),写入页面即写入磁盘,即 页面 和 磁盘块 是双向映射关系)。估计出卷人的意思是内存映射文件 语义 是 磁盘块 → 页面的映射,而不是 页面 → 磁盘块,所以 II 是错误的,从这种角度来看也说得通。要是考场上这种题真的错了那就认了吧,毕竟这种概念题有分歧在 408 是很正常的,但是数量也会比较少就是了。