Advanced – the VM split

What we have seen so far is actually not the complete picture; in reality, this address space needs to be shared between user and kernel space.

This section is considered advanced. We leave it to the reader to decide whether to dive into the details that follow. While they're very useful, especially from a debug viewpoint, it's not strictly required for following the rest of this book.

Recall what we mentioned in the Library segments section: if a Hello, world application is to work, it needs to have a mapping to the printf(3) glibc routine. This is achieved by having the dynamic or shared libraries memory-mapped into the process VAS at runtime (by the loader program).

A similar argument could be made for any and every ...

Get Hands-On System Programming with Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.