7.1 고전적인 동기화 문제들7.1.1 유한 버퍼 문제 (Bounded-Buffer Problem)생산자와 소비자가 공유 버퍼를 사용하는 문제.버퍼는 제한된 크기를 가지며, 생산자는 항목을 생성하고 버퍼에 추가하며, 소비자는 버퍼에서 항목을 제거해 소비한다.공유 자료구조int n; // 버퍼 크기semaphore mutex = 1; // 상호 배제를 위한 이진 세마포어semaphore empty = n; // 빈 버퍼 슬롯 개수semaphore full = 0; // 꽉 찬 버퍼 슬롯 개수 생산자 프로세스 구조while (true) { produce(); // 항목 생성 wait(empty); // 빈 슬롯 확인 wait(mutex); // 버퍼 접근 제어 add_to..