반응형
1기가의 메모리가 있다고 가정하자.
1GB |
1. 세그먼트 기법일 때
300MB |
200MB |
100MB 빈공간 |
200MB |
200MB 빈공간 |
300MB의 빈공간이 있으나 띄엄띄엄 있어서 300MB짜리 프로세스를 올릴수가 없다.
이런 상황을
외부 단편화(External Fragmentation) 라고 한다.
2. 페이징 기법일 때
메모리를 100MB짜리 페이지로 나눠서 사용한다고 가정하자 350MB의 프로세스를 메모리에 올리려고 한다.
그럼 아래와 같이 하나의 페이지는 100MB를 다 쓰지 못하고 50MB만 사용하게 될 것이다.
100MB |
100MB |
100MB 중 50MB사용 |
100MB 빈공간 |
100MB 빈공간 |
이렇게 페이지 내부에서 공간이 허비되는 것이 내부 단편화(Internal Fragmentation) 이라고 한다.
실제론 페이지를 저렇게 100MB씩 나누지 않는다. 4Kb정도의 작은 용량으로 페이지를 구성하기 때문에 내부단편화는 그 낭비가 미미하다.
3. 결론
페이징 기법이 더 현대적이고 더 합리적인 방식이고 현재 대부분 페이징 기법을 쓰고 있으며
외부 단편화가 내부 단편화보다 훨씬 심각한 문제이다.
반응형
'IT 이론 > 운영체제' 카테고리의 다른 글
윈도우와 리눅스(유닉스 계열)의 파일시스템 (0) | 2017.07.08 |
---|---|
윈도우 공유폴더 보안 (IPC$의 Null Session Share 취약점) (0) | 2017.07.04 |
NTFS 파일시스템과 MFT레코드 (0) | 2017.07.04 |
캐시 메모리 매핑 기법 (2) | 2017.06.25 |
CPU 스케줄링 알고리즘 (6) | 2017.05.29 |
댓글