프로세스들은 수행의 동기화(synchronize)를 위해 몇몇 변수를 공유할 수 있다어떤 프로세스가 critical section을 수행 중이면 다른 모든 프로세스는 그 critical section에 접근하면 안된다.아무도 critical section에 있지 않은
Semaphores 추상자료형 : object + operation Semaphore S 변수 S는 정수값 (자원의 개수) 두 가지 atomic 연산에 의해서만 접근 가능 Critical Section에 Semaphores 사용 busy-wait는 효율적이지 못함
철학자들은 둥근 테이블에 앉아있으며, 가운데에는 아주 큰 스파게티 그릇이 놓여 있습니다.한 명 이상의 철학자가 둥근 테이블에 앉아 다음과 같은 세 행동 중 하나를 취합니다 : 먹기, 생각하기, 잠자기철학자가 밥을 먹는 도중에는, 생각하거나 잠을 자지 않습니다. 마찬가지
Philosophers > 원탁에 앉은 철학자들이 양쪽에 놓인 2개의 포크를 가지고 식사를 해야하는 상황에서, 옆자리의 철학자와 동시에 식사하지 않고 번갈아 가면서 식사해야 하며 이때 발생할 수 있는 문제들을 다루는 과제 = 복수의 프로세스 및 스레드가 동시 동작할