반응형 교착상태2 [운영체제] OS의 동기화(Synchronization) 개념과 기법 종류 (lock, semaphore, deadlock, condition variables, monitor) - 락, 세마포어, 교착상태, 모니터 운영체제 Synchronization운영체제에서 Synchronization은 프로세스 간 자원 접근을 관리하고 일관성을 유지하기 위한 중요한 메커니즘이다. 여러 프로세스가 동시에 실행될 때 공유 자원에 대한 접근을 제어함으로써 데이터 무결성을 보장한다. Background프로세스는 동시에 실행될 수 있으며(concurrently), 언제든지 중단될 수 있어 부분적으로만 실행이 완료될 수 있다. 공유 데이터에 대한 동시 접근은 데이터 불일치를 초래할 수 있다. 데이터 일관성을 유지하기 위해서는 협력하는 프로세스들의 순차적 실행을 보장하는 메커니즘이 필요하다. 문제 예시로, 모든 버퍼를 채우는 생산자-소비자 문제의 해결책을 제공하고자 한다. 이를 위해 가득 찬 버퍼의 수를 추적하는 정수형 counter를 .. 2025. 5. 10. [C언어] Deadlock(교착상태) 원인과 해결법 Issues in Multithread app (DeadLock)멀티스레드 환경에서 나올수 있는 문제들 : 교착상태 Dining-Philosophers Problem철학자-젓가락 문제는 멀티스레딩 환경에서 데드락(Deadlock)을 설명하기 위해 자주 사용되는 고전적인 문제이다.문제 설명:철학자는 생각과 식사 중 하나만 할 수 있다.식사를 하기 위해서는 양쪽 젓가락 두 개를 들어야 한다.젓가락은 철학자와 이웃 사이에서 공유된다.한 철학자가 들고 있는 젓가락은 다른 철학자가 사용할 수 없다.식사를 마치면 철학자는 두 젓가락을 내려놓는다.Deadlock데드락이란 서로 다른 스레드(또는 프로세스)가 자원을 점유한 상태에서 서로의 자원을 기다리며 무한정 대기하는 상황을 말한다.Deadlock이 발생하는 이유:H.. 2025. 1. 28. 이전 1 다음