Jump to content

EFI Strings - Where do the kexts come from?


SilverZero
 Share

4 posts in this topic

Recommended Posts

Hi all,

 

So I think I understand most of this, at least basically. Let's use my GeForce 7600GT as an example device. I can use NVInject to detect my video card, and it will "inject" the proper strings into the device tree. But the device tree only uses this string to properly utilize an existing kext - is that correct? And if so, then by going the EFI strings route, I bypass the work of NVInject and put the proper string in myself, but it STILL has to go through a kext for the video card, right?

 

So does OS X include proper kexts out of the box, or are they something that can be found elsewhere, kind of like you would download a specific driver in another OS? In other words, I can figure out the EFI string and put it in alright, but how do I know that the right kext is there for my card in the first place?

 

I'm trying to get my head completely around everything I can, so I don't just stumble through anything without knowing what I'm really doing and why I'm doing it. Thanks for your help!

Link to comment
Share on other sites

Hi all,

 

So I think I understand most of this, at least basically. Let's use my GeForce 7600GT as an example device. I can use NVInject to detect my video card, and it will "inject" the proper strings into the device tree. But the device tree only uses this string to properly utilize an existing kext - is that correct? And if so, then by going the EFI strings route, I bypass the work of NVInject and put the proper string in myself, but it STILL has to go through a kext for the video card, right?

 

So does OS X include proper kexts out of the box, or are they something that can be found elsewhere, kind of like you would download a specific driver in another OS? In other words, I can figure out the EFI string and put it in alright, but how do I know that the right kext is there for my card in the first place?

 

I'm trying to get my head completely around everything I can, so I don't just stumble through anything without knowing what I'm really doing and why I'm doing it. Thanks for your help!

Think of it this way, the EFI table is like the device registry in windows (in function). The EFI table is dynamicly done at boot time tho. This is why the EFI strings need to be injected at boot time, so the OSX kernel knows what kexts to load for your hardware. kexts are device drivers, be it audio, video, usb, etc.

Link to comment
Share on other sites

Think of it this way, the EFI table is like the device registry in windows (in function). The EFI table is dynamicly done at boot time tho. This is why the EFI strings need to be injected at boot time, so the OSX kernel knows what kexts to load for your hardware. kexts are device drivers, be it audio, video, usb, etc.

 

Cool, that makes sense. My big confusion was whether the proper kexts were included OOTB, even on a retail install. I never really knew what the injectors were until I started reading up on it, I figured they were just patched drivers/kexts. Now I get it.

 

Now I just need to understand which files do what within the system (like the various .plist files people often talk about). I'm off to the search page! (Maybe I'll be back.)

 

Thanks again!

Link to comment
Share on other sites

 Share

×
×
  • Create New...