Gestión de memoria de Linux (12): explicación detallada de unflatten_device_tree

Código fuente basado en: Kernel 5.4

Acuerdo:

  • Arquitectura del chip: ARM64
  • CONFIG_ARM64_VA_BITS: 39
  • CONFIG_ARM64_PAGE_SHIFT: 12

0. Prefacio

Para la versión de depuración, si marca el nodo /sys/kernel/debug/memblock/reserved , encontrará muchos pequeños agujeros reservados. En el artículo anterior "Explicación detallada de la memoria reservada", se analizó el proceso de memoria reservada de la parte de memoria reservada de dts, estas memorias son definidas por los ingenieros de acuerdo con las necesidades de la plataforma. En el artículo "Explicación detallada de paging_init", se crean muchas tablas de páginas al mapear map_kernel y map_mem, y el sistema trata esta parte de la memoria como memoria reservada.

Este artículo seguirá el análisis anterior de otra pequeña porción de memoria reservada por el sistema.

1. desaplanar_device_tree()

arch/ar

おすすめ

転載: blog.csdn.net/jingerppp/article/details/132904122