SlideShare une entreprise Scribd logo
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Yet another talk about basics in Linux
Memory
Vasyl Gomonovych
2020
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Agenda
I Physical Memory Overview
I Memory Management Unit
I Memory Nodes, Zones, Frames
I Boot time memory management
I Memblock
I Bootmem
I Physical memory allocation
I Slab allocator
I Userspace allocator
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Overview
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Virtual Memory
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Physical Memory Hierarchy
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Physical Memory Segmentation
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Memory Banks
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit access
I Cp15:c1:c0 -¿ MCR p15, 0, val, c1, c0, 0
I C0 – TCM status Tightly coupled memory
I C1 – control register
I C2 –
I C3 – domain access
I C4 –
I C5 –
I C6 –
I C7 – cache setup, clean, drain write buffer
I C8 –
I C9 – cache operation (victim pointer, cache lock down)
I C10 –
I C11 –
I C12 –
I C13 – current process ID
I C14 –
I C15 – round-robin replacemant
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit page table
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit tlb
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit tlb
I Data TLB
I Instruction TLB
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit cache
I Virtually indexed
I Homonyms - the same virtual addresses in different
processes
I Synonyms - different virtual addresses maps to the same
physical
I Physically indexed
I Virtually Indexed Physically Tagged
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit cache
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit cache structure
I Cache line is transfer unit between cache and RAM
I Make write asynchronous
I Clustering read and write
I Direct map cache
I Way Associative cache
I Fully Associative cache
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit cache miss
I Compulsory miss - miss after cache flash
I Capacity miss - cache is full no free lines
I Conflict miss - cache is full no free lines
I Coherence miss - miss triggered by coherence protocol
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit cache replacement
I Pseudo LRU
I FIFO
I Random
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit mapping
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit mapping
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit switch
I FCSE – Fast context switch
I Elimination of the cache and TLB flush
I Process ID
I 32MB VM limit for task size
I MVM = VA + (0x2000000 * process ID)
I Task switch change process ID and add entries to
domain access reg
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
memory management unit functionality
I Write policy
I Writeback – only to cache write
I Writethrue – write to cache and memory
I Allocation policy (miss case policy)
I Read allocate
I Write allocate - allocate line in cache read and store
I No write allocate - write directly to memory
I Lockdown – exempt from eviction (irq vector, ISR,
global data)
I Logical cache
I Physical cache
I Unified cache
I Split cache
I Cache hit vs cache miss (time penalty)
I Eviction
I Data streaming
I Thrashing
I Direct map vs set associativity
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Memory Nodes, Zones, Frames
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Boot time memory management
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Flat memory model
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Discontiguous memory model
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Sparse memory model
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Memblock
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Memblock
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Mips memblock
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Bootmem
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Buddy allocator
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
SLOB
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
SLAB
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
SLAB
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
SLUB
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
SLUB debug
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
SLUB debug
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
SLUB debug
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
SLUB debug
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
malloc chank
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
malloc buddy
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
thread local storage descriptor
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Software setup
I (1) - architecture defined register point on TCB start
I (2) - first TCB entry is a pointer on Dynamic Thread
Vector DTV
I (3) - TCP Thread Control Block
I (4) - TLS Thread Local Storage
I (5) - Static TLS
I (6) - Dynamic TLS
Static TLS blocks are memory blocks for thread-local
variables for modules or dynamically loaded libraries that load
in memory by dynamic linker during the main program load.
Dynamic TLS blocks are memory blocks for thread-local
variables for modules that load in runtime by dlopen()
syscall.
Static TLS module number 1 is always main program
executable region for own thread-local variables.
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
thread local storage
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
END
Questions?
Yet another talk
about basics in
Linux Memory
Vasyl Gomonovych
Physical Memory
Overview
Memory
Management Unit
Memory Nodes,
Zones, Frames
Boot time memory
management
Physical memory
allocation
SLOB SLAB SLUB
Userspace allocator
END
Links
I What Every Programmer Should Know About Memory
I The Linux Virtual Memory Manager
I Carnegie Mellon Computer Architecture
I ELF Handling For Thread-Local Storage
I elixir.bootlin.com

Contenu connexe

Similaire à Yet another talk_about_basics_in_linux_memory(1)

