Deadlock1 [OS] 교착상태 (Deadlock) 교착상태(Deadlock)란? 정상적인 시스템에서 프로세스는 요청 → 사용 → 방출 순서로 자원을 사용한다. 요청: 프로세스는 자원을 요청한다. 요청이 즉시 처리되지 않는 경우(ex. 다른 프로세스가 해당 자원을 사용 중인 경우) 프로세스는 자원을 얻을 때까지 대기해야 한다. 사용: 자원에 대한 작업을 실행한다. 방출: 자원을 방출한다. 자원의 요청과 방출은 시스템 콜이다. 예시로는 디바이스의 request()와 release(), 파일의 open() 과 close(), 메모리의 allocate()와 free() 등이 있다. OS가 관리하지 않는 자원의 요청과 방출은 세마포어에 대한 wait() & signal() 또는 뮤텍스 락의 획득과 방출을 통해서 이루어질 수 있다. 커널이 관리하는 자원을 프로세스.. 2021. 7. 7. 이전 1 다음