לדלג לתוכן

9.2 - העברת משאבים וזיכרון בין תהליכים - תרגול

תרגול העברת משאב

תרגיל ראשון

הוסיפו בדיקה שהמתאר המתקבל מחזיק את הדגל FD_CLOEXEC. סגרו את המתאר המקורי והוכיחו שהמקבל עדיין יכול לקרוא. הסבירו מדוע זו אינה העתקה של כל תוכן הקובץ בזמן ההודעה.

תרגיל שני

שנו את תג ההודעה כך שהמקבל דוחה אותה אחרי קבלת המתאר. בדקו שאין עלייה מתמשכת במספר המתארים אחרי אלף חזרות באותו תהליך. הגדירו מדוע השגיאה צריכה להתגלות אחרי עיטוף המתארים בבעלות ולא לפניו.

תרגיל שלישי

נסו לכתוב לקובץ אחרי הוספת החתימות, ונסו לשנות את גודלו. בדקו שהפעולות נדחות. הסבירו אילו בעיות של מיפוי משותף החתימות פותרות ואילו שאלות עדיין דורשות פרוטוקול, כגון משמעות הנתונים וזהות השולח.