מרץ 20021 מערכות קבצים File Systems. מרץ 2002 2עמוד נושאים מבוא –מטרת מערכת קבצים מנשק למערכת קבצים –פעולות על קבצים –סמנטיקה –ארגון קבצים –הגנה מבנה.

Slides:



Advertisements
Similar presentations
ממיבחניםC שאלות ++.
Advertisements

1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
טבלאות סמלים נכתב ע"י אלכס קוגן סמסטר חורף, תשס"ח.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא  מבנה כללי  דוגמה : Network file system  דוגמה : Google file system.
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא : שקיפות ושמירת מצב.  דוגמה : Network File System.
כתיבת עבודת גמר מבנה העבודה  מבחינה צורנית - יש להקפיד על אחידות בכתיבה  כותרות אחידות  רווחים זהים, פונט בגודל אחיד (12, רווח וחצי)  הצגת.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 מערכת הקבצים  מבוא : מטרות מערכת קבצים  מנשק המשתמש : פעולות על קבצים, ארגון קבצים, הגנה  תכונות של דיסקים.
דוד שוורץ, עידן זק, נטע צור וחיה כהן. הפונקציונאליות : המשתמש יבחר קובץ שעליו הוא רוצה לבצע את האנליזה, וילחץ עליו עם כפתור ימני בעכבר. יפתח תפריט ובו.
מערכות הפעלה חומר נוסף לתרגולים – אדמיניסטרציה ושימוש מתקדם ב Linux.
A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא : שקיפות ושמירת מצב.  דוגמה : Network File System.
שאלות חזרה לבחינה. שאלה דיסקים אופטיים מסוג WORM (write-once-read-many) משמשים חברות לצורך איחסון כמויות גדולות של מידע באופן קבוע ומבלי שניתן לשנותו.
אוקטובר מבנה מערכות הפעלה אוקטובר אסף שוסטר שקפים ע"פ אלן אזגורי/חגית עטיה.
הגנה במערכות מתוכנתות תרגול 1 – המחשב האישי הערה: שקפים אלה אינם מהווים תחליף לחומר התרגולים המפורסם באתר הקורס, ומשמשים כעזר הוראה בלבד.
ינואר 2003אלן אזאגורי ©1 Object Storage אלן אזאגורי.
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 מימוש מערכת הקבצים  תכונות של דיסקים.  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
מערכות הפעלה ( אביב 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.
מרץ 2002אלן אזאגורי ©1 זיכרון משותף מבוזר Distributed Shared Memory.
מרץ 2002אלן אזאגורי ©1 ניהול דיסקים Disk Management.
חישוב ואופטימיזציה של שאילתות חלק 1
מרץ 2002אלן אזאגורי ©1 מבנה מערכות הפעלה מרץ אלן אזאגורי (מרצה אחראי) ארז חדד.
1 חישוב ואופטימיזציה של שאילתות חלק 2 Query Evaluation and Optimization Part 2.
ברוכים הבאים למת"ם! אדמיניסטרציה מטרת הקורס: לימוד תכנון וכתיבת תוכניות מורכבות תוך שמוש בכלי פתוח תוכנה מתקדמים. אתר הבית:
קובץ רב-אינדקס Multi-Indexed File
Backpatching 1. תזכורת מתרגול קודם קוד ביניים - שפת הרביעיות שיטות לייצור קוד ביניים –שימוש בתכונת code –כתיבה ישירה ל-buffer של פקודות שיטות לתרגום מבני.
מערכות הפעלה ( אביב 2009) חגית עטיה ©1 מערכת קבצים log-structured  ה log הוא העותק היחיד של הנתונים  כאשר משנים בלוק (data, header) פשוט כותבים את הבלוק.
ברוכים הבאים למת"ם! אדמיניסטרציה מטרת הקורס: לימוד תכנון וכתיבת תוכניות מורכבות תוך שמוש בכלי פתוח תוכנה מתקדמים. אתר הבית:
תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. ניהול טבלת הדפים. מדיניות החלפת דפים.
The Cyclic Multi-peg Tower of Hanoi מעגלי חד-כווני סבוכיות הפתרון בגרסאות עם יותר מ-3 עמודים.
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 רגיל - דינאמי) * רוצים זמן קבוע.
משטר דינמי – © Dima Elenbogen :14. הגדרת cd ו -pd cd - הזמן שעובר בין הרגע שראשון אותות הכניסה יוצא מתחום לוגי עד אשר אות המוצא יוצא מתחום.
מערכות הפעלה ( אביב 2006) חגית עטיה © 1 סיכום הקורס.
מערכת הקבצים : יסודות  מבוא : מטרות מערכת קבצים  מנשק המשתמש : פעולות על קבצים, ארגון קבצים, הגנה  תכונות של דיסקים.  מימושים : בסיסיים וקצת על מימושים.
1 חישוב ואופטימיזציה של שאילתות חלק 1 Query Evaluation and Optimization Part 1.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב' Templates תבניות.
1 חישוב של אופרטורים רלציוניים Evaluation of Relational Operators.
A. Frank File Organization Introduction to Pile File.
מימוש מערכת הקבצים  תכונות של דיסקים.  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
A. Frank File Organization Hardware Size Parameters.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #3 Internet Control Message Protocol (ICMP)
מה היום ? - - חזרה מהירה. - קריאה וכתיבה לקבצים. - בניית תוכנית כתיבה low-level - בניית ערוץ גלובלי והדגמה מול חומרה - low-level DAQ, פולימורפיזם וטריגר.
תרגול 3 RAID. 7/14/20152 עובדה : בעת שכלל החומרה מתקדם בצעדי ענק, התקדמות הדיסקים מבחינת זמן גישה ונפח איטית יותר. פיתרון : לעבוד עם מספר גדול של דיסקים,
מערכות הפעלה ( אביב 2007) חגית עטיה © 1 מימוש מערכת הקבצים  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מערכת הקבצים  מבוא : מטרות מערכת קבצים  מנשק המשתמש : פעולות על קבצים, ארגון קבצים, הגנה  תכונות של דיסקים.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 11: File System Implementation.
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
1 מבוא למדעי המחשב הרצאה 21: Queue, Iterator & Iterable.
מבוא למדעי המחשב לתעשייה וניהול הרצאה 7. סברוטינות subroutines.
שיאון שחוריMilOSS-il מוטיבציה  python זה קל ו C זה מהיר. למה לא לשלב?  יש כבר קוד קיים ב C. אנחנו רוצים להשתמש בו, ולבסס מעליו קוד חדש ב python.
תכנות מכוון עצמים ושפת ++C וויסאם חלילי. TODAY TOPICS: 1. Function Overloading & Default Parameters 2. Arguments By Reference 3. Multiple #include’s 4.
מבוא למדעי המחשב לתעשייה וניהול הרצאה 6. מפעל השעווה – לולאות  עד עכשיו  טיפלנו בייצור נרות מסוג אחד, במחיר אחיד  למדנו להתמודד עם טיפול במקרים שונים.
קצת היסטוריה 1981דיווח ראשון על תסמונת כשל חיסוני נרכש בקרב מספר הומוסקסואלים. 1981דיווח על ביטויים שונים של איידס בקרב מזריקי סמים, חולי המופיליה, מקבלי.
מערכות הפעלה ערן טרומר סמסטר א' תשע"ב
אינדקסינג והשינג (indexing & hashing)
SQL בסיסי – הגדרה אינדוקטיבית
מערכות הפעלה מרצה: ערן טרומר סמסטר א' תשע"ב
עבודה עם נתונים באמצעות ADO.NET
פרוקטוז, C6H12O6 , חד-סוכר מיוחד
ממשקים - interfaces איך לאפשר "הורשה מרובה".
תהליכים-דייאט: חוטים מוטיבציה חוטי משתמש וחוטי מערכת
Shell Scripts בסביבת UNIX
Presentation transcript:

