Virtual Memory


## Demand paging = virtual memory
### Motive : In any hardware, same code(address) should have same data (memory management by maintaining logical semantic)
virtual address: logical address
**Concept : separating of user logical memory from physical memory**
> - Symbolic Address : access variable by name
> - address binding : variable mapping to address and physical memory when compile
**Insight : program do not need all of their code and data at once, so we can separate (but of course have overhead)**
> - Implementation : demand paging
**effect : VM enables program to execute without requiring their entire address space to be resident in physical memory. isolate each process's memory, enable share files and address spaces.**
### Virtual Memory Notion
|Title|
|:-:|
|[Page Table](https://texonom.com/page-table-ffbce6c10d9a4a8993bd0d809f4a4249)|
|[Segmentation Fault](https://texonom.com/segmentation-fault-b1008afd3e3a4117a92c978ba3dc0c14)|
|[Page Replacement](https://texonom.com/page-replacement-936ec615a0554950bc1ab233fb67434f)|
|[page size](https://texonom.com/page-size-c50803e5e52b492c847de02404f0be36)|
|[TLB reach](https://texonom.com/tlb-reach-afd1dceecb9542c086eab1d89b938824)|
|[Swapping](https://texonom.com/swapping-98903f7a115e48808b17fc418468c8e3)|
|[Page fault handler](https://texonom.com/page-fault-handler-b4d166a24a7740a9bc153f80701a03bc)|
|[Virtual Memory Thrashing](https://texonom.com/virtual-memory-thrashing-f57fa2a2a76244278cca8ad66badd63f)|
|[i/o interlock](https://texonom.com/io-interlock-458727109a584d01b1087036dd6922bc)|
|[Pages Arguments](https://texonom.com/pages-arguments-287308a9ec104a0eb0c4e01b157c8831)|
|[TLB (Translation Lookaside Buffer)](https://texonom.com/tlb-translation-lookaside-buffer-fd5ffc7e77c44f57a744915cc426c27e)|


### Virtual Memory Notion Usages
|Title|
|:-:|
|[Linux Paging](https://texonom.com/linux-paging-dddeb1bb20e64c67bf7d38ae744e625c)|
|[COW(copy-on-write)](https://texonom.com/cowcopy-on-write-b41107af21f04feb923f02eeaf677017)|
|[Memory-Mapped Files](https://texonom.com/memory-mapped-files-09442c8a229e475083829ddf52eca697)|



> [8강. 메모리 관리](https://marlinbar.tistory.com/68?category=300896)





