Где находится фактический код для служб загрузки UEFI в EDK 2 или где заполняется системная таблица в исходном коде EDK 2

Я работаю над уровнем виртуализации, в частности над виртуализацией загрузочных служб UEFI, чтобы эти службы можно было использовать даже после вызова ExitBootService() и передачи управления ядру GPOS, будь то Windows/Linux. Я не могу найти фактический код для служб загрузки в источнике EDK 2. Службы загрузки реализованы в виде указателей на функции. Я не могу найти, где эти указатели функций адресованы, чтобы указать на реальную функцию, например, службу загрузки AllocatePage(). где объявление службы загрузки AllocatePage() в исходниках EDK 2. ИЛИ в другом месте в исходной системной таблице EDK 2 и структуре загрузочных служб заполняется. Мне также интересно посмотреть, как XEN справляется с этой конкретной проблемой. Также приветствуется любой источник OVMF. Большое спасибо


person U. Saleem    schedule 03.01.2019    source источник


Ответы (1)


Большинство реализаций BootServices по умолчанию находятся в DxeCore (поскольку они должны быть доступны для всех других компонентов фазы DXE). Сама таблица заполняется здесь.

person CodeRush    schedule 03.01.2019