מרץ מערכות קבצים File Systems

מרץ עמוד נושאים מבוא –מטרת מערכת קבצים מנשק למערכת קבצים –פעולות על קבצים –סמנטיקה –ארגון קבצים –הגנה מבנה מערכות קבצים –תכונות בסיסיות של דיסקים –מיפויי קבצים בסיסיים –שמירה על אמינות הנתונים והתאוששות מנפילות –מבנים מתקדמים

מרץ עמוד מטרת מערכת קבצים מטרה –שמירת מידע לטווח בינוני וארוך (non-volatile) תכונות רצויות –הפשטה מתכונות ספציפיות של ההתקן הפיזי גישה דומה לדיסק, CD-ROM, DVD, טייפ,... –זמן ביצוע סביר –הפרדה בין משתמשים שונים – protection –הגנה – security –ארגון נוח של הנתונים

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

מרץ עמוד תכונות קבצים (Attributes) לקובץ בד"כ מצמידים מספר תכונות תכונות מערכת –גודל –זמן גישה אחרונה –זמן שינוי אחרון –זמן יצירה –שם (???) תכונות משתמש –למשל, ב-OS/2 ניתן להצמיד לקובץ זוגות כאשר אורך המחרוזת יכול להגיע ל-GB2

מרץ עמוד מנשק למשתמש פעולות בסיסיות –יצירה/השמדה של קובץ: create, delete –קריאה/כתיבה:read, write –מיקום: repositioning פעולות נוספות –open, close למה הן דרושות? –append, rename, copy, … ניתן לממשן בעזרת פקודות אחרות... –נעילה –עדכון תכונות הקובץ

