سوال ۳

سیستم عاملی می‌خواهد دو برنامه‌ی زیر را با هم اجرا کند ولی تنها یک پردازنده در اختیار دارد؛ بنابراین در هر مرحله یکی از برنامه‌ها را انتخاب کرده و نخستین خط اجرا نشده‌ی آن را اجرا می کند. پیش از شروع اجرای دو برنامه، مقدار متغیر $a$ برابر صفر است. در چند ترتیب مختلف از اجرای خطوط دو برنامه، مقدار متغیر $a$ در انتها برابر دو خواهد شد؟

برنامه‌ی اول:

برنامه‌ی دوم:

  1. ۲
  2. ۰
  3. ۱۸
  4. ۲۰
  5. ۱