Search

프로세스 스와핑

class
운영체제 심화
상태
완료
날짜
목차

프로세스 스와핑이란?

프로세스 스와핑은 운영체제에서 메모리 관리 기법 중 하나로, 한정된 물리적 메모리를 효율적으로 사용하기 위해 메모리에 적재된 프로세스를 디스크로 이동시키고, 필요할 때 다시 메모리로 불러오는 작업을 말합니다.
프로세스 스와핑은 모바일 환경에서는 일반적으로 발생하지 않습니다. 대신 물리적 메모리가 부족할 경우, 프로세스 우선순위에 따라 우선순위가 낮은 프로세스를 종료시킵니다. aos, ios 프로세스 회수 중요도

주요 개념

목적
메모리 부족 문제를 해결하기 위해.
실행 중인 프로세스의 수를 늘려 CPU 활용도를 극대화
작동 방식
실행 중이지 않은 프로세스를 디스크의 스왑 공간으로 이동
메모리가 필요하면 디스크에서 다시 불러옴
스왑 공간
디스크에 특정 영역을 할당하여, 메모리에서 내려온 프로세스를 임시로 저장하는 공간
조건
스와핑은 CPU와 디스크 I/O를 사용하기 때문에 상대적으로 느립니다
자주 발생하면 성능 저하를 초래하는 스래싱문제가 발생할 수 있음

프로세스 스와핑의 단계

1.
메모리 부족 감지
운영체제가 물리적 메모리가 부족하다고 판단
2.
프로세스 선택
메모리에서 내려보낼 프로세스를 선택
보통 최소 우선순위 프로세스 또는 오래 실행되지 않은 프로세스를 선택
3.
디스크로 이동
선택된 프로세스를 디스크의 스왑 공간으로 이동
이동 시 현재 상태(레지스터, 변수 등)를 저장
4.
메모리 공간 확보
스왑된 프로세스가 차지하던 메모리 공간을 다른 프로세스가 사용
5.
재진입
스왑된 프로세스가 다시 필요하면 디스크에서 메모리로 복원