Swapping

k_bell·2024년 6월 15일
0

운영체제

목록 보기
7/15
post-thumbnail

우리는 이전 포스팅을 통해 paging에 대해서 알아보았다. paging을 통해 파편화 문제를 예방하고 프로세스들을 메모리의 연속된 공간에 할당하지 않을 수 있게 되었다.

하지만 여전히 메모리 용량은 제한적이고 우리가 실행해야 될 프로세스들은 너무나도 많다. 지금부터는 swapping이라는 기법을 통해 제한된 메모리 공간을 최대한 효율적으로 활용할 수 있도록 할 것이다.

backing store는 HDD, SDD 등의 storage를 의미한다.

swapping의 핵심 개념은 실행 중이지 않은 프로세스는 backing store에 backup하자는 것이다.

  • Standard swapping
    : 실행 중이지 않은 프로세스 전체를 backing sote에 swap out하자는 것이다. 하지만 이 방법은 프로세스 전체를 swap in, swap out해야하기 때문에 swap 과정이 매우 비효율적이다. ( high context swith time )

  • Modified version
    : 따라서 swap의 효율을 높이기 위해 최근에는 page 단위로 swap이 이루어진다. 실행하려는 page만 swap in하여 메모리에 로딩시켜 놓는 것이다,

Swapping with Paging

  • Page out
    : move a page from memory to the backing store

  • Page in
    : move a page from the backing store to memory

0개의 댓글

관련 채용 정보