운영체제는 한정된 메모리를 효율적으로 관리하기 위해 다양한 기법을 사용한다.
그중 가장 대표적인 방식이 바로 **Paging(페이징)**과 **Segmentation(세그멘테이션)**이다.
이 두 개념은 정보처리기사, NCS 필기, IT 면접에서도 자주 등장한다.
✅ Paging이란?
Paging은 메모리를 **고정된 크기의 페이지(Page)**로 나누는 방식이다.
프로세스의 논리 주소 공간도 동일한 크기의 페이지로 나뉘며,
물리 메모리는 프레임(Frame)이라는 동일한 크기의 블록으로 구성된다.
📌 주요 특징
- 고정 크기 블록 단위로 분할
- 논리 주소 → 물리 주소 변환 시 페이지 테이블 사용
- 외부 단편화 없음 (단, 내부 단편화 존재 가능)
- 주소 계산이 단순하고 빠름
📚 예시
사용자의 프로그램이 16KB고, 페이지 크기가 4KB일 경우 → 4개의 페이지로 나뉨.
이 페이지들은 물리 메모리의 빈 프레임에 할당된다.
✅ Segmentation이란?
Segmentation은 메모리를 **논리적인 단위(세그먼트)**로 나누는 방식이다.
예를 들어, 코드 영역, 데이터 영역, 스택 영역 등으로 구분할 수 있다.
세그먼트마다 크기가 다르고, 독립적으로 관리된다.
📌 주요 특징
- 가변 크기 논리 단위로 분할
- 세그먼트 테이블 사용
- 외부 단편화 발생 가능
- 사용자 입장에서 직관적이고 논리적
📚 예시
한 프로그램이 코드 8KB, 데이터 12KB, 스택 4KB로 구성되어 있다면
각각 별도 세그먼트로 나뉘어 저장된다.
✅ 비교 요약표
항목 | Paging | Segmentation |
분할 단위 | 고정 크기 (페이지) | 가변 크기 (논리 단위) |
주소 변환 방식 | 페이지 테이블 | 세그먼트 테이블 |
단편화 | 내부 단편화 가능, 외부는 없음 | 외부 단편화 발생 가능 |
사용자 인식 | 시스템 중심 | 사용자 중심, 논리적 구조 |
예시 | 프로그램을 동일 크기 블록으로 나눔 | 프로그램을 코드, 데이터 등으로 나눔 |
✅ 실생활 비유
- Paging: 일정한 크기의 상자에 물건을 잘라 담는 느낌.
공간은 잘 맞지만, 남는 공간(내부 단편화)은 생길 수 있다. - Segmentation: 물건 종류별로 분리해서 상자에 넣는 느낌.
더 직관적이지만, 빈틈(외부 단편화)이 많이 생길 수 있다.
✅ 결론
Paging과 Segmentation은 모두 메모리 관리 기법이지만,
주소를 나누는 방식과 구조적 개념에서 명확한 차이를 가진다.
Paging은 효율성 중심, Segmentation은 논리 구조 중심이다.
운영체제를 제대로 이해하려면 이 차이를 정확히 구분할 수 있어야 한다.
📌 매일 간단히 IT 관련 개념을 익히고 싶다면 구독하세요!👇👇👇
http://www.youtube.com/@itbite_daily
오늘의 IT한입
👋 하루 한 입, 쉽게 배우는 IT & 개발 개념! 프로그래밍, 데이터베이스, 운영체제, 네트워크, 보안, 코딩테스트까지! 취업 준비부터 실무 감각까지 매일 짧고 강력하게 정리해드립니다. 📍 매일
www.youtube.com
'IT개발 > Tech Notes' 카테고리의 다른 글
ACID란? 트랜잭션의 4가지 특성 완벽 이해 (0) | 2025.05.01 |
---|---|
관계 대수와 관계 해석의 차이, SQL과 무슨 관련이 있을까? (0) | 2025.05.01 |
Deadlock(교착 상태) 완전 정리 - 발생 조건과 해결 방법까지 (0) | 2025.04.29 |
운영체제 프로세스 상태 변화 완벽 정리 - Ready, Running, Blocked, Terminated (0) | 2025.04.27 |
RAM vs ROM 완전 정리 - 메모리 차이와 역할 쉽게 이해하기 (0) | 2025.04.27 |
댓글