ARM内存重映射

时间:2012-09-10 09:13:17

标签: memory-management linux-kernel arm embedded-linux mmu

ARM页表项具有TEX重映射位。我读过像TEX重映射这样的东西以及页表条目的AP位用于访问保护。

  1. 有人帮我澄清这些位是什么以及它们表示什么
  2. 是否与内存重新映射有关?

    一个。如果是这样,它与正常内存重映射寄存器和主内存重映射寄存器有什么关系。

  3. Linux内核是否正在利用这些。

    一个。如果是这样,linux内核使用这些方式。请给我一些用例。

1 个答案:

答案 0 :(得分:1)

简而言之,页表中的TEX位是Type EXtension位。它们可用于控制细粒度级别的页面缓存,但通常用作HW忽略的纯软件上下文。

请参阅:

http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0211k/Babgahdc.html

Linux使用这些位作为各种内存管理功能的软件上下文:

#define PMD_SECT_MINICACHE     (PMD_SECT_TEX(1) | PMD_SECT_CACHEABLE)
#define PMD_SECT_WBWA          (PMD_SECT_TEX(1) | PMD_SECT_CACHEABLE | PMD_SECT_BUFFERABLE)
#define PMD_SECT_NONSHARED_DEV (PMD_SECT_TEX(2))

请参阅:http://lxr.free-electrons.com/source/arch/arm/include/asm/pgtable