How can I load a kernel driver at a specific memory address?
How could it be done with the following methods?
- commands/scripts like
insmod
ormodprobe
- using C code (not sure if there may exist such an option)
How can I load a kernel driver at a specific memory address?
How could it be done with the following methods?
insmod
or modprobe
You can't load a kernel module at a specific physical address. You can't load a kernel module at a specific virtual address. The kernel decides where it loads the module.
Inside the kernel, of course, you can do what you want. But I think arranging to load a driver at a specific address would require a lot of deep changes.
I fail to see what would require loading a driver at a specific physical or virtual address. Devices may need to be mapped at specific physical addresses (and there are mechanisms for that), but code doesn't care.