מערכות הפעלה ( אביב 2007) חגית עטיה © 1 מימוש מערכת הקבצים  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

ממיבחניםC שאלות ++.
1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
מבוסס על הרצאות של יורם זינגר, האוניברסיטה העברית י"ם
A. Frank File Organization Indexed-Sequential File Measurements Thanks to Tamar Barnes.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא  מבנה כללי  דוגמה : Network file system  דוגמה : Google file system.
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא : שקיפות ושמירת מצב.  דוגמה : Network File System.
כתיבת עבודת גמר מבנה העבודה  מבחינה צורנית - יש להקפיד על אחידות בכתיבה  כותרות אחידות  רווחים זהים, פונט בגודל אחיד (12, רווח וחצי)  הצגת.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 מערכת הקבצים  מבוא : מטרות מערכת קבצים  מנשק המשתמש : פעולות על קבצים, ארגון קבצים, הגנה  תכונות של דיסקים.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 סיכום הקורס.
אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 10 Packages.
מסדי נתונים תשס " ג 1 תכנון סכמות (Design Theory) מסדי נתונים.
תרגול 8 עצי B+ אינדקס משני.
A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 פסיקות  סוגי פסיקות  איך מערכת ההפעלה מטפלת בפסיקות  דוגמא : קלט בעזרת פסיקות.
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא : שקיפות ושמירת מצב.  דוגמה : Network File System.
מערכות הפעלה תרגול 10 – זיכרון וירטואלי ב- Linux.
שאלות חזרה לבחינה. שאלה דיסקים אופטיים מסוג WORM (write-once-read-many) משמשים חברות לצורך איחסון כמויות גדולות של מידע באופן קבוע ומבלי שניתן לשנותו.
הגנה במערכות מתוכנתות תרגול 1 – המחשב האישי הערה: שקפים אלה אינם מהווים תחליף לחומר התרגולים המפורסם באתר הקורס, ומשמשים כעזר הוראה בלבד.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. חלוקת זכרון קבועה מול דפדוף.
מבוא לשפת C חידות ונקודות חשובות נכתב על-ידי יורי פקלני. © כל הזכויות שמורות לטכניון – מכון טכנולוגי לישראל.
ספר סקיצות ספר סקיצות קלאסי עם יכולות ממוחשבות. ספר סקיצות רגיל  יתרונות : נוח לנשיאה, מהיר ונוח לעבודה, עמיד.  חסרונות : הכול ידני, קשה לקבל דיוקים.
ינואר 2003אלן אזאגורי ©1 Object Storage אלן אזאגורי.
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 מימוש מערכת הקבצים  תכונות של דיסקים.  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 תהליכים - דייאט : חוטים  מוטיבציה  חוטי משתמש וחוטי מערכת  תמיכת מערכת ההפעלה  דוגמאות ושימושים.
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מימוש מערכת הקבצים  תכונות של דיסקים.  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.
A. Frank File Organization Indexed-Sequential File Introduction Thanks to Tamar Barnes.
1 Formal Specifications for Complex Systems (236368) Tutorial #5 Refinement in Z: data refinement; operations refinement; their combinations.
A. Frank File Organization Sequential File Measures.
מרץ 2002אלן אזאגורי ©1 ניהול דיסקים Disk Management.
A. Frank File Organization Classic / Direct File קובץ ישיר קלאסי.
חישוב ואופטימיזציה של שאילתות חלק 1
1 חישוב ואופטימיזציה של שאילתות חלק 2 Query Evaluation and Optimization Part 2.
טיפול בקיפאון בעיית הקיפאון הימנעות מקיפאון
1 Formal Specifications for Complex Systems (236368) Tutorial #1 Course site : T.A. :Emilia Katz.
קובץ רב-אינדקס Multi-Indexed File
מערכות הפעלה ( אביב 2009) חגית עטיה ©1 מערכת קבצים log-structured  ה log הוא העותק היחיד של הנתונים  כאשר משנים בלוק (data, header) פשוט כותבים את הבלוק.
תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. ניהול טבלת הדפים. מדיניות החלפת דפים.
מרץ מערכות קבצים File Systems. מרץ עמוד נושאים מבוא –מטרת מערכת קבצים מנשק למערכת קבצים –פעולות על קבצים –סמנטיקה –ארגון קבצים –הגנה מבנה.
מערכות הפעלה ( אביב 2006) חגית עטיה © 1 ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. חלוקת זכרון קבועה מול דפדוף.
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
Remember Remember The 5 th of November. תרגול 2 קובץ סדרתי.
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
עקרון ההכלה וההדחה.
מערכות הפעלה ( אביב 2006) חגית עטיה © 1 סיכום הקורס.
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 סיכום הקורס.
מערכת הקבצים : יסודות  מבוא : מטרות מערכת קבצים  מנשק המשתמש : פעולות על קבצים, ארגון קבצים, הגנה  תכונות של דיסקים.  מימושים : בסיסיים וקצת על מימושים.
1 חישוב ואופטימיזציה של שאילתות חלק 1 Query Evaluation and Optimization Part 1.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב' Templates תבניות.
1 חישוב של אופרטורים רלציוניים Evaluation of Relational Operators.
מימוש מערכת הקבצים  תכונות של דיסקים.  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
A. Frank File Organization Hardware Size Parameters.
ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. ניהול טבלת הדפים. מדיניות החלפת דפים.
תרגול 3 RAID. 7/14/20152 עובדה : בעת שכלל החומרה מתקדם בצעדי ענק, התקדמות הדיסקים מבחינת זמן גישה ונפח איטית יותר. פיתרון : לעבוד עם מספר גדול של דיסקים,
Text to speech In Mobile Phones איתי לוי. הקדמה שימוש בהודעות טקסט על המכשירים הסלולארים היא דרך תקשורת מאוד פופולארית בימינו אשר משתמשים בה למטרות רבות,
(C) Yohai Devir January מבנה מחשבים ספרתיים זכרון וירטואלי מבוסס על תרגול של מורן גביש.
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מערכת הקבצים  מבוא : מטרות מערכת קבצים  מנשק המשתמש : פעולות על קבצים, ארגון קבצים, הגנה  תכונות של דיסקים.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 11: File System Implementation.
מבוא למדעי המחשב לתעשייה וניהול הרצאה 7. סברוטינות subroutines.
שיאון שחוריMilOSS-il מוטיבציה  python זה קל ו C זה מהיר. למה לא לשלב?  יש כבר קוד קיים ב C. אנחנו רוצים להשתמש בו, ולבסס מעליו קוד חדש ב python.
Computer Architecture and Assembly Language
מערכות הפעלה ערן טרומר סמסטר א' תשע"ב
אינדקסינג והשינג (indexing & hashing)
תירגול 14: מבני נתונים דינאמיים
עבודה עם נתונים באמצעות ADO.NET
תהליכים-דייאט: חוטים מוטיבציה חוטי משתמש וחוטי מערכת
Presentation transcript:

