ארכיון עבור הקטגוריה מחשבים

פיטר ברייט במאמר מרתק בארס-טכניקה על המעבר שלו מפיתוח לWin32 לפיתוח Cocoa (הAPI של Max OS X).
המאמר כולל סקירה היסטורית והשוואה של XP לMaxOS X; דוט-נט - הנסיון של מייקרוסופט להפוך את הAPI שלה למודרני. ועוד.
עדיין לא קראתי את כולו, אבל בינתיים הוא מרתק.
המאמר מחולק לשלוש חלקים:
חלק ראשון
חלק שני
חלק שלישי

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

גוגל סגרו את פרוייקט CoreAVC שהתארח בגוגל קוד בעקבות דרישת חברת CoreCodec - בטענה של הפרת זכויות יוצרים לפי הDMCA.
הפרוייקט סיפק פאצ'ים לmplayer ולmythtv ולxine שאיפשרו שימוש בקודק לפענוח וידאו בפורמט H.264 שפותח בCoreCodec, ולדברי המפתחים לא סיפק את הקודק עצמו להורדה.

מכתב האיום לגוגל פורסם בChillingEffecs ולפי המכתב הסיבה להורדה היא שהפרוייקט.. תחזיקו חזק :
קישר לחומרים המוגנים לפי זכויות יוצרים שנמצאים באתר של CoreCodec.

The details are as follows:
Infringing Materials Hosted on and/or Linked To From the Site. The Site hosts and/or contains one or more links to CoreAVC, which contains CoreCodec’s copyrighted Software. We have directly verified by downloading the file from the Site provided by Google Inc. that the file does include CoreCodec’s copyrighted Software.

בינתיים, מסתמן בפורומים של CoreCodec שהחברה נסוגה בה מהדרישה לסגור את הפרוייקט ופנתה לגוגל.

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

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

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

כשנכנסים לאתרים כמו אתרי בנקים, או אתרי מסחר, רואים את אותו מנעול בדפדפן, שמציין שהתקשורת מוצפנת.
המנעול הזה אומר שהתקשורת עם השרת מתבצעת בפרוטוקול HTTPS.
חוץ מהצפנה, HTTPS גם מאפשר זיהוי של הישות המשפטית שמריצה את השרת, זה עובד כך:
בנק X פונה לחברה - ווריסיין למשל - שמנפיקה אישורי זהות (Certificate), ומשלם להם סכום יפה, 400$ לשנה למשל.
ווריסיין מוודא שבנק X הוא אכן בנק X, ולא האקר Z או קראקר K, למשל על ידי אימות טלפוני.
ברגע שווריסיין החליטה שהיא יודעת מי זה בנק X, ושהוא אכן ביקש ממנה את אישור הזהות, היא מנפיקה לו כזה, וחותמת עליו.
עכשיו בנק X יכול להשתמש באישור הזהות שלו כדי לתקשר בפרוטוקול HTTPS, ודפדפנים שמתקשרים איתו יוכלו להציג למשתמש את אותו מנעול, ובא לציון גואל.
המנעול מבטיח כמה דברים:
1. שגורם צד שלישי לא יוכל לצותת לתעבורה ולגנוב את הקוד הכניסה שלך לבנק.
2. שגרם צד שלישי לא יוכל להתחזות לבנק, ולגנוב את קוד הכניסה שלך לבנק.
3. שאם הבנק יגרום לכם נזק (למשל על ידי הפצת סוסון טרויאני ללקוחותיו הנאמנים), הוא לא יוכל להסתתר מאחורי השרת שלו, אתם יודעים מי הוא - בניגוד למצב הרגיל של גלישה שבו בדרך כלל אין לכם מושג באתר שלי מי אתם נמצאים. מעבר לזה, ווריסיין חתומים על זה שהוא אכן מי שהוא טוען שהוא. במקרה ומסתבר שבנק X הוא בעצם ז'וז'ו הקראקר, תוכלו לתבוע את ווריסיין על שהם הפרו את חובתם לוודא את הזהות של מי שמקבל מהם אישור זהות.

