책/혼공컴운

[혼공컴운] 5주차 - Chapter 12 ~ 13

jylee3 2025. 2. 18. 22:16

Chapter 12. 프로세스 동기화

12-1. 동기화란

  • 프로세스 동기화 : 프로세스들 사이의 수행시기를 맞추는 것
    • 실행 순서 제어 : 프로세스를 올바른 순서대로 실행하기
    • 상호 배제 : 동시에 접근해서는 안 되는 자원에 하나의 프로세스만 접근하게 하기
  • 임계 구역 : 동시에 실행하면 문제가 발생하는 자원에 접근하는 코드 영역
  • 레이스 컨디션 : 여러 프로세스가 동시 다발적으로 임계 구역의 코드를 실행하여 문제가 발생하는 경우
  • 임계 구역 3가지 원칙
    • 상호 배제
    • 진행
    • 유한 대기

12-2. 동기화 기법

  • 뮤텍스 락 : 상호 배제를 위한 동기화 도구
    • 바쁜 대기(busy wait)
  • 세마포 : 공유 자원이 여러개 있는 상황에도 적용이 가능한 동기화 도구
  • 모니터 : 세마포에 비해 사용자가 사용하기 편리한 동기화 도구로 조건변수를 사용한다.

Chapter 13. 교착 상태

13-1. 교착 상태란

  • 교착 상태 : 일어나지 않을 사건을 무한히 대기하는 현상
  • 식사하는 철학자 문제 : 교착 상태의 발생을 보여주는 예시
  • 자원 할당 그래프
  • 교착 상태 발생 조건
    • 상호 배제
    • 점유와 대기
    • 비선점
    • 원형 대기

13-2. 교착 상태 해결 방법

  • 교착 상태 예방
  • 교착 상태 회피
  • 교착 상태 검출 후 회복

확인 문제

1 .뮤텍스 락과 세마포에 대한 설명으로 옳지 않은 것을 고르세요.

정답 : 4. 세마포를 이용하면 반드시 바쁜 대기를 해야 합니다.