מערכות הפעלה ( אביב 2007) חגית עטיה © 1 מימוש מערכת הקבצים  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.

מערכות הפעלה ( אביב 2007) חגית עטיה ©2 מבנה מערכת קבצים טיפוסית Application File System API System-call Interface Logical File System  logical file system קוד כללי, בלתי תלוי במערכת קבצים ספציפית  קוד שמקבל מסלול, ומחזיר את קובץ היעד  ניהול מידע כללי עבור קבצים פתוחים, כמו מיקום בקובץ... פעולות על מדריכים. הגנה ובטיחות.

מערכות הפעלה ( אביב 2007) חגית עטיה ©3 מבנה מערכת קבצים טיפוסית Application File System API System-call Interface Logical File System Virtual File System Interface  logical file system  virtual file system interface מנשק אחיד לכל מערכות הקבצים הספציפיות. למשל vfs_read, vfs_write, vfs_seek.

מערכות הפעלה ( אביב 2007) חגית עטיה ©4 מבנה מערכת קבצים טיפוסית Application File System API System-call Interface Logical File System Virtual File System Interface Physical File System 1 Physical File System 4 llogical file system vvirtual file system interface pphysical file system מימוש מנשק ה -VFS עבור מערכת קבצים ספציפית ללמשל, מעל דיסק, דיסקט, RAM, CD, רשת וכו ‘ מתכנן איך לפזר את הבלוקים. בהמשך, נתרכז בו.

