inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

운영체제 공룡책 강의

17. 데드락의 이해: Chapter 8. Deadlocks (Part 1)

Circular Wait를 예방하는 방법에 대한 질문입니다!

해결된 질문

209

컴퓨터공부하자

작성한 질문수 54

0

Circular Wait 을 방지하기 위한 방법과 예시에 조금 헷갈리는 부분이 있어서 확인차원에서 질문드립니다. 제가 이해해한 부분이 맞는지 봐주시면 감사하겠습니다.

 

Circular Wait을 예방하기 위한 방법이란

R={R1, R2 ... Rn}

이러한 모든 자원 R에 대하여

'타입'별로 순서를 지정해서

thread_A{

getLock(R1)

getLock(R2)

}

thread_B{

getLock(R2)

getLock(R1)

}

이렇게 락을 획득하는 순서가 다른 상황이 일어나지 않도록 하는 방법을 말씀하신 건가요?

또 그 방법이 deadlock prevention을 보장하지 않는 이유가 공유자원 타입별로 순서를 정해도 공유자원의 순서가 보장되지 않는 경우가 있기 때문이고요. 그 예로서 transaction을 보여주신거라고 보면 될까요?

제가 이해한 부분이 맞는지 궁금합니다.

동시성 운영체제

답변 1

1

주니온

두번째 질문을 정확하게 이해하기 어렵지만, 이해하신 부분에는 무리가 없습니다.

circular wait을 방지하는 방법은 어차피 아주 복잡한 자원들이 복잡하게 엃혀 있는 현대적 운영체제 모델에서는 거의 사용할 수 없는 모델이므로, 개념적으로 이해하시면 될 것 같습니다.

퀴즈 7번의 답에 대한 질문입니다.

0

554

1

이해하고 있는것이 맞는건지 궁금합니다 ㅠㅠ

0

821

1

타우시간

0

553

1

퀴즈1 1번 질문합니다 !

1

611

1

Page는 Text Data이외에 다른 메모리도 포함하나요?

1

373

0

IPC shared memory 코드

0

520

1

[간단한 질문 ]banker's algorithm 을 linux 에서 실제로 프로세스 관리할때 쓰이나요?

0

402

0

user mode i/o 관련 질문

0

283

1

shared memory 관련해서 질문 드립니다.

0

521

1

교수님 fork()함수에 대해 질문이 있습니다.

0

896

2

process 와 thread

0

375

1

교수님 Docker 로 실습해도 괜찮을까요?

1

867

1

Mac OS에서 Docker 이용하여 Ubuntu 20.04 환경설정 방법 공유

22

3330

2

moniter, condition variable, synchronized에 대해서 궁금한점이 있습니다..

0

675

1

왜 무료인지 이해를 못 하겠네요..

3

433

1

7.1 Classic Problems of Synchronization 질문이 있습니다

0

307

1

공룡책 8판과 10판중

0

611

1

6.3 peterson's solution 질문이 있습니다

0

222

1

08-01 연습문제 8번 질문있습니다!

0

280

0

06. 프로세스간 통신의 실제: Chapter 3. Processes (Part 4) 에 그림 3.16 3.17 실습 오류

0

263

1

안녕하세요 교수님 실습 해봤는데 LINE J가 실행이 됩니다

1

356

1

2강 실습을 위한 개발환경 구축(Windows 10 + WSL 2 + Visual Studio Code)에서 출력오류

0

344

1

아래 질문 관련하여 다시 문의드립니다

0

199

1

Thread & Concurrency (Part 2) 질문드립니다

0

186

1