GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / translations / zh_CN / arm64 / hugetlbpage.rst
1 .. include:: ../disclaimer-zh_CN.rst
2
3 :Original: :ref:`Documentation/arm64/hugetlbpage.rst <hugetlbpage_index>`
4
5 Translator: Bailu Lin <bailu.lin@vivo.com>
6
7 =====================
8 ARM64中的 HugeTLBpage
9 =====================
10
11 大页依靠有效利用 TLBs 来提高地址翻译的性能。这取决于以下
12 两点 -
13
14   - 大页的大小
15   - TLBs 支持的条目大小
16
17 ARM64 接口支持2种大页方式。
18
19 1) pud/pmd 级别的块映射
20 -----------------------
21
22 这是常规大页,他们的 pmd 或 pud 页面表条目指向一个内存块。
23 不管 TLB 中支持的条目大小如何,块映射可以减少翻译大页地址
24 所需遍历的页表深度。
25
26 2) 使用连续位
27 -------------
28
29 架构中转换页表条目(D4.5.3, ARM DDI 0487C.a)中提供一个连续
30 位告诉 MMU 这个条目是一个连续条目集的一员,它可以被缓存在单
31 个 TLB 条目中。
32
33 在 Linux 中连续位用来增加 pmd 和 pte(最后一级)级别映射的大
34 小。受支持的连续页表条目数量因页面大小和页表级别而异。
35
36
37 支持以下大页尺寸配置 -
38
39   ====== ========   ====    ========    ===
40   -      CONT PTE    PMD    CONT PMD    PUD
41   ====== ========   ====    ========    ===
42   4K:         64K     2M         32M     1G
43   16K:         2M    32M          1G
44   64K:         2M   512M         16G
45   ====== ========   ====    ========    ===