cpu는 프로세스가 여러개 일때 cpu 스케줄링을 통해서 프로세스를 관리하는데 이때 각 프로세스가 어떤 것인지 알아야 관리가 가능하다.
따라서 각 프로세스의 특징을 담은 메타 데이터가 필요하고, 이러한 메타 데이터들을 저장하는 곳을 PCB
라고 한다.
cpu에서 프로세스 교체가 이뤄질 때, 앞으로 다시 프로세스를 수행하기 위해서 프로세스에 대한 정보를 PCB에 저장해둔다.
등등등..
프로그램 실행 → 프로세스 생성 → 프로세스 주소 공간에 (데이터, 스택, 코드) 생성 → 이 프로세스의 메타데이터들이 담긴 PCB 생성
생성된 PCB는 linked list로 관리되며 프로세스가 생성되면 해당 프로세스의 pcb가 생성되어 list에 추가되고 삭제하면 역시 사라진다.
수행중인 프로세스를 변경할 때, cpu의 레지스터 정보가 변경되는 것
즉, cpu가 이전 프로세스의 상태를 PCB에 저장(보관)하고, 새로 실행할 프로세스의 상태를 PCB에서 읽어 레지스터에 적재하는 과정