External fragmentation

    [운영체제] Contiguous Allocation의 문제점 - External Fragmentation(외부단편화)

    목차 💥 Contiguous allocation의 문제점 🤔 External Fragmentation이란? 👀 Compaction(압축)을 활용한 외부 단편화 해결 💥 Contiguous allocation의 문제점 이전 포스팅에서 Contiguous allocation은 프로세스를 메모리에 분할해서 적재하지 않고 한 번에 통째로 적재하는 방법론이라고 설명했습니다. Contiguous allocation은 CPU의 MMU(Memory Management Unit)가 논리 주소를 물리 주소로 translation 함에 있어 단순함을 제공해준다는 장점이 있었습니다. 그러나, 단지 단순함때문에 값비싼 HW자원 중 하나인 Memory를 낭비하는 문제가 발생했습니다. 🤔 External Fragmentation이..

    [운영체제] Contiguous Allocation과 MMU(Memory Management Unit)

    목차 🤔 MMU(Memory Management Unit)란? 💙 연속 할당(Contiguous allocation) 💜 Memory protection fault 🤔 MMU(Memory Management Unit)란? MMU(Memory Management Unit)는 CPU 내부에 탑재되어 논리 주소(Logical Address)를 실제 메모리의 물리 주소(Physical Address)로 변환해주는 하드웨어입니다. 이전 포스팅에 공부했듯이, Execution time binding은 실제로 명령어를 실행하는 시점에 주소 변환을 하는 Address binding 기법입니다. 위 그림에서는 0x198000번지에 저장되어 있는 data에 10을 저장하기 위해 store #98000, 10 명령어를 사용..