[운영체제] 스와핑 (Swapping)

강민혁·2023년 3월 27일
0

기술면접 | 운영체제

목록 보기
22/32

스와핑 (Swapping)에 대해 설명하세요

Keyword

메모리, 보조기억장치, 메모리 공간 크기, 스왑 영역, 스왑 아웃, 스왑 인


Script

swapping은 메모리에서 사용되지 않는 일부 프로세스를 보조기억장치로 내보내고, 실행할 프로세스를 메모리에 적재하는 메모리 관리 기법입니다. swapping을 통해, 프로세스들이 요구하는 메모리 공간의 크기가 실제 메모리 크기보다 크더라도 프로세스들을 동시에 실행할 수 있게 됩니다.

이때, 메모리에서 스왑 영역(swap space, backing store)으로 옮겨지는 행위를 스왑 아웃(swap-out), 반대로 스왑 영역에 있던 프로세스가 메모리로 옮겨오는 것을 스왑 인(swap-in)이라고 합니다.


Additional

swapping의 배경

메모리에 적재된 프로세스 중에는 현재 실행되지 않는 프로세스가 있을 수 있다. 그런데, 메모리의 크기가 충분하지 않아 가득차 있는 경우에, 새로운 프로그램을 메모리에 적재할 수 없다. 그래서, 현재 사용되지 않는 프로세스를 임시로 보조기억장치의 스왑 영역으로 강제로 빼고, 그렇게 생긴 빈 공간에 다른 프로세스를 적재하는 방식이 필요해진 것이다. 결국, 메모리 공간 부족 문제를 해결하기 위해 등장한 방법이다.

standard swapping vs paging swapping

standard swapping은 프로세스 단위로 swapping이 발생한다. 하지만 standard swapping은 현재는 잘 사용되지 않는다. 메모리와 보조기억장치 간에 프로세스 전체를 이동시키는 것이 어렵기 때문에, paging swapping을 사용한다.


Reference

Book - 혼자 공부하는 컴퓨터 구조+운영체제

운영체제에서 스와핑(Swapping)

profile
with programming

0개의 댓글