Re: Understanding kexts in the early boot process
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=isRS8j6NdJ2o02NY/tSL7BSEjS8y0jyPIv9UrbgZgLA=; b=q74kdaeAAIjDILzGod96IKnEV7YpLfI+H9rQ1JcHewdcLS7zfPmwQ/NsUAa04WY13v +8zBlgav1RCl2YQH1Nokd1j/ILcVfnSUrC9zpEwDHIMT/xhPVJR2Zwlo26gwXdymA+66 Rm5VpLdmavh1CYTYTyYqlh887H2i6PyHYH33g= Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=PDky1lRsLrhK3V1qS6kyQALSWVfuSIzqOHxP4vqxFVP1E5PY+2gmjrt2bmUEhV8Lwr 59vtQg6kuLuoFQCy8xG5uYKNTIe0UAm2XJXHBfd7wYXkUY8tYqSEuRhMExPj4ESSL2TC JnhTdrnheY2wZHtdkkkjj4jUnI3pag39Kw/qk= Michael, thank you for helping me out here. There's one thing left I don't understand yet:
Question 2: What if this file does not exist, can the system still boot, and which component is then taking care of finding the kexts (e.g. is it boot.efi or the kernel or what?)
The bootloader is capable of parsing extension plists.
Question 4: How does the mkext, if loaded separately, get linked to the kernel? (i.e. does the boot loader contain a linker that works like the kextcache command?)
The kernel contains a linker that handles this.
If the kernel contains a linker to link in the kexts, that means that it's also the kernel that initializes them, I suppose. Correct? However, on q 2 you replied that the bootloader parses kexts. What I haven't seen yet is the part that links the kexts (apparently loaded by the boot loader) to the kernel. Does the boot_args struct have a new parameter (not doc'd in Amit's book) which passes a pointer to a list of loaded kexts to the kernel, or how does this work? Background is this: It appears that a 3rd party boot loader is able to load two sets of kexts from different locations and get them used by the kernel. I try to understand how that works, because so far all I learned was that there's only one single group of kexts that the kernel sees, not several. -- Thomas Tempelmann, http://www.tempel.org/ _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... This email sent to site_archiver@lists.apple.com
participants (1)
-
Thomas Tempelmann