Memory


title: 2025-09-08 author: 강병호 date: 2025-09-08 category: TIL/강병호/2025/09 layout: post (자유) —

메모리 연속 할당 방식: First-Fit, Best-Fit, Worst-Fit 운영체제에서 주기억장치(RAM)에 프로세스를 할당하는 연속 할당 방식에는 크게 세 가지가 있습니다. 이는 메모리의 빈 공간(가용 공간, Hole)을 어떻게 활용할 것인지에 대한 전략입니다.

  1. 최초 적합 (First-Fit)
    • 최초 적합은 운영체제가 메모리의 처음부터 검색하여, 들어갈 프로세스의 크기보다 크거나 같은 공간을 가장 먼저 발견하면 즉시 할당하는 방식입니다.
  • 작동 방식: 가용 공간 목록의 첫 번째부터 순서대로 탐색하다가, 필요한 공간보다 큰 첫 번째 분할 영역에 프로세스를 배치합니다.

  • 장점: 검색 시간이 짧아 매우 빠르고 간단하게 구현할 수 있습니다.

  • 단점: 상대적으로 큰 가용 공간의 앞부분에 작은 프로세스가 할당되면, 그 뒤에 잘게 쪼개진 작은 공간(외부 단편화)이 많이 발생할 수 있습니다.

  • 예시: 100KB 크기의 프로세스를 할당해야 하고, 메모리에 50KB, 200KB, 150KB의 가용 공간이 순서대로 있다면, 200KB 공간을 발견하는 즉시 할당합니다.

  1. 최적 적합 (Best-Fit) 최적 적합은 할당될 프로세스의 크기와 가장 비슷한 크기의 가용 공간을 찾아 할당하는 방식입니다.
  • 작동 방식: 전체 가용 공간 목록을 모두 탐색한 후, 프로세스 크기보다 크면서 그 차이가 가장 작은 공간에 할당합니다.

  • 장점: 프로세스에 딱 맞는 공간을 찾아주므로, 할당 후 남는 공간을 최소화하여 메모리 낭비를 줄일 수 있습니다.

  • 단점: 모든 가용 공간을 탐색해야 하므로 검색 시간이 오래 걸립니다. 또한, 할당 후 아주 작은 크기의 쓸모없는 공간들이 많이 생겨 외부 단편화를 악화시킬 수 있습니다.

  • 예시: 100KB 크기의 프로세스를 할당해야 하고, 50KB, 200KB, 105KB의 가용 공간이 있다면, 105KB 공간에 할당하여 5KB의 아주 작은 조각만 남깁니다.

  1. 최악 적합 (Worst-Fit) 최악 적합은 최적 적합과 반대로, 할당될 프로세스를 담을 수 있는 가용 공간 중 가장 큰 공간에 할당하는 방식입니다.
  • 작동 방식: 전체 가용 공간 목록을 모두 탐색하여 가장 큰 공간에 프로세스를 배치합니다.

  • 장점: 큰 공간에 할당하고 남은 공간 역시 비교적 크기가 크기 때문에, 추후에 다른 중간 크기의 프로세스가 들어갈 가능성을 높여줍니다.

  • 단점: 항상 가장 큰 공간을 사용하므로, 정작 큰 프로세스가 필요할 때 할당할 공간이 없을 수 있습니다. 또한, 전체를 탐색해야 하므로 검색 시간이 깁니다.

  • 예시: 100KB 크기의 프로세스를 할당해야 하고, 50KB, 200KB, 150KB의 가용 공간이 있다면, 가장 큰 200KB 공간에 할당하고 100KB의 비교적 큰 가용 공간을 남깁니다.

results matching ""

    No results matching ""