SSAFY-CSStudy / OS

SSAFY CS 운영체제 스터디입니다.
12 stars 0 forks source link

[8. 메모리관리1] Swapping이란 무엇인가? #34

Open Yunhee000 opened 6 months ago

Yunhee000 commented 6 months ago

1Depth

Question

Swapping이란 무엇인가?

Answer swapping이란 메모리의 관리를 위해 사용되는 기법으로 CPU 할당 시간이 끝난 프로세스의 메모리를 보조기억장치(하드디스크)로 보내고 다른 프로세스를 메모리로 불러 들이는 것을 의미한다.
* swap-in : 주기억장치로 불러오는 과정 * swap-out : 보조기억장치로 내보내는 과정

2Depth

Question

swapping을 하면서 발생하는 문제점이 뭔가?

Answer 프로세스들이 메모리에 적재되고 제거되는 일이 반복하면서 메모리 사이에 사용하지 못할 만큼의 작은 공간들이 늘어나는 단편화 문제가 생긴다.

3Depth

Question

메모리 단편화에 대해 설명해주세요.

Answer 메모리 단편화란 메모리의 빈 공간 또는 자료가 여러 개의 조각으로 나뉘는 현상을 말한다.
할당된 메모리를 해제하면서 빈 공간이 되고 이 공간보다 큰 메모리는 사용할 수 없어 이러한 공간이 쌓이면서 메모리 공간이 남았음에도 불구하고 사용할 수 없는 메모리가 발생한다. * Internal fragmentation (내부단편화) * 분할된 영역이 할당된 프로그램의 크기보다 커서 사용되지 않고 남아있는 빈 공간을 말한다. * 내부 단편화는 페이징에서 발생한다. * External fragmentation (외부단편화) * 분할된 영역이 할당될 프로그램의 크기보다 작아서 모두 빈 공간으로 남아있는 전체 영역을 말한다. * 외부 단편화는 세그먼테이션에서 발생한다.


Additional Explain

dahyunko commented 6 months ago

contiguous allocation

paging은 외부 단편화 문제 해결