עם הזמן, נוצרה בעיה:
כל דיכפין החליט שהוא יכול להיות CA - Certificate authority כמו ווריסיין, ולהנפיק אישורי זהות.
יצרני הדפדפנים מצידם מיהרו לכלול את המפתח הציבורי של כל יצרן שהכתיר את עצמו מאוד בקלות, כדי להמנע מנחיתות מול דפדפנים מתחרים.
גודדי למשל, מוכרים בפחות מ30$ לשנה אישור זהות שמאשר בסך הכל שאתם בעלי האתר. כמובן שהם לא ממש מוודאים מי אתם (האימות הוא אוטומטי), וכל ספאמר/סקאמר יכול לקנות מהם מנעולים לאתר הטרויאנים שלו ממש בזול.
נוצר מצב שבו אותו מנעול שעד עכשיו יצר תחושת ביטחון אצל המשתמש, הפך למשהו שולי שאפשר לקנות בזיל הזול ובלי שום אימות אמיתי.
ממש זילות המנעול.

אז מה עושים?
כמובן, אישור זהות חדש - Extended validity certificate, שמחייב את המנפיקים לוודא בצורה יסודית למי הם מנפיקים אותו (CA שיפיק אישור זהות מורחב בלי לוודא באמת למי הוא נותן אותו, מסתכן בשלילת הזכות שלו להפיק אישורי זהות).
אותם אישורים יוצגו בצורה ידידותית למשתמש:
VA cert
רואים את הירוק הידידותי בשורת הכתובת? אז זה זה.
האישור החדש המורחב והמחוזק עולה כ1500$ לשנה אצל ווריסיין - פי שלוש וחצי.
אז בעצם ווריסיין מצאו דרך לחייב את הלקוחות שלהם הרבה ממה שהם חייבו אותם קודם, כדי לקבל את השרות שהם היו אמורים לתת גם ככה: לוודא את הזהות של הלקוח.
נחמד.
אני בטוח שהם יתחילו לזלזל באישורי הזהות הרגילים שלהם, ואולי אפילו לפגוע בתהליך הזיהוי, אחרי הכל - למי איכפת? מי שזה חשוב לו שישלם על EV.

אותי זה מעצבן.

בסוף הזמנתי, לפי ההמלצה של ארסטכניקה (תודה לרוני על הלינק) מסך BenQ 24 LCD G2400W (הגיע הזמן לשדרג את ה19" CRT שלי) וכרטיס מסךASUS EN8800GT GeForce .8800GT 512MB.

בקרוב אני אכתוב את הפוסטים בתלת מימד מהיר במיוחד ועל מסך גדול ומגניב, מה שבטח ישפר את כמות ואיכות הפוסטים :)

אם הייתם קונים היום כרטיס מסך למכונת משחקים, איזה כרטיס זה היה?
מה הכי כדאי היום?

לפני כחצי שנה כתבתי לעצמי אימייל TODO, שכותרתו: openid.
openid הוא פרוטוקול מבוזר לזהות מקוונת, או במילים אחרות: דרך לשמור את הזהות שלהם בשרת אחד, ולא ב950 אלף.
עם openid, הזהות שלהם היא url, שמאפשר זיהוי נוח שלכם בשרת לבחירתכם, בלי למסור את הסיסמא לשרת שרוצה לזהות אתכם.