מערכות הפעלה ( אביב 2007) חגית עטיה ©5 מבנה מערכת קבצים טיפוסית Application File System API System-call Interface Logical File System Virtual File System Interface Physical File System 1 Physical File System 4 Device Driver IBM Device Driver Seagate  logical file system  virtual file system interface  physical file system  device drivers קוד שיודע איך לפנות להתקן ספציפי דיסקים ( לפי מודל ), DVD, וכדומה. מתחיל את הפעולה הפיזית, ומטפל בסיומה. מתזמן את הגישות, על מנת לשפר ביצועים.

מערכות הפעלה ( אביב 2007) חגית עטיה ©6 מדדים להערכת מימוש מערכת הקבצים  מהירות גישה סדרתית  מהירות גישה אקראית ( ישירה )  שיברור פנימי וחיצוני  יכולת להגדיל קובץ  התאוששות משיבושי מידע

מערכות הפעלה ( אביב 2007) חגית עטיה ©7 מיפוי קבצים : הקצאה רציפה  בבלוקים באורך קבוע כפולה של גודל סקטור ( נע בין 512B – 4KB)  המשתמש מצהיר על גודל הקובץ עם יצירתו.  מחפשים בלוקים רצופים שיכולים להכיל את הקובץ.  הכניסה במדריך מצביעה לבלוק הראשון בקובץ. file1 file2 file35 6 6

מערכות הפעלה ( אביב 2007) חגית עטיה ©8 מיפוי קבצים : הקצאה רציפה גישה מהירה ( סדרתית וישירה )  שיברור פנימי וחיצוני  קשה להגדיל קובץ file1 file2 file35 6 6

מערכות הפעלה ( אביב 2007) חגית עטיה ©9 מיפוי קבצים : הקצאה משורשרת  כל בלוק מצביע לבלוק הבא.  הכניסה במדריך מצביעה לבלוק הראשון בקובץ file1

מערכות הפעלה ( אביב 2007) חגית עטיה ©10 מיפוי קבצים : הקצאה משורשרת קל להגדיל קובץ. מעט שיברור חיצוני.  גישה איטית, בעיקר לגישה ישירה. שימוש בבלוקים גדולים מקטין את הבעיה, אך מגדיל שיברור פנימי.  שיבוש מצביע בבלוק גורם לאיבוד חלקים של קובץ. file1

מערכות הפעלה ( אביב 2007) חגית עטיה ©11 הקצאה משורשרת : מצב הדיסק מדריך קובץהתחלהסוף foo 814

מערכות הפעלה ( אביב 2007) חגית עטיה ©12 File Allocation Table (FAT)  החזקת שרשרת המצביעים בנפרד. file1

מערכות הפעלה ( אביב 2007) חגית עטיה ©13 File Allocation Table (FAT)  החזקת שרשרת המצביעים בנפרד.  בעצם, טבלה שמתארת את התוכן של הדיסק כולו.  מצביע הקובץ ( במדריך ) מראה על הכניסה הראשונה.  MS-DOS. file1