Preventing cpu side channel attacks with kernel tracking
Preventing cpu side channel attacks with kernel trackingPreventing cpu side channel attacks with kernel tracking
Preventing cpu side channel attacks with kernel tracking
Marian Marinov
 
EuroSec2012 "Effects of Memory Randomization, Sanitization and Page Cache on ...
EuroSec2012 "Effects of Memory Randomization, Sanitization and Page Cache on ...EuroSec2012 "Effects of Memory Randomization, Sanitization and Page Cache on ...
EuroSec2012 "Effects of Memory Randomization, Sanitization and Page Cache on ...
Kuniyasu Suzaki
 
Faq on SnapDrive for UNIX NetApp
Faq on SnapDrive for UNIX NetAppFaq on SnapDrive for UNIX NetApp
Faq on SnapDrive for UNIX NetApp
Ashwin Pawar
 
Hitchhiker's guide to Tru64's AdvFS
Hitchhiker's guide to Tru64's AdvFSHitchhiker's guide to Tru64's AdvFS
Hitchhiker's guide to Tru64's AdvFS
Justin Goldberg
 
Memory Hierarchy Design, Basics, Cache Optimization, Address Translation
Memory Hierarchy Design, Basics, Cache Optimization, Address TranslationMemory Hierarchy Design, Basics, Cache Optimization, Address Translation
Memory Hierarchy Design, Basics, Cache Optimization, Address Translation
Farwa Ansari
 
Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12
Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12
Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12
sidg75
 
HBase Accelerated: In-Memory Flush and Compaction
HBase Accelerated: In-Memory Flush and CompactionHBase Accelerated: In-Memory Flush and Compaction
HBase Accelerated: In-Memory Flush and Compaction
DataWorks Summit/Hadoop Summit
 
PFcache (Linuxcon, Seattle, 2015)
PFcache (Linuxcon, Seattle, 2015)PFcache (Linuxcon, Seattle, 2015)
PFcache (Linuxcon, Seattle, 2015)
Pavel Emelyanov
 
Operating Systems - A Primer
Operating Systems - A PrimerOperating Systems - A Primer
Operating Systems - A Primer
Saumil Shah
 
제2회난공불락 오픈소스 세미나 커널튜닝
제2회난공불락 오픈소스 세미나 커널튜닝제2회난공불락 오픈소스 세미나 커널튜닝
제2회난공불락 오픈소스 세미나 커널튜닝
Tommy Lee
 
Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)
Pankaj Suryawanshi
 
Understanding domino memory 2017
Understanding domino memory 2017Understanding domino memory 2017
Understanding domino memory 2017
mJOBrr
 
PFcache - LinuxCon 2015
PFcache - LinuxCon 2015PFcache - LinuxCon 2015
PFcache - LinuxCon 2015
OpenVZ
 
Denser containers with PF cache - Pavel Emelyanov
Denser containers with PF cache - Pavel EmelyanovDenser containers with PF cache - Pavel Emelyanov
Denser containers with PF cache - Pavel Emelyanov
OpenVZ
 
MySQL Performance - SydPHP October 2011
MySQL Performance - SydPHP October 2011MySQL Performance - SydPHP October 2011
MySQL Performance - SydPHP October 2011
Graham Weldon
 
Cpu caching concepts mr mahesh
Cpu caching concepts mr maheshCpu caching concepts mr mahesh
Cpu caching concepts mr mahesh
Faridabad
 
Memory
MemoryMemory
Memory
adil raja
 
I/O System and Case Study
I/O System and Case StudyI/O System and Case Study
I/O System and Case Study
GRamya Bharathi
 
My sql with enterprise storage
My sql with enterprise storageMy sql with enterprise storage
My sql with enterprise storage
Caroline_Rose
 
Storage best practices
Storage best practicesStorage best practices
Storage best practices
Maor Lipchuk
 

Similaire à Yet another talk_about_basics_in_linux_memory(1) (20)

Preventing cpu side channel attacks with kernel tracking
Preventing cpu side channel attacks with kernel trackingPreventing cpu side channel attacks with kernel tracking
Preventing cpu side channel attacks with kernel tracking
 
