만약 메모리에 많은 수의 프로세스가 적재되어 프로세스 당 보유하고 있는 메모리량이 극도로 적어지게 되면 CPU 수행에 당장 필요한 프로세스의 주소 공간조차도 메모리에 올려놓기 어려운 상황이 발생하게 된다. 그렇게 되면 디스크 I/O가 수시로 발생하게 되어 시스템의 성능이 심각하게 저하될 수 있다.

이런 경우 메모리에 올라와 있는 프로세스 중 일부로부터 메모리를 통째로 빼앗아 그 내용을 디스크의 swap 영역에 저장해 둔다. 이와 같은 행위를 **스왑 아웃(swap out)**이라고 한다.

디스크로 스왑 아웃시켜야 하는 경우 봉쇄 상태에 있는 프로세스들을 첫 번째로 스왑 아웃 시킵니다. 이유는 봉쇄 상태의 프로세스들은 당장 CPU를 획득할 가능성이 없기 때문이다.

봉쇄 상태의 프로세스들을 스왑 아웃시켜도 문제가 해결되지 않는 경우 중기 스케줄러는 타이머 인터럽트가 발생해 Ready Queue로 이동하는 프로세스를 추가적으로 스왑 아웃 시킨다. 중기 스케줄러는 이러한 방식으로 장기 스케줄러와 마찬가지로 메모리에 올라와 있는 프로세스의 수를 조절하는 역할을 한다.

중기 스케줄러의 등장으로 프로세스의 상태에는 중지(suspended, stopped) 상태가 추가 되었으며 중지 상태의 프로세스는 메모리를 통째로 빼앗기고 디스크로 스왑 아웃된다. 중지 상태는 중지 준비 상태와 봉쇄 중지 상태가 있다.

봉쇄 중지 상태이던 프로세스가 봉쇄 되었던 조건을 만족하게 되면 이 프로세스의 상태는 중지 준비 상태로 바뀌게 된다 중지 상태에 있는 프로세스들은 중지 준비 상태이든 봉쇄 중지 상태이든 관계없이 메모리를 조금도 보유하지 않고 디스크에 통째로 스왑 아웃된 상태로 존재하게 된다.