מרץ עמוד מנשק למשתמש גישה לקובץ גישה סדרתית –בד"כ מהירה יותר –לא מחיבת לציין מהיכן לקרוא –מאפשר למערכת לבצע prefetching גישה אקראית/ישירה –הגישה יכולה להיות אקראית לפי מיקום או לפי מפתח –לפעמים ניתן לזהות תבניות גישה

מרץ עמוד מנשק למשתמש סמנטיקה מהי הסמנטיקה של פקודה? –מהן תוצאות הלוואי של פקודת read? –מתי תוצאות הכתיבה של תהליך יכולות להיראות אצל תהליכים אחרים? –מתי כתיבה הופכת יציבה (מגיעה לדיסק)? –האם מותר ליותר מתהליך אחד לכתוב בו-זמנית לאותו קובץ? –האם כתיבות אטומיות? –מה עם עדכון התכונות? נכונות של תכנית תלויה בהנחות על סמנטיקת מערכת הקבצים –סמנטיקות שונות מקשות על portability של תכניות

מרץ עמוד מנשק למשתמש סמנטיקה – POSIX כדוגמא במשך השנים, התפתחו גרסאות שונות של Unix –לפעמים הבדלים גדולים בסמנטיקה SunOS, AIX, BSD, FreeBSD, Linux, … גוף סטנדרטים של ה-IEEE יזם הגדרת סמנטיקה אחידה (סטנדרטית) –רחבה יותר מאשר מערכת הקבצים כוללת ניהול תהליכים, חוטים, וכו' –יכולה להיתמך (חלקית) ע"י מערכות הפעלה לא Unix-יות למשל Windows NT כוללת סביבה POSIX-compliant –חלקים של מערכת ההפעלה עשויים לא להיות compliant למשל Network File System (NFS) version 3

מרץ עמוד ארגון מערכת קבצים מטרה –ברוב המערכות, מספר הקבצים מגיע לאלפים ישנן מערכות שמכילות מיליארדי קבצים –נדרשת שיטה לארגן את הקבצים שיטות מקובלות –מחיצות (partitions) – בד"כ לפי התקנים –מדריכים (directories) – טבלאות הקבצים בתוך המחיצה

