cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

hugetlbpage.rst (1371B)


      1.. include:: ../disclaimer-zh_CN.rst
      2
      3:Original: :ref:`Documentation/arm64/hugetlbpage.rst <hugetlbpage_index>`
      4
      5Translator: Bailu Lin <bailu.lin@vivo.com>
      6
      7=====================
      8ARM64中的 HugeTLBpage
      9=====================
     10
     11大页依靠有效利用 TLBs 来提高地址翻译的性能。这取决于以下
     12两点 -
     13
     14  - 大页的大小
     15  - TLBs 支持的条目大小
     16
     17ARM64 接口支持2种大页方式。
     18
     191) pud/pmd 级别的块映射
     20-----------------------
     21
     22这是常规大页,他们的 pmd 或 pud 页面表条目指向一个内存块。
     23不管 TLB 中支持的条目大小如何,块映射可以减少翻译大页地址
     24所需遍历的页表深度。
     25
     262) 使用连续位
     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  ====== ========   ====    ========    ===