비선점 2

경쟁상태, 교착상태, 라이브락 (Race Condition, Deadlock, Livelock)

경쟁상태 (Race Condition)둘 이상의 입력이나 조작이 동시에 일어나 의도하지 않은 결과를 가져오는 경우를 말합니다.- 파일 또는 변수와 같은 공유 자원을 접근하는 하나 또는 그 이상의 프로세스들의 다중 접근이 제대로 제어되지 않은 것을 말합니다.- 프로세스들 끼리 하나의 자원을 갖기 위해 싸우는 것, 하나의 자원을 동시에 요청 라이브락 (Livelock)한 프로세스가 이미 자원을 점유한 상태에서 다른 프로세스가 그 자원을 사용하기 위해 무한정 대기상태에 빠지는 것을 라이브락이라 합니다.- 지극히 정상적인 동작이지만 분명 문제가 있는 동작입니다. 교착상태 (DeadLock)프로세스들이 더 이상 진행을 못하고 영구적으로 블록되어 있는 상태로, 시스템 자원에 대한 경쟁 도중에 발생할 수도 있고 프로..

Basics/OS 2014.11.11

CPU 스케줄링 알고리즘

CPU 스케줄링요즘과 같은 다중프로그래밍 환경에서 가장 중요한 부분은 스케줄링이라고 할 수 있습니다.- "응답시간과 처리량, 효율성을 증대시키기 위해 CPU가 다음에 실행할 프로세스를 선택하는 것"이라고 할 수 있습니다. 선점과 비선점선택함수라고도 하는데 다음번 실행을 위해 준비 큐에서 대기중인 프로세스 하나를 고를 때 사용하는 알고리즘을 이야기합니다. 비선점 모드- 프로세스가 일단 실행 상태에 진입하면 종료되거나 자발적으로 CPU를 놓을 때 까지는 CPU를 빼앗기지 않습니다.- 자발적으로 CPU를 놓는다는 것은 프로세스가 종료되거나 입출력 요구 및 시스템 서비스 호출 등으로 인해 스스로 블록되는 현상을 말합니다.- 모든 프로세스에게 공정하고 응답시간의 예측이 가능합니다.- 짧은 프로세스가 작업시간이 긴..

Basics/OS 2014.11.07