מרץ עמוד פעולות על מדריכים ניתן להתיחס למדריך כמבנה נתונים מופשט עם הפעולות הבאות –מציאת קובץ (לפי שם) –יצירת כניסה –מחיקת כניסה –קבלת רשימת הקבצים בתוך המדריך –החלפת שם של קובץ –וכו' מהו המבנה של מדריך?

מרץ עמוד מבנה מדריכים מדריך בעל רמה אחת  מבנה פשוט  מסורבל כאשר יש מספר רב של קבצים  מחייב שמות יחידיים, אפילו בין משתמשים שונים מדריך בעל שתי רמות –לכל משתמש, מדריך פרטי עם כל קבציו  מפריד בין משתמשים  מקשה אם רוצים שיתוף קבצים בין משתמשים pgmtestdata1data2outusr1usr2usr3usr4usr5 f1f2testo1o2 p1testp2catfoo

מרץ עמוד מבנה מדריכים עץ מכוון הרחבה לעץ בעל מספר רמות שרירותי (MS- DOS) –מלווה במושג מדריך נוכחי – current directory –קובץ מזוהה ע"י מסלול מהשורש (מוחלט) או מהמדריך הנוכחי (יחסי) d1d2d3d4d5d1-1d1-2f1f2f3 d2-1d2-2f1 d1-1d1-2f1f2

מרץ עמוד מבנה מדריכים גרף אציקלי בגרף אציקלי, מאפשרים למספר כניסות במדריכים (אולי שונים) להצביע לאותם העצמים (Unix) –קשר סימבולי (symbolic link) – כניסה שמכילה את המסלול לעצם –קשר חזק (hard link) – לא ניתן להבדיל בינה לבין הכניסה המקורית מתי נמחק קובץ? –קשר סימבולי אינו מונע מחיקת הקובץ משאיר מצביע באוויר –קשר חזק מחייב מחיקת כל הכניסות אבל גם זה לא מספיק... למה לא כדאי לאפשר גרף מסוג כלשהו?

מרץ עמוד מבנה מדריכים ב-Unix אבחנות כלליות –שם (מסלול מלא) אינו תכונה של קובץ לאותו קובץ ניתן להגיע דרך מסלולים שונים –מחזיקים use-counter שמאפשר לדעת מתי למחוק קובץ תהליך יכול ליצור קובץ, לפתוח אותו, למחוק את הכניסה (היחידה) שלו מהמדריך ולהמשיך לעבוד עליו –כל תהליך מחזיק מבנה נתונים לקבצים פתוחים בד"כ כולל מידע על מיקום נוכחי בקובץ וכו' שאינו משותף עם פתיחות אחרות של אותו קובץ, כולל של אותו תהליך –ישנן תכונות גלובליות שמוחזקןת בנפרד זמן נגיעה אחרון, userid של בעל הקובץ, הרשאות, וכו'

מרץ עמוד הגנה המטרה –למנוע ממשתמש/ים מסויים/ים לבצע פעולות ספציפיות על הקובץ למשל קריאה, כתיבה, ביצוע, שינוי שם, וכו' רשימות גישה – Access List –נרשום לכל אוביקט למי מותר לבצע מה –בעיה הרשימות עלולות להפוך לארוכות מדי וקשות לתחזוקה –פיתרון נקבץ משתמשים למחלקות שונות: למשל owner, group universe ומספר מוגבל של פעולות read, write, execute

מרץ מבנה פנימי של מערכת קבצים

מרץ עמוד מבוא נתרכז בדיסקים כהתקן המועדף לשמירת מידע online לאורך זמן –גישה אקראית מהירה –קיבולת יחסית גבוהה מערכת קבצים בד"כ שומרת מידע בבלוקים באורך קבוע –כפולה של סקטורים – כאשר גודל סקטור נע בין 512B – 4KB

