Subscribe
Sign in
Home
Podcast
CPython Internals
AI
Computer Architecture
Linux Internals
x86-assembly
Contact Me
Archive
About
Latest
Top
Discussions
How Copy-on-Write Works with Memory-Mapped Files
Let’s step inside the kernel and understand how it implements copy-on-write and what are its implications for the performance of user-space systems
Sep 27
•
Abhinav Upadhyay
5
53:49
August 2026
Demand Paging in Action: mmap, Page Faults, and RSS
Learn how to inspect a process’s virtual memory, use mmap to allocate pages, and observe page faults and physical memory allocation as they happen
Aug 29
•
Abhinav Upadhyay
2
1
37:38
Demand Paging: What Happens When Linux Handles a Page Fault
Understand what happens when you allocate memory versus when you actually access it, what a VMA is, and how the Linux kernel uses VMAs to handle page…
Aug 23
•
Abhinav Upadhyay
9
43:52
x86 Addressing Modes, Part 2: Indirect, Indexed, and Offset-based Modes
In this final part on addressing modes, we learn about indirect, indexed and offset-based addressing modes along with some interesting examples and…
Aug 9
•
Abhinav Upadhyay
5
June 2026
How Big Is a Physical Address?
A short aside from the virtual memory series on physical address size, why it differs from virtual address size, and why different CPUs expose different…
Jun 22
•
Abhinav Upadhyay
5
10:29
What Does a Page Table Entry Actually Store?
Learn about the page-level metadata that is stored in the page table and how is that used by the hardware during memory access
Jun 21
•
Abhinav Upadhyay
3
28:30
Page Tables from First Principles
Constructing page tables from first principle as a way to store virtual-to-physical address mappings
Jun 16
•
Abhinav Upadhyay
13
1
49:43
Understanding a Process’s Address Space Layout
In this video, we look at how a process’s virtual address space is laid out: code, data, heap, stack, shared libraries, mmap regions, and more.
Jun 6
•
Abhinav Upadhyay
12
22:12
Why Git Has a Variable Named false_but_the_compiler_does_not_know_it
A small C trick that keeps Clang from flagging valid code as unreachable
Jun 3
•
Abhinav Upadhyay
37
4
4
May 2026
How Large Is the Virtual Address Space?
How large is a process’s virtual address space, why is it split between user space and the kernel, and what are canonical virtual addresses?
May 31
•
Abhinav Upadhyay
14
1
25:15
Why do we need virtual memory?
Understanding virtual memory from first principles
May 24
•
Abhinav Upadhyay
17
1
17:34
Virtual Memory From First Principles
A practical guide to page faults, page tables, TLBs, NUMA topology, Linux internals, and performance in data-intensive systems.
May 10
•
Abhinav Upadhyay
284
1
55
This site requires JavaScript to run correctly. Please
turn on JavaScript
or unblock scripts