본문/내용
1. 프로세스의 개념과 상태 변화
프로세스는 실행 중인 프로그램을 의미하는 중요한 개념이다. 이는 메모리 내에서 CPU에 의해 실행되는 프로그램의 인스턴스를 나타냄으로써, 운영체제가 프로그램을 관리하고 실행할 수 있도록 한다. 프로세스는 기본적으로 코드, 데이터, 스택, 힙 등의 구성 요소를 포함하며, 각 프로세스는 고유한 프로세스 식별자(프로세스 ID, PID)를 가진다. 이러한 프로세스는 메모리의 여러 영역에서 작동하며, 운영체제는 이들 프로세스를 효율적으로 관리하기 위해 다양한 상태로 존재하게 된다. 프로세스는 여러 상태 변화를 거친다. 주로 준비 상태, 실행 상태, 대기 상태로 나눌 수 있다. 준비 상태는 프로세스가 실행되기를 기다리는 상태이다. 이 상태에 있는 프로세스는 메모리에 적재되었지만 CPU의 할당을 받지 못한 상태를 나타낸다. 운영체제는 이러한 준비 상태의 프로세스들 중에서 CPU를 할당하여 실행할 프로세스를 결정한다. 이 결정은 스케줄링 알고리즘에 따라 달라지며, 프로세스의 우선순위, 자원 요구량 등이 고려된다. 실행 상태는 프로세스가 실제로 CPU를 가지고 작업을 수행하고 있는 상태이다. 이 상태에서는 프로세스…