מרץ עמוד מבנה הדיסק head sector track cylinder מבנה כתובת CHS - Cylinder, Head, Sector או LBA – Logical Block Array

מרץ עמוד שימו לב! זמן ממוצע לגישה לסקטור אקראי: זמן העברה פנימי של סקטור 4KB: ביצועים של דיסק "שרת" דוגמא - Seagate r – סיבובים לדקה l – זמן ממוצע מהגעה ל-track עד להגעה לסקטור s – זמן ממוצע להזזת זרוע מ- track ל-track tr – קצב העברת נתונים פנימי

מרץ עמוד ביצועים של דיסק "מחשב שולחני" דוגמא - IBM

מרץ עמוד תכונות של דיסקים כתובות LBA מול CHS –ב-LBA ניתן להסתיר סקטורים לא תקינים ע"י הפניה כתיבות/קריאות לסקטורים רזרביים תוצאות כתיבה בעת נפילת מתח אינה אטומית (stability) –תוכן הסקטור שבכתיבה עלול להשתבש בקרים מתקדמים של דיסקים כוללים מטמון

מרץ עמוד מבנה מערכת קבצים דוגמא Applicatio n File System API System-call Interface Logical File System Virtual File System Interface Physical File System 1 Physical File System 2 Physical File System 3 Physical File System 4 Device Driver IBM Device Driver Seagate

מרץ עמוד מבנה מערכת קבצים דוגמא Logical File System –קטע קוד כללי, בלתי תלוי במערכת קבצים ספציפית קוד שמקבל מסלול, ומחזיר את קובץ היעד ניהול מידע כללי עבור קבצים פתוחים, כמו מיקום בקובץ, וכד' Virtual File System interface –מנשק אחיד לכל מערכות הקבצים הספציפיות כולל vfs_read, vfs_write, vfs_seek, … Physical File System –מימוש מנשק ה-VFS עבור מערכת קבצים ספציפית למשל, מעל דיסק, דיסקט, RAM, CD-ROM, וכו‘ –בהמשך, נתרכז בו Device Driver –קוד שיודע איך לפנות להתקן ספציפי

מרץ עמוד מיפוי קבצים לדיסקים הקצאה רציפה איפיונים –המשתמש מצהיר על גודל הקובץ בעת היצירה –מחפשים בלוקים רצופים שיכולים להכיל את הקובץ –הכניסה במדריך מצביעה לבלוק הראשון בקובץ יתרונות/חסרונות –גישה מהירה (סדרתית וישירה) –שיברור חיצוני –קשה להגדיל קובץ file1 file2 file35 6 6

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

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

מרץ עמוד מיפוי קבצים לדיסקים שימוש באינדקס – Combined Multilevel mode owners timestamps #blocks ref-count inodedirectory file1 file2 file3 file4 direct blocks single indirection double indirection triple indirection data

מרץ עמוד מיפוי קבצים לדיסקים Unix BSD 4.2 מאפיינים –Combined Multilevel index –בלוקים פנויים – מחזיקים free block bitmap מאפשר לזהות בקלות בלוקים פנויים רצופים

מרץ עמוד ניהול בלוקים פנויים רשימה מקושרת –מציאת בלוק פנוי מהירה –מבנה נתונים שברירי אם בלוק באמצע הרשימה השתבש –הקצאת בלוקים המרוחקים זה מזה לאותו קובץ bitmap עם סיבית לכל בלוק –0 – הבלוק תפוס; אחרת הוא פנוי –מקל על מציאת מספר בלוקים פנויים רצופים הקבצה –שימוש ברשימה מקושרת של בלוקים, כאשר כל בלוק מכיל טבלה של מצביעים לבלוקים הפנויים –מאפשרת למצוא בצורה יעילה מספר גדול של בלוקים פנויים ורציפים

