¿Qué hace realmente boot.efi?

Entiendo que cuando se ejecuta el sistema EFI de una Mac, ubica el archivo boot.efien el directorio /System/Library/CoreServices/( ) y lo ejecuta como una aplicación EFI (subvirtiendo una gran parte de la especificación UEFI si mi comprensión es correcta).blessed

Mi pregunta es: ¿qué hace realmente esta aplicación EFI en 10.8.4? Me imagino que debe ubicar el kernel, pasar los argumentos de arranque, ubicar los KEXT, etc., pero eso es solo mi especulación. ¿Hay algún lugar donde pueda averiguar lo que hace (idealmente paso a paso) de una fuente concreta?

Respuestas (1)

EFI es un contrato que especifica cómo el hardware puede encontrar e iniciar el software y viceversa.

En lugar de tener que crear un código personalizado en cada nuevo dispositivo de hardware y cada nueva versión de software, se acordó un estándar e Intel escribió inicialmente la especificación.

Luego, una empresa como Apple decide adoptar una determinada versión de la especificación EFI (quizás incluso usando implementaciones específicas de la especificación en hardware, ya sea fabricando sus propios chips o adoptando la implementación de otra empresa) y posiblemente amplía/modifica la implementación base para satisfacer las necesidades de Apple. .

Desde un alto nivel, boot.efi es parte del software que ayuda a controlar el arranque del hardware y la transferencia al sistema operativo para permitir que se ejecute (en este caso, OS X 10.8.4):

http://upload.wikimedia.org/wikipedia/commons/thumb/f/ff/Efi_flowchart_extended.svg/500px-Efi_flowchart_extended.svg.png

El siguiente artículo de wikipedia es la fuente de la imagen de arriba, y también contiene algunos buenos detalles introductorios sobre EFI y el uso de Apple desde 2006. Apple cubre más detalles sobre su implementación de EFI y el proceso de arranque en la guía de programación del kernel:

Ahora eso es lo que yo llamo una buena respuesta.