תהליכים, תהליכונים, סנכרון, ניהול זיכרון ומערכות קבצים
fork ו pipe מצליחות, ובהנחה שלכל הקוד בתוכנית יש גישה למשתנה הגלובאלי fd — לאלו מהפונקציות הבאות יש גישה ל pipe שנוצר בשורה 4?PIPE_BUF תווים לתוכנית האב. כל התווים מגיעים לתוכנית האב. מה אתם יכולים להגיד על התרחישים האפשריים של סדר קבלת התווים?
pipe. אפשר להגביל את המימוש שלכם על ידי כך שלא יתמוך במונה של סמפור אשר ערכו גדול מ-PIPE_BUF.c\ntypedef struct Semaphore_t {\n int ds[2];\n} Semaphore;\n\nint sem_init(Semaphore* sem, int count) { //assume pointer is allocated\n\n}\n\nint sem_wait(Semaphore* sem) {\n\n\n}\n\nint sem_post(Semaphore* sem) {\n\n\n}\n```
PIPE_BUF תווים לתוכנית האב. מה יכול לקרות בצד האב?שאלות תרגול במערכות הפעלה בנושא pipe ממבחנים של האוניברסיטה הפתוחה. השאלות ממוינות לפי רמת קושי, עם פתרונות לבדיקה עצמית - כך שניתן ללמוד מטעויות ולהבין את דרך הפתרון לפני הבחינה. ניתן לאתר שאלות חוזרות ולהריץ מבחני סימולציה ממוקדים בנושא pipe.