מרץ עמוד אמינות המידע בדיסק מתחלק ל- –user data – נתוני המשתמש (בתוך הקבצים) –metadata – נתונים על ארגון הקבצים inode, block tables, etc. איבוד/שיבוש ה-metadata עלול לגרום לאיבוד user data רב –זיכרו! נפילת חשמל באמצע כתיבה עלולה לשבש את הסקטור שכעת נכתב המצב מחמיר בגלל שימוש במטמון במספר רמות –בקר הדיסק, מטמון סקטורים/בלוקים בזיכרון הראשי מתי כתיבות יורדות מזיכרון מטמון לדיסק? –write-through – כל כתיבה יורדת מיידית לדיסק –write-back – עדכון בדיסק נעשה אסינכרונית, ללא שמירה על סדר בהכרח

מרץ עמוד אמינות נתוני המשתמש מערכות Unix במערכות Unix משתמשים במדיניות write- back –נתוני המשתמש יורדים באופן מחזורי לדיסק –תואם את סמנטיקת POSIX –קיימות פקודות fsync, sync אשר מאלצות לכתוב את הבלוקים המלוכלכים לדיסק

מרץ עמוד אמינות ה-metadata משתמשים במדיניות write-through –עדכונים יורדים מידית לדיסק לגבי נתונים מסויימים, לא נבצע כתיבה in-place –מבטיח קיום גרסא במקרה של נפילה –version number מאפשר לדעת מהי הגרסא העדכנית נתונים מסויימים נשמרים במספר עותקים –למשל, שורש ה-file system כאשר מערכת הקבצים עולה אחרי נפילה, מתקנים את מבני הנתונים –במערכות קבצים מסויימות, זה דורש מעבר על כל הדיסק ScanDisk, fsck (file system check)

מרץ עמוד אמינות ה-metadata שימוש ב-logging שיטה יעילה לתחזוקת ה-metadata –מוכרת גם כ-journaling Journaled File System מאפיינים –רושמים ב-log סדרתי את העדכונים על ה-metadata לפני שהם נכתבים לדיסק Write-ahead logging –לאחר מכן, הבלוקים שהשתנו יכולים להיכתב לדיסק ייתכן אפילו לא לפי הסדר –ניתן לקבץ מספר שינויים ולכתוב אותם בכתיבה אחת –עדכונים שירדו לדיסק ניתן למחוק אותם מה-log

מרץ עמוד אמינות ה-metadata שימוש ב-logging (המשך) התאוששות מנפילה –עוברים על כל כניסה ב-log –בצע את הפעולה ביצוע נוסף של פקודה שהתבצעה במלואה או חלקית נותן תוצאה שקולה לביצוע הפעולה המקורית (idempotent) –אם הכניסה האחרונה ב-log אינה שלמה, מתעלמים ממנה

מרץ עמוד אמינות ה-metadata שימוש ב-logging (המשך) יתרונות –Metadata יכול להכתב בצורה אסינכרונית - יעיל –התאוששות יעילה תלויה במספר השינויים שלא ירדו לדיסק, ולא בגודל מערכת הקבצים חסרונות –דורש כתיבות נוספות

מרץ עמוד מערכת קבצים log-structured מאפיינים –מתייחסים ל-data blocks כ-log סדרתי של כתיבות –כתיבה של data block (חדש או ישן) נעשה תמיד בסוף ה-log ולכן העותק הישן של הבלוק לא תקף –ניתן גם לכתוב metadata blocks ב-log יתרונות –הכתיבות הן סדרתיות (ולכן יעילות יותר) –בכתיבה סדרתית של קובץ, סיכוי טוב שהבלוקים של הקובץ יהיו רצופים חסרונות –איסוף הבלוקים אשר מתפנים –הזזת הבלוקים התפוסים לתחילת ה-log

מרץ עמוד מערכת קבצים log-structured supermap לפני: אחרי שינוי בלוק: אחרי הוספת בלוק: