תרגול השחתת זיכרון וחקירת תקיעות¶
תרגיל ראשון - מעבר מגילוי לכתיבה¶
השוו את תוכנית ההשחתה ללא PageHeap ועם full PageHeap. שמרו את ההוראה שבה נעצרת כל הרצה ואת גודל ההקצאה. תקנו את העתקת הנתונים כך שהגבול נמסר במפורש ונבדק לפני הכתיבה, ובדקו אורכים 0, 31, 32 ו33.
תרגיל שני - הסרת מעגל¶
תקנו את תוכנית התקיעה באמצעות std::scoped_lock לשני הmutexים. שמרו barrier בתחילת העבודה, אך אל תחזיקו lock בודד בזמן ההמתנה בו. הוסיפו מונה משותף שמוגן על ידי שתי הנעילות ובדקו ששתי הפעולות הסתיימו.
תרגיל שלישי - מידע חסר¶
קיבלתם dump שבו הthread הראשי ממתין לworker, אך המחסנית של הworker אינה כוללת את קוד היישום אלא wait של מערכת. כתבו שלוש השערות שונות, ואת המידע הנוסף שיבדיל ביניהן. הסבירו מדוע הוספת timeout לבדה אינה מספקת כדי להכריז על תיקון.