Linux Paging

Creator
Created
Created
2019 Nov 5 5:17
Editor
Edited
Edited
2023 Nov 27 7:7

Philosophy : Demand paged virtual memory (architecture independent)

But, architecture-dependent mapping is needed
Linux Paging Notion
 
 
Linux Paging Implementation
  1. read then page fault (segmentation fault) start end area
  1. write code is fault so OS read commision
  1. also fault because because r/w no physical in frame then replacement
notion image
notion image
 
KMA: dynamic memory allocation in head (3gb) by malloc. in kernel (1gb) memory allocation because kernel cannot use malloc
  • contiguous page frame allocator : alloc_pages()
  • noncontiguous page fram allocator : vmalloc()
  • memory object allocators : the slab alloctor
    • kmem_cache_alloc : congifuous allocation of kernel objects
    • kmalloc() : contiguous allocation of arbitrary length up to 128kb
 
 
 
 
 
 

Recommendations