Skip to content
0:00 / 0:00

#slaballocator#solaris#kernel

Down memory lane: Two decades with the slab allocator -- Bryan Cantrill

Systems We Love

1.6K subscribers • 1 video on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Bryan Cantrill

Advanced. Deep dive for people who know the field.

11K views6 years ago1 recommendation

Systems programmingHistory and cultureOperating systemsMemory managementHistory of computing

Bryan Cantrill shares the history, implementation, and debugging power of the slab allocator in operating system kernels.

Talk by Bryan Cantrill. Memory allocation is an important aspect of any dynamic software system, but it's especially essential in an operating system kernel -- a program that is expected to run continuously and in perpetuity. Two decades ago, I fell in love with the slab allocator from Sun Microsystems, ultimately plotting the course of my nascent career to work with its creator, Jeff Bonwick. As a young software engineer, I quickly learned the power of its incredible debugging capabilities, and came to appreciate the subtle beauty of its implementation. As the years passed, the slab allocator saw important changes: it was extended deeper into the virtual memory system; it was brought to user-level and made available to applications; and it was liberated from its proprietary shackles and made open source. With each of these changes, a new generation of engineers came to the slab allocator, bringing their own insights and making their own significant contributions. Two decades after I first fell in love with it, the slab allocator remains at the heart of the systems I work on -- and is as compelling as ever. In this talk, I will describe some of the highs (and a few of the lows) of my two decade relationship with this system, highlighting in particular those aspects of its craftsmanship that continue to inspire the ways we build new systems.

Why it's here

1 person recommends this

What people say. Recommended as an impressive look into kernel memory allocation and the history of the slab allocator.

u/wsppanin r/C_Programming • Recommends

On “How does a free function know how much memory it needs to free up? like she only gets a pointer to the allocated memory right?”

The slab allocator by Jeff Bonwick from Sun Microsystems is one of the most impressive pieces of software engineering I have worked with. Check out Down Memory Lane: Two Decades With The Slab Allocator by Bryan Cantrill.