[운영체제] MMU에 대해 설명해주세요

orca·2023년 12월 2일

CS

목록 보기
11/46

MMU는 메모리를 관리하는 하드웨어입니다. MMU는 상대 주소를 절대 주소로 변환하고, 메모리 내 프로세스에 대해 가져오기, 배치, 재배치를 책임집니다.

MMU의 역할

  • 가져오기 : 프로그램을 메모리로 가져옴
  • 배치 : 프로그램을 메모리에 어떻게 올려 놓을지 결정함
    • 메모리 분할 방식
      • 가변 분할 방식
      • 고정 분할 방식
      • 버디 시스템
  • 재배치 : 메모리가 꽉 찬 경우, 특정 프로세스를 스왑 아웃

단편화

내부 단편화는 메모리 할당 영역과 프로세스의 크기가 같지 않아 공간이 남는 현상입니다. 외부 단편화는 메모리에 프로세스의 크기만큼의 공간이 남아 있지만, 조각 공간으로 나누어져 프로세스에 할당할 수 없는 현상입니다.

  • 저장장치의 빈 공간이 여러개의 조각으로 나누어진 현상
    • 내부 단편화
    • 외부 단편화
  • 시스템에 유발할 수 있는 문제
    • 성능 저하
    • 공간 낭비

가변 분할 방식

  • 연속 할당 기술
    • 프로세스가 한 덩어리로 처리됨
  • 프로세스의 크기만큼 메모리 분할 및 할당
  • 외부 단편화 발생
    • 빈 공간의 관리가 어려움
      ➡️ 작은 조각들이 큰 프로세스 덩어리 사이에 위치해 프로세스 덩어리를 옮겨야 함

고정 분할 방식

  • 비연속 할당 기술
    • 프로세스가 나뉘어 처리됨
  • 정해진 크기만큼 메모리 분할 및 할당
    • 메모리 관리가 편리함
  • 내부 단편화 발생

버디 시스템

  • 프로세스의 크기를 수용할 수 있는 최소의 영역을 찾는 방식
  • 프로세스의 크기에 비례해 메모리 분할 및 할당
  • 내부 단편화에 취약
    • 메모리 한 영역 내부에 조각이 생길 수 있음
  • 외부 단편화 완화
    • 비슷한 크기의 조각끼리 모여 있어 큰 조각으로 만들 수 있음

0개의 댓글