상세 컨텐츠

본문 제목

혼공컴운 5주차 (동기화, deadlock)

혼공단/컴구운체

by nownow 2025. 2. 18. 21:07

본문

https://www.youtube.com/watch?v=SJ_AqcH1OUQ

 

 

동기화

따로 정리한 포스트와 참고해서 보기 좋은 영상.

https://nownow.tistory.com/247

 

동기화 (mutex, Semaphore, monitor)

동기화의 필요성 멀티스레딩으로 갯수를 세는 상황을 가정해보자.int target=0;을 2개의 스레드에서 50번씩 target++; 즉 값을 1씩 100번 늘리려고 한다.target++;라는 연산을 어셈블리로 생각해보면 1. LO

nownow.tistory.com

https://www.youtube.com/watch?v=gTkvX2Awj6g

 

deadlock

교착상태에 도달할 수 있는 조건

(1)비선점                선점형 스케줄링과 같이 타 프로세스가 사용중인 자원을 뺏어오기가 불가능

(2)순환참조             자원과 자원을 요구하는프로세스, 자원을 사용중인 프로세스가 cycle을 이룰 때

(3)상호배제             여러 프로세스가 자원을 공유해서 사용할 수 없음

(4)hold and wait      한 자원의 lock을 얻고 다른 lock을 얻기 위해 대기한다.

 

교착 상태 예방

4가지 조건 중 하나 이상을 만족할 수 없도록 한다.

 

교착 상태 회피

안전순서열에 의해 프로세스간 자원 할당 순서를 지정한대로 처리하고

안전순서열이 지정되어 시스템이 안전상태로 움직일 때만 자원을 할당한다.

 

교착상태 회복

교착상태 감지시 선점을 통해 자원을 몰아주거나 교착상태가 발생한 프로세스들을 종료.

교착상태를 무시하는 타조알고리즘.

 

기본숙제

p.363 확인문제 1

뮤텍스 락과 세마포에 대한 설명으로 옳지 않은 것

 

(4)세마포를 이용하면 반드시 바쁜 대기를 해야 합니다 (X)

세마포 방식에서는 wait 호출로 대기큐에 있는 프로세스를 signal로 깨우는 형태로 관리된다.

 

관련글 더보기