EuroSec2012 "Effects of Memory Randomization, Sanitization and Page Cache on ...
EuroSec2012 "Effects of Memory Randomization, Sanitization and Page Cache on ...EuroSec2012 "Effects of Memory Randomization, Sanitization and Page Cache on ...
EuroSec2012 "Effects of Memory Randomization, Sanitization and Page Cache on ...
 
Faq on SnapDrive for UNIX NetApp
Faq on SnapDrive for UNIX NetAppFaq on SnapDrive for UNIX NetApp
Faq on SnapDrive for UNIX NetApp
 
Hitchhiker's guide to Tru64's AdvFS
Hitchhiker's guide to Tru64's AdvFSHitchhiker's guide to Tru64's AdvFS
Hitchhiker's guide to Tru64's AdvFS
 
Memory Hierarchy Design, Basics, Cache Optimization, Address Translation
Memory Hierarchy Design, Basics, Cache Optimization, Address TranslationMemory Hierarchy Design, Basics, Cache Optimization, Address Translation
Memory Hierarchy Design, Basics, Cache Optimization, Address Translation
 
Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12
Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12
Garbage Collection, Tuning And Monitoring JVM In EBS 11i And R12
 
HBase Accelerated: In-Memory Flush and Compaction
HBase Accelerated: In-Memory Flush and CompactionHBase Accelerated: In-Memory Flush and Compaction
HBase Accelerated: In-Memory Flush and Compaction
 
PFcache (Linuxcon, Seattle, 2015)
PFcache (Linuxcon, Seattle, 2015)PFcache (Linuxcon, Seattle, 2015)
PFcache (Linuxcon, Seattle, 2015)
 
Operating Systems - A Primer
Operating Systems - A PrimerOperating Systems - A Primer
Operating Systems - A Primer
 
제2회난공불락 오픈소스 세미나 커널튜닝
제2회난공불락 오픈소스 세미나 커널튜닝제2회난공불락 오픈소스 세미나 커널튜닝
제2회난공불락 오픈소스 세미나 커널튜닝
 
Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)
 
Understanding domino memory 2017
Understanding domino memory 2017Understanding domino memory 2017
Understanding domino memory 2017
 
PFcache - LinuxCon 2015
PFcache - LinuxCon 2015PFcache - LinuxCon 2015
PFcache - LinuxCon 2015
 
Denser containers with PF cache - Pavel Emelyanov
Denser containers with PF cache - Pavel EmelyanovDenser containers with PF cache - Pavel Emelyanov
Denser containers with PF cache - Pavel Emelyanov
 
MySQL Performance - SydPHP October 2011
MySQL Performance - SydPHP October 2011MySQL Performance - SydPHP October 2011
MySQL Performance - SydPHP October 2011
 
Cpu caching concepts mr mahesh
Cpu caching concepts mr maheshCpu caching concepts mr mahesh
Cpu caching concepts mr mahesh
 
Memory
MemoryMemory
Memory
 
I/O System and Case Study
I/O System and Case StudyI/O System and Case Study
I/O System and Case Study
 
My sql with enterprise storage
My sql with enterprise storageMy sql with enterprise storage
My sql with enterprise storage
 
Storage best practices
Storage best practicesStorage best practices
Storage best practices
 

Dernier

Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Dr. Vinod Kumar Kanvaria
 
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Excellence Foundation for South Sudan
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
Bisnar Chase Personal Injury Attorneys
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
IreneSebastianRueco1
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
Levi Shapiro
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
Nicholas Montgomery
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 
What is the purpose of studying mathematics.pptx
What is the purpose of studying mathematics.pptxWhat is the purpose of studying mathematics.pptx
What is the purpose of studying mathematics.pptx
christianmathematics
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
Jean Carlos Nunes Paixão
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
taiba qazi
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
Academy of Science of South Africa
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
Colégio Santa Teresinha
 

Dernier (20)

Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
 
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
 
What is the purpose of studying mathematics.pptx
What is the purpose of studying mathematics.pptxWhat is the purpose of studying mathematics.pptx
What is the purpose of studying mathematics.pptx
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
 

