(+) Summary

Jin Hur·2021년 9월 27일
0

Concurrency(병행성) 관련 용어

  • 공유 데이터(shared data), 경쟁 상태(race condition), mutual exclusion(상호 배제)
  • Lock before/after critical section(임계구역) 설정 <= mutex 방법 중 하나

Lock implementation

  • H/W + OS Cooperation

    • HW: atomic perations(기계 명령어) => test-and-set 과정을 원자적으로 처리, correctness 향상
    • OS: sleep queue management => polling(spin lock)이 아닌 sleep 방식으로 낭비된느 CPU 타임을 줄임, 성능 향상
  • Spin lock and Sleep Lock: Rule of thumb(경험 법칙, 상황에 맞게 적절히 선택하는 것이 좋음)

    • 짧은 임계구역 -> spin lock (context-switch 오버헤드가 더 큼)
    • 긴 임계구역 -> sleep lock
    • how about hybrid? -> two-phase locks(spin at first, then sleep)

0개의 댓글