kernelsystems-programming

How are kernels made?


From my understanding, your program does everything using syscalls. But if everything is done with syscalls, then how are kernels coded? If every function just runs a stscall then how are you supposed to create your own?


Solution

  • how are kernels coded?

    Kernels are usually written in low-level languages (such as C or assembly) and the code is the one that directly interacts with the hardware. This means that they have to use syscalls to do any form of input or output.

    If every function just runs a stscall then how are you supposed to create your own?

    Kernel code is usually not combined with user code, but is written separately. You can create your own syscall by adding a line to the kernel's source code and recompiling the kernel, but this is rarely done.