מערכות הפעלה מערכות הפעלה בן גוריון

לחץ כאן לכל השאלות

בשאלה זו נתייחס למערכת הקבצים שלUNIXבעלת מבנהinodeכפי שנלמדבהרצאות. בפרטנזכיר ש-inodeמכיל10מצביעים שלdirect blocks. נתון שגודל בלוק הוא1 KB(kilobyte) וגודל מצביע לבלוק הוא4 B(bytes4). נתון שה-inodeשל קובץ מסוים נמצא בזיכרון וגודל הקובץ גדול מ-500 KB. תהליך שפתח את הקובץ קורא לפונקציהreadעל מנת לקרוא את ה-500 KB הראשונים בקובץ. נתון שבמערכת ישbuffer cacheבגודל100 MB(100 Megabytes) והוא ריק לפני הקריאה ל-read. כמה בלוקים יקראו מהדיסק כתוצאה שלהקריאה ל-read?

1
done
צריך לקרוא 500 בלוקים. אז קראנו 10 דיירקט קראנו בלוק של indirect ומשם 256 נשאר לנו עוד 234 אז צריך double indirect כלומר לקרוא עוד 2 בלוקים + 234 סהכ 500 + 3 = 503
by
מיין לפי

* השאלה נוספה בתאריך: 13-07-2025