
운영체제
Memory Management메모리 관리
메모리 관리(Memory Management)는 운영체제가 프로세스에 메모리를 할당하고 회수하는 기능이다. 메모리 낭비를 줄이고 여러 프로세스가 안전하게 메모리를 사용할 수 있도록 한다.
메모리 할당 방식
정적 할당 (Static)
동적 할당 (Dynamic)
메모리 단편화
| 종류 | 설명 | 해결 |
|---|---|---|
| 외부 단편화 | 전체 여유 공간은 있지만 연속 공간 부족 | 압축(Compaction), 페이징 |
| 내부 단편화 | 할당된 공간이 실제 사용보다 큼 | 슬랩 할당자, 크기 클래스 |
힙 메모리 할당 알고리즘
| 알고리즘 | 설명 |
|---|---|
| First Fit | 첫 번째로 찾은 충분한 공간 사용 |
| Best Fit | 가장 딱 맞는 공간 사용 |
| Buddy System | 2의 거듭제곱 단위로 분할·병합 |
메모리 누수 (Memory Leak)
도구: Valgrind(C/C++), 언어 내장 GC(Java, Python)
관련 개념
참고문헌
- •Silberschatz et al. Operating System Concepts — Chapter 9