מערכות הפעלה ( אביב 2007) חגית עטיה ©14 מגבלות של FAT  הטבלה נמצאת במקום נוח בדיסק / זיכרון ראשי, ומכילה 2 16 כניסות ( אינדקס של 16 ביטים ) 2 32 בגרסת FAT-32  כאשר גדלים הדיסקים, גודל החתיכות גדל. דיסק של 6.4GB היה מחולק לחתיכות של 100KB ( אך במציאות משתמשים ב -FAT-32 מעל 2GB) ïמגדיל את השיברור הפנימי ( בזבוז של 10-20% הוא שכיח ).  כל קובץ דורש לפחות חתיכה אחת. ïלכל היותר 64K קבצים ב -FAT, 4G ב -FAT-32.  טבלת ה FAT מהווה משאב קריטי. צוואר בקבוק בגישה. ïלאובדן הטבלה או לפגיעה בה יש משמעות קטסטרופאלית... ולכן היא מוחזקת בשני עותקים

מערכות הפעלה ( אביב 2007) חגית עטיה ©15 מיפוי קבצים : אינדקס  המשתמש מצהיר על גודל קובץ מקסימלי.  המצביעים לבלוקים מרוכזים בשטח רצוף משפר במקצת את זמן הגישה הישירה לעומת הקצאה משורשרת.  צריך להצהיר מראש על גודל קובץ file1

מערכות הפעלה ( אביב 2007) חגית עטיה ©16 אינדקס : מצב הדיסק מדריך קובץ בלוק אינדקס foo 15

מערכות הפעלה ( אביב 2007) חגית עטיה ©17 מיפוי קבצים : אינדקס מרובה רמות mode owners timestamps #blocks … inodedirectory file1 file2 file3 file4 direct blocks single indirection double indirection triple indirection data

מערכות הפעלה ( אביב 2007) חגית עטיה ©18 מבנה מערכת הקבצים ב Unix 4.1  inodes (index nodes) אינם מדריכים.  מדריכים הינם קבצים רגילים אשר ממפים שמות קבצים ל inodes. לאחר שימוש ממושך במערכת הקבצים :  בלוקים שונים של אותו קובץ נמצאים רחוק זה מזה.  inodes ובלוקי אינדקס נמצאים רחוק מבלוקים של מידע.

מערכות הפעלה ( אביב 2007) חגית עטיה ©19 Unix 4.2 Fast File System (FFS)  קבוצות של צילינדרים קרובים ( על הדיסק ).  בתוך אותה קבוצת צילינדרים משתדלים לשים : בלוקים של אותו קובץ בלוקים של אותו מדריך ( כולל inodes).  בתוך קבוצות שונות שמים : בלוקים של קבצים ממדריכים שונים.  שומרים על ~10% מקום פנוי בכל קבוצת צילינדרים.

מערכות הפעלה ( אביב 2007) חגית עטיה ©20 ניהול בלוקים פנויים : bitmap  מערך ובו סיבית לכל בלוק. 0 – הבלוק תפוס ; 1 הבלוק פנוי.  מאוחסן במקום קבוע בדיסק. עותק בזיכרון הראשי, ליעילות.  עם בלוקים של 4KB, נזדקק לבלוק של ביטים עבור 8*4096 בלוקים.  קל לזהות רצף של בלוקים פנויים

מערכות הפעלה ( אביב 2007) חגית עטיה ©21 ניהול בלוקים פנויים : רשימה מקושרת  מציאת בלוק פנוי בודד מהירה.  הקצאה של מספר בלוקים לאותו קובץ : במקומות המרוחקים זה מזה. מציאת הבלוקים מחייבת תזוזות של הדיסק.  מבנה הנתונים נהרס אם בלוק באמצע הרשימה השתבש.  ב FAT, הבלוקים הפנויים מנוהלים כקובץ אחד.