Yet another talk_about_basics_in_linux_memory(1)

  • 1. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Yet another talk about basics in Linux Memory Vasyl Gomonovych 2020
  • 2. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Agenda I Physical Memory Overview I Memory Management Unit I Memory Nodes, Zones, Frames I Boot time memory management I Memblock I Bootmem I Physical memory allocation I Slab allocator I Userspace allocator
  • 3. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Overview
  • 4. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Virtual Memory
  • 5. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Physical Memory Hierarchy
  • 6. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Physical Memory Segmentation
  • 7. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Memory Banks
  • 8. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit
  • 9. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit
  • 10. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit access I Cp15:c1:c0 -¿ MCR p15, 0, val, c1, c0, 0 I C0 – TCM status Tightly coupled memory I C1 – control register I C2 – I C3 – domain access I C4 – I C5 – I C6 – I C7 – cache setup, clean, drain write buffer I C8 – I C9 – cache operation (victim pointer, cache lock down) I C10 – I C11 – I C12 – I C13 – current process ID I C14 – I C15 – round-robin replacemant
  • 11. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit page table
  • 12. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit tlb
  • 13. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit tlb I Data TLB I Instruction TLB
  • 14. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit cache I Virtually indexed I Homonyms - the same virtual addresses in different processes I Synonyms - different virtual addresses maps to the same physical I Physically indexed I Virtually Indexed Physically Tagged
  • 15. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit cache
  • 16. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit cache structure I Cache line is transfer unit between cache and RAM I Make write asynchronous I Clustering read and write I Direct map cache I Way Associative cache I Fully Associative cache
  • 17. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit cache miss I Compulsory miss - miss after cache flash I Capacity miss - cache is full no free lines I Conflict miss - cache is full no free lines I Coherence miss - miss triggered by coherence protocol
  • 18. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit cache replacement I Pseudo LRU I FIFO I Random
  • 19. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit mapping
  • 20. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit mapping
  • 21. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit switch I FCSE – Fast context switch I Elimination of the cache and TLB flush I Process ID I 32MB VM limit for task size I MVM = VA + (0x2000000 * process ID) I Task switch change process ID and add entries to domain access reg
  • 22. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END memory management unit functionality I Write policy I Writeback – only to cache write I Writethrue – write to cache and memory I Allocation policy (miss case policy) I Read allocate I Write allocate - allocate line in cache read and store I No write allocate - write directly to memory I Lockdown – exempt from eviction (irq vector, ISR, global data) I Logical cache I Physical cache I Unified cache I Split cache I Cache hit vs cache miss (time penalty) I Eviction I Data streaming I Thrashing I Direct map vs set associativity
  • 23. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Memory Nodes, Zones, Frames
  • 24. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Boot time memory management
  • 25. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Flat memory model
  • 26. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Discontiguous memory model
  • 27. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Sparse memory model
  • 28. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Memblock
  • 29. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Memblock
  • 30. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Mips memblock
  • 31. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Bootmem
  • 32. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Buddy allocator
  • 33. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END SLOB
  • 34. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END SLAB
  • 35. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END SLAB
  • 36. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END SLUB
  • 37. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END SLUB debug
  • 38. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END SLUB debug
  • 39. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END SLUB debug
  • 40. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END SLUB debug
  • 41. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END malloc chank
  • 42. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END malloc buddy
  • 43. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END thread local storage descriptor
  • 44. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Software setup I (1) - architecture defined register point on TCB start I (2) - first TCB entry is a pointer on Dynamic Thread Vector DTV I (3) - TCP Thread Control Block I (4) - TLS Thread Local Storage I (5) - Static TLS I (6) - Dynamic TLS Static TLS blocks are memory blocks for thread-local variables for modules or dynamically loaded libraries that load in memory by dynamic linker during the main program load. Dynamic TLS blocks are memory blocks for thread-local variables for modules that load in runtime by dlopen() syscall. Static TLS module number 1 is always main program executable region for own thread-local variables.
  • 45. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END thread local storage
  • 46. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END END Questions?
  • 47. Yet another talk about basics in Linux Memory Vasyl Gomonovych Physical Memory Overview Memory Management Unit Memory Nodes, Zones, Frames Boot time memory management Physical memory allocation SLOB SLAB SLUB Userspace allocator END Links I What Every Programmer Should Know About Memory I The Linux Virtual Memory Manager I Carnegie Mellon Computer Architecture I ELF Handling For Thread-Local Storage I elixir.bootlin.com