In part 2 of this blog series, we take a closer look at the eBPF VM registers and instruction set, we learn how eBPF-accessible kernel functions are called from bytecode and how they are defined via a syscall-like special purpouse API by the core kernel.