process synchronization and mutual exclusion - 2

Jeong seulho·2023년 1월 24일
0

운영체제

목록 보기
10/35

📌mutual exclusion SW solutions

📖Dekker's algorithm

  • 프로세스가 2개일때 ME의 조건을 만족하는 최초의 알고리즘

📖Peterson's algorithm

  • 마찬가지로 프로세스 2개의 ME를 보장하는 비교적 간단한 알고리즘

📖Dijkstra's algorithm

  • dijkstra 알고리즘의 flag[]값에 따른 의미
    - 값이 1일때 idle : 프로세스가 임계 지역 진입을 시도하고 있지 않음
    - 값이 2일때 want-in : 프로세스의 임계 지역 진입 시도 1단계임
    - 값이 3일때 in-CS : 프로세스의 임계 지역 진입 시도 2단계 및 임계 지역 내임

🚨SW solution 문제점

  • 속도가 느림
  • 구현이 복잡
  • ME primitive 실행중 preemption 발생가능(machine instructor가 아니므로)
    • 공유 데이터 수정중 인터럽트 억제로 해결가능 단, 이또한 overhead
  • busy waiting : 대기하면서 루프문을 계속 도는 것(비효율적임)

0개의 댓글