Prerequisites
Last updated
Last updated
C fundamentals (unions, structs, typedefs, pointers, pointers vs arrays, etc.)
callbacks and function pointers
macros and preprocessors
scope (extern, static, etc.)
linking libraries and ability to work with Makefile and KConfig Files
generation of static and shared (.so
) libraries
Debugging
Fluent in using GDB, Valgrid, strace, ptrace, etc. debugging and tracing tools
Pointers on C Book by Kenneth A. Reek (highly recommended) - teaches you pointers and other important topics
for basics and fundamental C
Expert C Programming by van der Linden, Peter
You need overall knowledge of working of operating systems
Knowledge of userspace linux APIs and syscalls is highly recommended
or
MIT 6.1810 or 6.828 : Operating System Engineering (Labs + xv6 book is must) - . This will give you the important prerequisites and the confidence to explore into the kernel. Remember, complete all the labs.