摘自我引用的其中一本书,
- 处理器内存映射:这是第一个需要创建的内存映射。它解释了CPU的内存管理策略 CPU如何处理不同的地址空间(用户模式,内核 模式),各种内存区域的缓存策略是什么, 等等。
- 电路板存储器映射:一旦知道处理器如何看待各种存储区域,下一步就是适应各种存储器区域 板载设备进入处理器存储区。这需要一个 了解各种板载设备和总线控制器。
- 软件内存映射:接下来需要为各种软件组件(如引导加载程序和 Linux内核。 Linux内核设置了自己的内存映射和 决定各种内核部分(如代码和堆)的位置 驻留。
这些内存映射何时创建?比方说,它是硬编码的东西,在编译阶段之前还是由某些运行时任务决定的?
是否有将处理器地址空间映射到各种设备的标准,还是用户的选择?
book btw。
答案 0 :(得分:0)
这些内存映射何时创建?比如说,这有点困难 编码之前和编译阶段之前,或者是由某些运行决定的 时间任务?
这个配置通常是内核在启动时要做的第一件事。它可以是硬编码的,也可以在内核启动之前决定,即在引导加载程序中。
是否有一些将处理器地址空间映射到的标准 各种设备还是用户的选择?
这完全取决于你作为设计师。许多人可能会从其他操作系统中选择类似的配置,例如linux。