728x90
반응형

DEADLOCK 3

교착상태, Deadlock

정의 일련의 프로세스들이 서로가 가진 자원을 기다리며 blocking된 상태 동기화와 관련이 깊은 것이다. Deadlock은 결국 서로의 Event를 기다리면서 무한하게 대기하는 상태를 말한다. **여기서 Event는 자원의 할당과 해제를 의미한다. 발생하는 이유 4가지가 있다. 1. Mutual Exclusion, 상호 배제 매 순간 하나의 프로세스만 자원을 사용 가능 A자원이 B자원 점유와 상관없이 자원을 쓸 수 있다면 당연히 무한 대기 상태는 나오지 않을 것이다. 2. No Preemption, 비선점 프로세스는 자원을 스스로 내어놓는 것만 허용된다. -> 빼앗기지 않는다. 자원을 빼앗을 수 있다면 당연히 deadlock은 나오지 않았다. 3. Hold and Wait, 점유 대기 자원을 가진 프로..

CS Interview 2021.11.01

Dining philosopher problem,식사하는 철학자 문제 [운영체제]

[컴퓨터(Computer Science)/운영체제(Operation System)] - 동기화, 세마포 : Synchronization, Semaphores [운영체제] [컴퓨터(Computer Science)/운영체제(Operation System)] - 동기화, 모니터 : Synchronization, Monitor [운영체제] 세마포나 모니터에 대한 사전 지식을 바탕으로 설명한다. 유명한 문제인데 컴퓨터랑 많이 결부지어서 언급되고는 한다. CPU의 병행 제어 문제 중의 하나로 중요하기 때문이다. 설명해보자면 우선 5명의 철학자들이 둘러앉아 있고 생각한다. 원형 테이블을 공유하며, 테이블 중앙에는 밥이 있다. 또한 철학자들은 서로 상호 대화, 행동 일절 금지이다. 만약 배고파진다면 자신의 왼쪽에 있는..

Deadlock, 교착상태란? [운영체제]

꼬리 물기해서 망한 도로의 사진이다. 이제 이 도로는 망했다. 절대 나갈 수 없다. 꼬리물기는 나쁜 것이다 빨간 불 되면 멈춰야 서로 좋다. 컴퓨터에서도 이런 현상이 일어난다는데 교착상태, deadlock이다. 알아보자 동기화에 대해 알고 있다는 가정 하에 설명한다. [컴퓨터(Computer Science)/운영체제(Operation System)] - 프로세스에서의 동기화 (Process Synchronization) [운영체제] 앞의 동기화에서 이미 알아본 현상이다. 서로의 Event를 기다리며 무한히 대기하는 상태를 말한다. **Event란 자원의 할당과 해제를 의미한다. P0는 B자원을 기다리며 A를 점유하고 P1는 A자원을 기다리며 B를 점유하고 누구하나가 자신의 자원을 내놓지 않는 한 무한 대..

728x90
반응형