הסיפור הוא שנתקלתי באתר או שניים שדרשו כתובת openid, ולא ממש התחשק לי לפתוח זהות openid באתר צד שלישי, הרי כל הנקודה בopenid למול שרותים כמו פספורט של מייקרוסופט (זצ"ל) היא שopenid הוא מבוזר ולא תלוי בספק מסויים.
חוץ מזה, אני מעדיף לשמור את הזהות שלי קרובה לבית - או אפילו.. בבית:
את שרת הדואר, שרת הJabber ועכשיו שרת הopenid אני מריץ מהמחשב בסלון.
כמו הרבה אימיילי TODO אצלי בתיבה, האימייל הזה נשכח, עד שקראתי פוסט על openid שכתב ניצן.

יש כל מני שרתי openid, מסובכים יותר או פחות.
אחד הפשוטים שבהם הוא phpMyID, שמממש פחות או יותר בדיוק את מה שאני צריך:
שרת openid למשתמש בודד (אפשר כמה משתמשים אם רוצים, וזה אפילו קל).
ההגדרה שלו כוללת עריכת קובץ PHP, הוספה של שם משתמש וגיבוב md5 של הסיסמא ועוד כמה דברים, וזהו.
יותר קשה ממה שזה נשמע, ככה נראות השורות שצריך לערוך:

'auth_username' => 'test',
'auth_password' => 'e8358914a32e1ce3c62836db4babaa01'

הקישקוש בסיסמא הוא גיבוב md5 של username:phpMyID:password, יש הרבה דרכים לחשב אותו, למשל:

echo -n 'username:phpMyID:password' | openssl md5
echo -n 'username:phpMyID:password' | md5sum

(אני בטוח שמשתמשי חלונות ימצאו דרך לחשב md5 בחלונות).

יש פוסט מאוד נחמד שמסביר את כל זה יותר בפירוט אצל סאם רובי.

אז עכשיו כתובת הopenid שלי היא http://omry.yadan.net , כתובת חביבה שאפילו אני אזכור ;).

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

אחרי שמנכ"ל ווירג'ין הכריז ניטרליות רשת זה שטויות ברסק ושהוא ישים את כל מי שלא ישלם לווירג'ין במסלול האוטובוסים, קורי דוקטורו הכריז בבוינג בוינג שהוא מפסיק חד צדדית אתה חוזה השרות שלו עם וירג'ין (למרות שהוא מחוייב לעוד חצי שנה) כי הם הכריזו שהם מפרים את החוזה.

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

זוכרים שהזמנתי כונן קשיח נוסף וכונן DVD חלופי במקום זה ששבק?
שניהם היו כמובן בממשק SATA, והתסבר שהמחשב שאליו הם מיועדים סבל ממחסור חמור בערוצי SATA פנויים, כל שני הערוצים שעל לוח האם שלו היו תפוסים.
בינתיים התקנתי את הדיסק במחשב השני, והזמנתי כרטיס בקר SATA שמוסיף עוד ארבעה ערוצי SATA. אתמול הוא הגיע לשמחתי, וכשחזרתי מהעבודה התיישבתי להתקין את הבקר, את הכונן הקשיח ואת הכונן DVD.
בהתחלה פשוט התקנתי את הכל, הדלקתי את המחשב וקיוויתי לטוב - תקוות שהתבדו מהר מאוד: המחשב נתקע בBOOT, לפני שהתחיל להעלות את GRUB (טוען הBOOT של לינוקס). התחלתי לשחק קצת בחיבורים וגיליתי שהמחשב לא אוהב שאני מחבר את הDVD לבקר הSATA החדש, ולכן חיברתי אותו ישירות ללוח האם ואת אחד משני הכוננים הקשיחים הישנים חיברתי לבקר הSATA. אחרי שהמחשב הצליח להכנס לGRUB כאשר כל ארבעת הכוננים מחוברים (שני הרדיסקים ישנים, אחד חדש וכונן DVD חדש), הקרנל התחיל לעלות ונתקע כמובן כשחיפש את מערכת הקבצים במחיצת השורש (/)
חשבתי לעצמי, בטח הוא לא אוהב את השינויים, וניתקתי הכל כדי לוודא שהוא עובד במצב שבו הוא היה קודם.
במפתיע, הוא עדיין סרב לעלות כשלא מצא את מערכת הקבצים של /.
עכשיו כבר התחלתי לנסות להעריך כמה זמן יקח לי להתקין את הכל מחדש ולהביא את העסק למצב עובד (זה שרת הדואר שלי, ולא רציתי להשאיר אותו לא עובד), לא אהבתי את ההערכה.
החלטתי לנסות לעלות מדיסק של Knoppix 4.0 ישן שהיה לי, אבל הוא טען שהביוס שלי דפוק במיוחד וסירב לעלות. חשבתי לעצמי שאולי הדיסק KNOPPIX דפוק במיוחד וצרבתי את Knoppix 5.1, שהסכים עם הדיסק הקודם בדיאגנוזה וסרב גם הוא לעלות.
שלפתי מהמחסן את אחד מכונני הDVD הישנים שלי, שהתעטר בכיתוב "אולי דפוק, 22/2/2008", ניסיתי אותו ומשם דווקא Knoppix הסכים לעלות (לא שכחתי לסמן את הכונן בכיתוב "מספיק טוב בשביל קנופיקס, 14/4/2008") - בשיטוט במחשב מתוך הקנופיקס שמתי לב שהכונן החדש התיישב לו על SDA ודחף את הכונן הראשון שהיה בSDA אל SDC. זה גרם לי לחשוב שאולי זו הבעיה.
ביצעתי BOOT רגיל אל GRUB, ופתאום שמתי לב שהשורה של הקרנל נראית ככה:

kernel /boot/vmlinuz-2.6.24-1-686 root=/dev/hde1 ro

שורה שאופיינית לטעינת הקרנל מדיסק ATA רגיל ולא מSATA (שמופיע תחת sdx ולא תחת hdx).
התחלתי לנחש ולנסות כל מני אפשרויות ובסוף הצלחתי לבצע BOOT כאשר השורש בsdb2, סוף סוף קצת התקדמות!
חיברתי את כל הכוננים, ניחשתי וניחשתי שוב עד שהצלחתי עם sdc2, ונכנסתי למערכת.
לא ממה התחשק לי לשנות את הfstab ואת קובץ התפריט של GRUB לתצורה החדשה, כי ידעתי שברגע שאני אשנה משהו בחומרה הכל ישבר שוב.
נכנסתי ל#debian@irc.freenode.net, ושאלתי איך מונעים מהקרנל לשנות את שמות הכוננים כל פעם שמשהו משתנה.
ענו לי שאפשר, אבל זה קשה, ועדיף בכלל לעגן מחיצות לפי הUUID, ולא לפי שם הכונן.
UUID למחיצה? לא ידעתי שיש!
מסתבר שזה פשוט במיוחד, החל מגרסא מסויימת של הקרנל, יש בdev ספריות חדשות:

/dev/disk/by-id/
/dev/disk/by-label/
/dev/disk/by-path/
/dev/disk/by-uuid/

הספריה שמעניינת אותנו במקרה הזה היא /dev/disk/by-uuid/ שמכילה קבצים שנראים כך:

0427f3ec-17e1-4cd1-b195-7f5bdf861a28 -> ../../sdc3
3f7f2c77-88af-4e9a-a139-ba95900e0354 -> ../../sdb1

אלו לינקים סימבוליים שנוצרים אוטומטית, ומאפשרים גישה אל המחיצה בצורה שאינה תלויה בשם של הכונן עליו היא יושבת.
המזהה היחודי (UUID) של המחיצה לא משתנה עד שלא יוצרים מחדש את המחיצה (או אולי מפרמטים אותה, אני לא בטוח).
כמובן שאפשר להשתמש בו גם מתוך קובץ התפריט של grub:

kernel /boot/vmlinuz-2.6.24-1-686 root=/dev/disk/by-uuid/8397dc08-be26-491d-9a06-c3fc93303d82 ro

אחרי כל זה, הכל עובד שוב, הנה נשרף לו ערב שיכול היה לשמש אותי לדברים מועילים יותר, אבל למדתי כמה דברים.

אגב, לדעתי מה שגרם לכל הסיפור הזה היה קודם כל שדרוג שביצעתי לקרנל דרך apt-get לפני מספר שבועות, שקילקל את menu.lst של GRUB.
בגלל זה גם כשניתקתי את הכל וחזרתי למצב הראשוני עדיין לא הצלחתי לבצע BOOT.
המסקנה שלי היא שצריך לבדוק טוב טוב את menu.lst אחרי שדרוג של הקרנל (אם אני אגיד את זה בקול רם אולי אני אזכור את זה בפעם הבאה!).
בנוסף, כדאי להשתמש בUUID ולא בשם הדיסק כשמעגנים מחיצות.

לבסוף, אני גאה לציין שהמחשב הסלוני שלי, שמשמש אותי כשרת דואר וכמכונת ווידאו סלונית שודרג בהצלחה ועכשיו יש לו נפח איחסון של 200+200+500=900GB.
האח, הידד.

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

הכונן הקשיח
בראשית ברא הענק הכחול כונן קשיח בנפח של 5MB, מה שנשמע קצת מצחיק היום אבל די מדהים בהנתן שזה היה ב1956.
הכונן נראה פחות או יותר כמו ערמת תקליטים: 50 פלאטות שמסתובבות ב1200 סיבובים לדקה, ו50 ראשים קוראים מהדיסקים.
די איטי במונחים של היום (דיסקים היום מסתובבים ב7200 ואפילו 10000 סיבובים לדקה) אבל אם חושבים על זה, מבינים שהשיפור במהירות הסיבוב בחמישים השנה שעברו מאז שהדיסק הזה יוצר הוא מינורי לחלוטין.
למעשה, הדיסקים של היום דומים מאוד לדיסק הזה, אם לא בגודל או במחיר אז לפחות בעקרונות.
הרעיון של ראש שקורא וכותב על דיסק שמסתובב במהירות נשאר איתנו עד היום.
עכשיו, איך בדיוק ניגשים למידע שמצוי במקום כלשהו על דיסק קשיח כזה?
אחת הדרכים היא לחלק כל פלטה על ידי מעגלים ברדיוסים הולכים וגדלים שמחלקים את הפלטה לכמה צילינדרים, ועל כן נקראים צילינדרים או טראקים (מסלולים).
כל צילינדר כזה מחולק לכמה בלוקים או סקטורים. ובאמצעות שלשה של ראש,צילינדר וסקטור אפשר למצוא כל נקודה בדיסק הקשיח.
די מסורבל, אבל ככה זה עבד במשך די הרבה זמן.
כמובן שתוכנות שרוצות לכתוב או לקרוא מהדיסק לא צריכות לדעת לדעת לחשב איפה המידע נמצא על סמך מספר הראשים או הצילינדרים בדיסק - זה התפקיד של הדרייבר שמכיר את החומרה שלו באופן אישי, ואחראי לספק לתוכנות שלמעלה ממשק יותר נוח ואחיד אל הדיסק, שדימו את הדיסק למערך רציף של בתים.
אפשר לנחש שהדריברים היו די מורכבים, כי הם נדרשו לבצע חישובים מסובכים שהשתנו ממודל למודל של הדיסק.
עקב מגבלות נפח שנבעו מהשיטה הזו - יצרני הדיסקים עברו לשיטה חדשה לציין כתובת על הדיסק, במקום לציין ראש,צילינדר וסקטור - פשוט מציינים את מספר הבלוק, כאילו הדיסק הוא בעצם שטח אחיד ורציף.
השיטה הזו נקראת LBA - Logical block addressing, והיא השיטה הדומיננטית היום.
בשיטה הזו, כשניגשים למידע בסך הכל צריך לתת מספר והדיסק כבר שובר את הראש (תרתי משמע) כדי להבין באיזה פלטה המידע, באיזה צילינדר ובאיזה סקטור.
אז עכשיו, לכל בלוק יש מספר, והדיסק נראה לשאר המחשב כמו קובץ אחד גדול.

Master boot record - MBR
מערכת ההפעלה של רובנו נימצאת על הכונן הקשיח, והמחשב יודע לטעון את מערכת ההפעלה גם אם זו מערכת הפעלה שנכתבה אחרי שהמחשב יצא מהמפעל. איך זה?
ההסבר פשוט למדי, הבלוק הראשון על כל כונן קשיח מכיל קוד שהותקן על ידי מערכת ההפעלה, והוא הקוד שמעלה את שאר המערכת.
בעליה (BOOT), המחשב מחפש כונן קשיח שניתן לאיתחול, טוען את הבלוק הראשון - הידוע גם בשם MBR - לזכרון ומריץ אותו.
אותו בלוק מכיל גם את טבלאת המחיצות (לא יאמן כמה אפשר להכניס ב512 בתים, אה?), טבלאת המחיצות מגדירה חלוקה של הכונן הקשיח לכמה חלקים.
בגרסאות הראשונות, טבלאת המחיצות הכילה מקום לארבעה מחיצות בלבד, מה שנפתר מאוחר יותר באמצעות שימוש במחיצות מורחבות ושאר המצאות.
אחת המחיצות מסומנת כמחיצת הboot, והתפקיד של הקוד בMBR הוא למצוא את המחיצה הזו, ולהעביר את השליטה לקוד שנמצא על הבלוק הראשון במחיצה.
הקוד הזה בדרך כלל טוען את שאר מערכת ההפעלה.
מי ששיחק עם דוס זוכר שהיו לדוס כמה קבצי מערכת מיוחדים שהיו חייבים להיות מותקנים בשימוש בפקודת sys או format/s. מה שמיוחד בקבצים האלו זה שהם הותקנו במיקום מסויים מאוד בדיסק, וככה אותו קוד פשוט שרץ מראש המחיצה יכל למצוא את הקבצים בקלות.
אותם קבצים כבר ממש טוענים את מערכת ההפעלה, והם מתוחכמים מספיק כדי להכיר את מערכת הקבצים.
טוען הBOOT הנפוץ GRUB עובד בצורה דומה, חלק ראשון יושב בMBR והוא אחראי להפעיל את הקוד של שלב 1.5, שיושב במקום ידוע מראש על הדיסק, ואחראי בתורו לזהות את מערכת הקבצים שבה נמצאת מערכת ההפעלה, ולהתחיל לטעון אותה (בלינוקס פה מדובר בקרנל של המערכת).

מערכת הקבצים
מערכות קבצים הם אחד הנושאים המורכבים, וצריך ספר כדי לכסות כמו שצריך את הנושא, אבל אני אשתדל לגעת קצת במה שמעניין.
עד עכשיו דיברנו על בלוקים, אבל כשאנחנו עובדים עם המחשב אנחנו לא אומרים לו: טען את המידע מבלוק 42201, כתוב את המידע לבלוק 10024 - אלא מדברים איתו במונחים של קבצים: פתח את הקובץ X, כתוב לשם Y, מחק את הקובץ Z.
מערכת הקבצים היא מה שמאפשר את ההפשטה הזו.
מערכת הקבצים יושבת בתוך המחיצה (למרות שאפשר גם לפרמט את הכונן הקשיח כולו ישירות בלי טבלאת מחיצות), התפקיד של מערכת הקבצים הוא לקחת את את המחיצה, לנהל את הבלוקים שלה ולהשתמש בה כדי לכתוב ולקרוא קבצים, ליצור ספריות, לשלוט על הגישה (אבטחה) אל הקבצים ולדאוג לתקינות הקבצים גם במצבים קיצוניים - למשל כיבוי לא מתוכנן של המחשב.
יש מערכות קבצים רבות, ששונות אחת מהשניה בתכונות, במגבלות ויתרונות ובחסרונות, הנה רשימה קצרה ולא ממצה:
12/FAT16
מערכת קבצים מיושנת, שימשה את DOS. שמות קבצים מוגבלים באורכם ל8 תווים ולעוד 3 תווים לסיומת, נפח המחיצה מוגבל ל32 מגה לFAT12 ול2 ג'יגה בייט לFAT16 ,אין מאפייני אבטחה ושגיאות במערכת הקבצים הן נפוצות.

NTFS
מערכת הקבצים הסטנדרטית של חלונות NT, שנכללה בחלונות 2000, XP וויסטה בהמשך.
מודרנית, כוללת מאפייני אבטחה (ACL לכל קובץ) ותמיכה בונפחי קבצים ומחיצות עצומים.
לNTFS יש נטיה להפוך לאיטית יותר יותר ככל שמשתמשים בה.

EXT3
אחת ממערכות הקבצים הדומיננטיות במערכות לינוקס.
די מודרנית, תומכת בקבצים ומחיצות בנפחים עצומים, journaling במספר רמות ועוד.

עד כאן להפעם.

קריאה נוספת:
צילינדרים, ראשים וסקטורים.
כוננים קשיחים
איתחול
מערכות קבצים

FireStats icon ‏מריץ FireStats‏