본문 바로가기

자원 할당2

운영체제 12장 - 프로세스 관리(9) : 교착상태 처리 - 운영체제 12장- 프로세스 관리(9) : 교착상태 처리 - 교착상태는 모든 프로세스들이 필요한 자원을 할당 받지 못해 대기를 하고 있는 상태를 말한다. 프로세스는 실행을 위해 여러 자원이 필요한데 어떤 자원은 갖고 있으나 다른 자원은 할당을 받기 위해 대기해야한다. 하지만 다른 프로세스 역시 다른 자원을 가지려고 대기를 하고 있어 모든 프로세스들이 자원을 할당받지 못한다. 위와 같은 교착상태에 빠지는 필요조건은 상호배타, 보유 및 대기, 비선점, 환형대기가 있다. 이에 대해서는 앞장인 교착상태 장에서 설명하였으니 생략하도록 한다. 또한 이를 자원 할당도로 확인하는 방법을 알아보았다. 교착상태가 발생하면 모든 프로세스가 중지하는 현상이 생기므로 큰 문제가 생긴다. 일반 PC의 경우에는 컴퓨터를 껐다가 켜면.. 2017. 4. 23.
운영체제 11장 - 프로세스 관리(8) : 교착상태(Deadlock) - 운영체제 11장- 프로세스 관리(8) : 교착상태(Deadlock) - 프로세스는 실행을 위해 여러 자원을 필요로 한다. CPU, 메모리, 파일 등등 여러 자원을 사용하여 프로세스가 실행된다. 그런데 어떤 자원은 갖고 있으나 다른 자원을 갖지 못할 경우 대기 상태에 들어가서 기다려야한다. 자원은 한정되어 있는데 여러 프로세스가 같이 동작하는 상황이여서 이러한 상황이 발생하게 된다. 그러므로 운영체제는 이러한 자원을 프로세스들에게 잘 할당을 해주어야한다. 만약 잘 할당을 해주지 못하면 앞의 식사하는 철학자의 문제와 같이 모든 프로세스가 자원을 가지려고 대기하는 교착상태에 빠질 수 있다. 교착상태가 일어나는 필요조건은 4가지가 존재한다. 첫 번째는 상호배타(Mutual exclusion)이다. 상호배타는 동.. 2017. 4. 22.