본문 바로가기

비선점3

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