学习一个知识点,就和去一个陌生的城市很像,你首先要对这个城市有大概的了解,和一些准备工作,包括查询城市地图,人文地理等等。然后在这个城市多住一段时间,慢慢去感受每一条街头巷尾,特色小吃,人文环境。这样你才能对这个城市有比较具体全面的了解。
总览 :
首先UEFI Firmware 它要向OS 汇报内存资源(这里的内存不单单指system memory,也包括地址线上映射的其他设备的memory),它首先要先收集这些资源信息,收集信息一部分是在PEI阶段并且用Resource Hob 传递出去。接下来在DXE,它除了还要继续收集信息,并且要整理与记录这些资源信息,这个管理机制就是之后会介绍的GCD 机制。DXE 阶段还需要内存资源的分配与释放,那么还有一个Memory Services 的一系列function。汇报资源,legacy 不介绍,UEFI 会用GetMemoryMap() function 把这些资源信息传递给OS,同时ACPI 还规定了每个device 也要_CRS method 汇报资源使用情况包括 memory MMIO interrupt 等信息。以上,就是整个uefi firmware 关于内存资源这方面的大概情况。