מערכות הפעלה ( אביב 2007) חגית עטיה ©22 ניהול בלוקים פנויים : קיבּוּץ  שימוש ברשימה מקושרת של אלמנטים : grouping - כל אלמנט מכיל טבלה של מצביעים לבלוקים פנויים רצופים ומצביע לאלמנט הבא counting – כל אלמנט מכיל מצביע לבלוק הפנוי הראשון מקבוצת בלוקים פנויים רצופים, מספר הבלוקים בקבוצה ומצביע לאלמנט הבא  ניתן למצוא בצורה יעילה מספר גדול של בלוקים פנויים ורציפים.

מערכות הפעלה ( אביב 2007) חגית עטיה ©23 אמינות  המידע בדיסק מתחלק ל - user data: נתוני המשתמש ( בתוך הקבצים ). metadata: מידע על ארגון הקבצים.  בלוקים של אינדקס, inodes...  איבוד / שיבוש metadata עלול לגרום לאיבוד user data רב. נפילת חשמל באמצע כתיבה עלולה לשבש את הסקטור שכעת נכתב.  מתי כתיבות עוברות מהזיכרון הראשי לדיסק ? write-through – כל כתיבה עוברת מיידית לדיסק. write-back – הדיסק מעודכן באופן אסינכרוני, אולי לא לפי סדר.

מערכות הפעלה ( אביב 2007) חגית עטיה ©24 אמינות נתוני המשתמש ב -Unix  במערכות Unix משתמשים במדיניות write-back נתוני המשתמש נכתבים באופן מחזורי לדיסק. תואם את סמנטיקת POSIX. פקודות fsync, sync מאלצות לכתוב את הבלוקים המלוכלכים לדיסק.

מערכות הפעלה ( אביב 2007) חגית עטיה ©25 אמינות ה -metadata  משתמשים במדיניות write-through עדכונים נכתבים מידית לדיסק  נתונים מסוימים נשמרים במספר עותקים למשל, שורש ה -file system  כאשר מערכת הקבצים עולה אחרי נפילה, מתקנים את מבני הנתונים. במערכות קבצים מסוימות, דורש מעבר על כל הדיסק  ScanDisk, fsck (file system check)

מערכות הפעלה ( אביב 2007) חגית עטיה ©26 רישום (logging)  שיטה יעילה לתחזוקת ה -metadata מוכרת גם כ -journaling  רושמים ב -log סדרתי את העדכונים לפני שהם נכתבים לדיסק ( write-ahead logging ).  הבלוקים שהשתנו נכתבים לדיסק לאחר - מכן. אולי לא לפי הסדר. אפשר לקבץ מספר שינויים ולכתוב אותם בכתיבה אחת.  ניתן למחוק מה -log עדכונים שכבר נכתבו לדיסק.

מערכות הפעלה ( אביב 2007) חגית עטיה ©27 התאוששות עם log  לאחר נפילה, עוברים על כל הכניסות ב -log בצע את הפעולה.  ביצוע נוסף של פקודה שהתבצעה במלואה או חלקית נותן תוצאה שקולה לביצוע הפעולה המקורית (idempotent). אם הכניסה האחרונה ב -log אינה שלמה, מתעלמים ממנה.

מערכות הפעלה ( אביב 2007) חגית עטיה ©28 יתרונות וחסרונות של logging כתיבה לדיסק באופן אסינכרוני התאוששות יעילה. תלויה במספר השינויים שלא נכתבו לדיסק, ולא בגודל מערכת הקבצים.  דורש כתיבות נוספות. בערך מכפיל את מספר הכתיבות.

מערכות הפעלה ( אביב 2007) חגית עטיה ©29 שיטות נוספות לשיפור ביצועים  ניתן לשפר ביצועים ע " י Caching שמירת חלק מהבלוקים הכי שימושיים בזכרון הראשי במטמון מיוחד המנוהל ע " י מ " ה - disk cache שמירת metadata בזכרון הראשי  (read-ahead) Prefetching  Reducing disk arm motion לשים בלוקים שניגשים אליהם ביחד אחד ליד השני בדיסק