This video is a continuation of our virtual memory series, based on the article/book I wrote on the same topic.
In the previous video, we talked about what virtual memory is and why we need it. This week, we look at the size of the virtual memory space. Since virtual memory is accessed through virtual addresses, a natural question is: how much memory can a program actually address?
This video answers that question, along with a few related ones:
Deriving the size of the virtual address space from first principles
Why the virtual address space is split between user space and kernel space
What canonical virtual addresses are
In the next video, we will talk about the address space layout of a process.
In the meantime, you can read the full article if you haven’t already.
Update on the Ebook Version
I also want to give a quick update on the virtual memory ebook. I’ve updated the PDF for a smoother on-screen reading experience with better color schemes and fonts. Apart from that, I’ve also created an EPUB version for those who prefer that format. You can get both from the link below. Happy reading!











