navigaid
3/26/2017 - 1:55 PM

http://askubuntu.com/questions/517500/what-does-it-mean-to-load-a-kernal-image

To "load" them means copying them from the boot medium (harddisk, CD, USB stick, ...) to system RAM.

The CPU can only receive instructions directly from either the BIOS or the RAM; in order to run a program stored on the hard disk, there needs to be a program that is already accessible that will make the other program accessible.

At system start, there is only the BIOS, which knows how to test the RAM for defects and read data from the hard disk. The BIOS loads the bootloader, which is placed so that it can be found easily (either at the beginning of the disk, or in a special partition).

The bootloader is an intermediate program that basically just performs the same function as the BIOS -- it loads the next program. Unlike the BIOS, it is specifically made to load Linux, so it knows how to read the Executable and Linking Format (which is used for programs under Linux), and it knows that it should also read the initrd file into memory and pass the address where its contents can be found to the Linux kernel.

The kernel itself can typically be found in the /boot directory, with a name of vmlinuz- followed by a version number, and at the moment you can execute commands, a copy of it is somewhere in system memory; the exact address is unpredictable.