Synchronization Tool - gon2gon2/pintos-kaist GitHub Wiki

์ปดํ“จํ„ฐ์‹œ์Šคํ…œ์€ ์—ฌ๋Ÿฌ๊ฐœ์˜ ์Šค๋ ˆ๋“œ๊ฐ€ ๋™์‹œ์„ฑ์„ ๊ฐ–๊ณ , ํ˜น์€ ๋ณ‘๋ ฌ์ ์œผ๋กœ ์‹คํ–‰๋œ๋‹ค. Synchronization Tool์€ Race condition์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ๊ณต์œ  ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ ์ œ์–ดํ•˜๋Š” ๋„๊ตฌ๋‹ค.

Objectives

  • Describe the critical-section problem and illustrate a race condition
  • Illustrate hardware solutions to the ciritcal-section problem using memory barriers, compare-and-swap operations, and atomic variables.
  • Demonstrate how mutex locks, semaphores , monitors, and condition variables can be used to solve the critical-section problem.
  • Evaluate tools that solve the critical-section problem in low- moderate-, and high-contention scenarios.