각 작업에 할당할 수 있는 메모리 공간이 있는데 프로세스가 해당 메모리 공간보다 작을 때 ( 위 그림에서는 10M의 공간이 있는데 7M의 프로세스가 들어온다는 가정) 메모리 공간이 남는다.
이런 남는 공간들은 대부분 공간이 작아 다른 프로세스가 들어가지 못해서 메모리 낭비가 발생
메모리에 남아있는 공간은 10M + 10M (= 20M)인데 메모리 할당이 필요한 프로세스는 15M을 필요로 한다. 즉, 작업보다 많은 공간이 남아 있더라도 실제로 그 작업을 받아 들이지 못하는 경우
참고자료 : https://nevertheless-intheworld.tistory.com/8
개념 : 멀티프로세스 환경에서 CPU가 어떤 하나의 프로세스를 실행하고 있는 상태에서 인터럽트 요청에 의해 다음 우선 순위의 프로세스가 실행되어야 할 때 현재 진행하고 있는 Task(Process, Thread)의 상태를 저장하고 다음 진행할 Task의 상태 값을 읽어 프로세스를 교체하는 작업
Task의 대부분 정보는 Register에 저장되고 PCB(Process Control Block)로 관리되고 있습니다.
현재 실행하고 있는 Task의 PCB 정보를 저장하게 됩니다. (Process Stack, Ready Queue)
다음 실행할 Task의 PCB 정보를 읽어 Register에 적재하고 CPU가 이전에 진행했던 과정을 연속적으로 수행을 할 수 있습니다.