כשתלמד יותר על מחשבים וכיצד הם פועלים, תיתקל מדי פעם במשהו שלא נראה הגיוני. עם זאת בחשבון, האם ריקון שטח הדיסק אכן מאיץ מחשבים? בפוסט שאלות ותשובות של SuperUser של היום יש את התשובה לשאלת הקורא התמוהה.
מושב השאלות והתשובות של היום מגיע אלינו באדיבות SuperUser - חלוקה של Stack Exchange, קיבוץ מונחה קהילה של אתרי שאלות ותשובות.
צילום מסך באדיבות חול (פליקר) .
השאלה
קורא SuperUser Remi.b רוצה לדעת מדוע נראה כי ריקון שטח דיסק מזרז מחשב:
צפיתי בהרבה סרטונים וכעת אני מבין איך מחשבים עובדים קצת יותר טוב. אני מבין מהו זיכרון RAM, על זיכרון נדיף ולא נדיף, ותהליך ההחלפה. אני גם מבין מדוע הגדלת ה- RAM מאיצה את המחשב.
מה שאני לא מבין הוא מדוע נראה שניקוי שטח דיסק מזרז את המחשב. האם זה באמת מאיץ את המחשב? אם כן, מדוע הוא עושה זאת?
האם יש לזה קשר לחיפוש מקום זיכרון כדי להציל דברים או להזיז דברים כדי ליצור שטח רציף מספיק כדי להציל משהו? כמה מקום ריק עלי להשאיר פנוי בדיסק הקשיח?
מדוע נראה כי ריקון שטח הדיסק מזרז מחשב?
התשובה
לתורם SuperUser ג'ייסון C יש את התשובה עבורנו:
"מדוע ריקון שטח הדיסק מזרז מחשבים?"
זה לא עושה זאת, לפחות לא בפני עצמו. זהו מיתוס נפוץ באמת. הסיבה שזה מיתוס נפוץ היא מכיוון שמילוי הכונן הקשיח קורה לעתים קרובות במקביל לדברים אחרים שבאופן מסורתי עלולים להאט את המחשב. (א) . ביצועי SSD אכן נוטים להתדרדר ככל שהם מתמלאים, אך זהו נושא חדש יחסית, ייחודי לכונני SSD, ולא ממש מורגש עבור משתמשים מזדמנים. ככלל, שטח דיסק פנוי נמוך הוא רק הרינג אדום.
לדוגמא, דברים כמו:
1. פיצול קבצים. פיצול הקבצים הוא נושא (ב) , אך חוסר מקום פנוי, אף שהוא בהחלט אחד הגורמים התורמים רבים, אינו הגורם היחיד לכך. כמה נקודות עיקריות כאן:
- הסיכוי שהקובץ יתפרק הוא לֹא קשור לכמות השטח הפנוי שנותר בכונן. הם קשורים לגודל של גוש השטח הפנוי הגדול ביותר בכונן (כלומר "חורים" של שטח פנוי), שכמות השטח הפנוי במקרה לשים גבול עליון . הם קשורים גם לאופן שבו מערכת הקבצים מטפלת בהקצאת קבצים ( להלן ). לשקול: כונן שמלא ב -95 אחוז עם כל השטח הפנוי בבלוק אחד צמוד אחד יש סיכוי של אפס אחוז לפיצול קובץ חדש (ג) (והסיכוי לפיצול קובץ מצורף אינו תלוי במרחב הפנוי). כונן שמלא בחמישה אחוזים אך עם נתונים המפוזרים באופן אחיד על הכונן, הוא בעל סיכוי גבוה מאוד לפיצול.
- זכור כי פיצול הקובץ משפיע רק על הביצועים כשנגישים לקבצים המקוטעים . לשקול: יש לך כונן נחמד ומאופיין שעדיין יש בו הרבה "חורים" פנויים. תרחיש נפוץ. הכל מתנהל בצורה חלקה. בסופו של דבר, עם זאת, אתה מגיע לנקודה בה לא נותרו עוד גושים גדולים של שטח פנוי. אתה מוריד סרט ענק, הקובץ בסופו של דבר מקוטע מאוד. זה לא יאט את המחשב שלך . כל קבצי היישום שלך וכאלה שהיו בעבר בסדר לא יתפצלו פתאום. פעולה זו עשויה לגרום לטעינה של הסרט זמן רב יותר (אם כי קצב סיביות טיפוסי של סרטים הוא כה נמוך בהשוואה לקצב קריאת הכונן הקשיח, שסביר להניח שלא ניתן יהיה להבחין בו), וזה עשוי להשפיע על הביצועים הקשורים לקלט / פלט בזמן שהסרט נטען, אך מלבד זאת, שום דבר לא משתנה.
- בעוד שפיצול קבצים הוא בהחלט בעיה, פעמים רבות ההשפעות מתונות על ידי חוצץ ומטמון של מערכת ההפעלה והחומרה. עיכובים כותבים, קוראים מראש, אסטרטגיות כמו טרום קבוצה ב- Windows וכו ', כולם מסייעים בהפחתת השפעות הפיצול. בדרך כלל לא בעצם לחוות השפעה משמעותית עד שהפיצול יהפוך לחמור (אני אפילו אעזוב לומר שכל עוד קובץ ההחלפה שלך אינו מקוטע, כנראה שלא תשים לב לעולם).
2. אינדקס חיפוש הוא דוגמה נוספת. תגיד שהפעלת אינדקס אוטומטי ומערכת הפעלה שאינה מטפלת בזה בחן. ככל שאתה שומר יותר ויותר תוכן הניתן לאינדקס במחשב שלך (מסמכים וכאלה), האינדקס עשוי להימשך זמן רב יותר ויותר ולהתחיל להשפיע על המהירות הנתפסת של המחשב בזמן שהוא פועל, הן בשימוש ב- I / O והן במעבד. . זה לא קשור למרחב פנוי, זה קשור לכמות התוכן הניתן לאינדקס שיש לך. עם זאת, אזלת שטח פנוי הולכת יד ביד עם אחסון תוכן נוסף, ומכאן נוצר קשר כוזב.
3. תוכנת אנטי-וירוס (בדומה לדוגמא לאינדקס החיפוש). תגיד שהגדרת תוכנת אנטי-וירוס שתבצע סריקת רקע של הכונן שלך. ככל שיש לך יותר ויותר תוכן שניתן לסרוק, החיפוש לוקח יותר משאבי קלט / פלט ומעבד, ואולי מפריע לעבודתך. שוב, זה קשור לכמות התוכן שניתן לסרוק שיש לך. לעתים קרובות יותר תוכן שווה פחות מקום פנוי, אך היעדר מקום פנוי אינו הגורם לכך.
4. תוכנה מותקנת. תגיד שיש לך הרבה תוכנות המותקנות שנטענות כאשר המחשב שלך מאתחל, ובכך מאט את זמני ההפעלה. האטה זו מתרחשת מכיוון שטוענים תוכנות רבות. עם זאת, תוכנה מותקנת תופסת מקום בכונן הקשיח. לכן, שטח פנוי בכונן הקשיח פוחת במקביל שזה קורה, ושוב ניתן ליצור קשר כוזב בקלות.
5. דוגמאות רבות נוספות בשורות אלה אשר כאשר לוקחים יחד, לְהוֹפִיעַ לקשר מקרוב חוסר מקום פנוי לביצועים נמוכים יותר.
האמור לעיל ממחיש סיבה נוספת לכך שמדובר במיתוס כה נפוץ: אמנם המחסור במקום פנוי אינו גורם ישיר להאטה, אך הסרת התקנה של יישומים שונים, הסרת תוכן באינדקס או סריקה וכו 'לפעמים (אך לא תמיד; מחוץ לתחום של תשובה זו) מגדילה את הביצועים מסיבות שאינן קשורות לכמות השטח הפנוי שנותר. אך באופן טבעי זה גם מפנה מקום בכונן הקשיח. לכן, שוב, ניתן ליצור קשר לכאורה (אך שקרי) בין "יותר מקום פנוי" לבין "מחשב מהיר יותר".
לשקול: אם יש לך מכונה הפועלת לאט בגלל הרבה תוכנות מותקנות וכו ', שיבט את הכונן הקשיח (בדיוק) לכונן קשיח גדול יותר, ואז הרחיב את המחיצות שלך כדי להשיג יותר מקום פנוי, המכונה לא תאיץ קסם. אותה תוכנה נטענת, אותם קבצים עדיין מקוטעים באותם דרכים, אותו אינדקס חיפוש עדיין פועל, שום דבר לא משתנה למרות שיש יותר מקום פנוי.
"האם זה קשור לחיפוש מקום זיכרון כדי להציל דברים?"
לא זה לא. יש כאן שני דברים חשובים מאוד:
1. הכונן הקשיח שלך לא מחפש מסביב כדי למצוא מקומות לשים דברים. הכונן הקשיח שלך טיפש. זה כלום. זהו בלוק גדול של אחסון ממוען שמציב בעיוורון דברים במקום שבו מערכת ההפעלה שלך אומרת לו וקורא את כל מה שמתבקש ממנו. לכוננים מודרניים יש מנגנוני אחסון ושמירה מתוחכמים שתוכננו סביב חיזוי מה מערכת ההפעלה תבקש על סמך הניסיון שצברנו לאורך זמן (ישנם כוננים שאפילו מודעים למערכת הקבצים שבהם), אך למעשה, חשוב על נהיגה כסתם לבנה גדולה מטומטמת של אחסון עם תכונות ביצועי בונוס מדי פעם.
2. גם מערכת ההפעלה שלך לא מחפשת מקומות להציב דברים. אין חיפוש. מאמץ רב הושקע בפתרון בעיה זו מכיוון שהיא קריטית לביצועי מערכת הקבצים. האופן שבו הנתונים מסודרים בפועל בכונן שלך נקבע על ידי שלך מערכת קבצים . לדוגמה, FAT32 (מחשבי DOS ו- Windows ישנים), NTFS (מהדורות מאוחרות יותר של Windows), HFS + (Mac), ext4 (מערכות לינוקס מסוימות), ורבים אחרים. אפילו המושג "קובץ" ו"ספרייה "הם רק מוצרים של מערכות קבצים טיפוסיות - כוננים קשיחים לא יודעים דבר על החיות המסתוריות הנקראות קבצים . פרטים הם מחוץ לתחום תשובה זו. אך למעשה, לכל מערכות הקבצים הנפוצות יש דרכים לעקוב אחר המרחב הזמין בכונן כך שחיפוש אחר מקום פנוי הוא, בנסיבות רגילות (כלומר מערכות קבצים במצב בריאותי טוב), מיותר. דוגמאות:
- NTFS יש טבלת קבצים ראשית , הכולל את הקבצים המיוחדים מפת סיביות $ וכו ', והרבה נתונים מטא המתארים את הכונן. בעיקרו של דבר הוא עוקב אחר היכן החסימות החינמיות הבאות, כך שניתן לכתוב קבצים חדשים ישירות לבלוקים בחינם מבלי לסרוק את הכונן בכל פעם.
- דוגמה אחרת: Ext4 יש מה שנקרא מקצה מפת סיביות , שיפור בהשוואה ל- ext2 ו- ext3 שבעצם מסייע לו לקבוע ישירות היכן נמצאים בלוקים חופשיים במקום לסרוק את רשימת הבלוקים החופשיים. Ext4 תומך גם הקצאה מאוחרת כלומר חציצה של נתונים בזיכרון RAM על ידי מערכת ההפעלה לפני כתיבתם לכונן על מנת לקבל החלטות טובות יותר היכן לשים אותם כדי להפחית את הפיצול.
- דוגמאות רבות אחרות.
"או עם העברת דברים בכדי לייצר מרחב רציף מספיק כדי להציל משהו?"
לא. זה לא קורה, לפחות לא בשום מערכת קבצים שאני מכיר. קבצים פשוט בסופו של דבר מקוטעים.
נקרא התהליך של "העברת דברים בכדי להרכיב מרחב מספיק ארוך לרצף כדי להציל משהו" איחוי . זה לא קורה כשכותבים קבצים. זה קורה כאשר אתה מפעיל את מאחה הדיסקים שלך. במהדורות חדשות יותר של Windows, לפחות זה קורה באופן אוטומטי לפי לוח זמנים, אך זה לעולם לא מופעל על ידי כתיבת קובץ.
להיות מסוגל ל לְהִמָנַע העברת דברים כאלו היא המפתח לביצועי מערכת הקבצים, ומשום כך מתרחש פיצול ומדוע איחוי קיים כצעד נפרד.
"כמה מקום ריק עלי להשאיר פנוי בדיסק הקשיח?"
זו שאלה מסובכת יותר לענות עליה (והתשובה הזו כבר הפכה לספר קטן).
כלל אצבע:
1. לכל סוגי הכוננים:
- והכי חשוב, השאירו מספיק מקום פנוי ל לך להשתמש ביעילות במחשב שלך . אם נגמר לך מקום העבודה, תרצה נסיעה גדולה יותר.
- כלים רבים לאיחוי דיסקים דורשים כמות מינימלית של מקום פנוי (אני חושב שזו עם Windows דורשת 15 אחוזים, במקרה הגרוע ביותר) כדי לעבוד בהם. הם משתמשים בשטח פנוי זה כדי להחזיק זמנית קבצים מקוטעים כאשר דברים אחרים מסודרים מחדש.
- השאר מקום לפונקציות מערכת הפעלה אחרות. לדוגמא, אם במחשב שלך אין הרבה זיכרון RAM פיזי, ויש לך זיכרון וירטואלי מופעל עם קובץ עמוד בגודל דינמי, תרצה להשאיר מספיק מקום לגודל המרבי של קובץ הדף. או אם יש לך מחשב נייד שאתה מכניס למצב שינה, תזדקק למקום פנוי מספיק לקובץ מצב שינה. דברים כמו זה.
2. ספציפי SSD:
- לקבלת אמינות מיטבית (ובמידה פחותה יותר ביצועים), כונני SSD דורשים שטח פנוי, אשר מבלי לפרט יותר מדי הם משתמשים להפצת נתונים סביב הכונן, כדי להימנע מכתיבה מתמדת לאותו מקום (מה שחוק אותם) . מושג זה של השארת מקום פנוי נקרא הקצאת יתר . זה חשוב, אך בהרבה כונני SSD, כבר קיים שטח חובה להפקת יתר . כלומר, לעתים קרובות יש בכוננים כמה עשרות GB יותר ממה שהם מדווחים למערכת ההפעלה. כוננים נמוכים יותר דורשים ממך לעזוב ידנית לא מחולק שטח, אך לכוננים עם OP חובה, אינך צריך להשאיר מקום פנוי . דבר חשוב לציין כאן הוא שטח מוגן יתר נלקח לרוב רק מהחלל הלא מחולק . אז אם המחיצה שלך תופסת את כל הכונן ואתה משאיר שטח פנוי בה, זה לא תמיד לספור. פעמים רבות, הקצאת יתר ידנית מחייבת אותך לכווץ את המחיצה שלך לגודל קטן יותר של הכונן. עיין במדריך למשתמש של ה- SSD שלך לקבלת פרטים. ל- TRIM, לאיסוף אשפה וכאלה יש השפעות גם כן, אך אלה מחוץ לתחום התשובה הזו.
באופן אישי, אני בדרך כלל תופס נסיעה גדולה יותר כשיש לי עוד 20-25 אחוז פנוי. זה לא קשור לביצועים, פשוט כשאני מגיע לאותה נקודה, אני מצפה שכנראה ייגמר לי מקום לנתונים בקרוב והגיע הזמן להשיג כונן גדול יותר.
חשוב יותר מצפייה בשטח פנוי הוא לוודא כי איחוי מתוזמן מופעל במקומות המתאימים (לא בכונני SSD), כך שלעולם לא תגיע לנקודה בה הוא נהיה מספיק קשה כדי להשפיע עליך.
יש דבר אחרון שכדאי להזכיר. אחת התשובות האחרות כאן הזכירה כי מצב חצי הדופלקס של SATA מונע קריאה וכתיבה בו זמנית. אמנם נכון, זה מאוד פשוט מאוד ולרוב אינו קשור לנושאי הביצועים הנדונים כאן. משמעות הדבר בפשטות היא שלא ניתן להעביר נתונים לשני הכיוונים על הקו באותו הזמן. עם זאת, ל- SATA יש מפרט מורכב למדי כרוך בגדלי חסימה מקסימליים זעירים (בערך 8 קילו-בייט לכל בלוק על החוט, אני חושב), תורי קריאה וכתיבה של פעולות וכו ', ואינם מונעים כתיבה למאגרים המתרחשים בזמן קריאה, פעולות משולבות וכו'
כל חסימה שתתרחש נובעת מהתחרות על משאבים פיזיים, בדרך כלל ממתנה על ידי הרבה מטמון. מצב הדופלקס של SATA כמעט ולא רלוונטי כאן.
(א) "האט" הוא מונח רחב. כאן אני משתמש בו בכדי להתייחס לדברים שאו קשורים לקלט / פלט (כלומר אם המחשב שלך יושב שם מספרים מכניסים, לתוכן הכונן הקשיח אין השפעה) או למעבד קשור ומתחרה בדברים קשורים משיקים שיש להם גבוה שימוש במעבד (כלומר תוכנת אנטי-וירוס הסורקת טונות של קבצים).
(ב) כונני SSD מושפעים מפיצול בכך שמהירויות הגישה הרציפות הן בדרך כלל מהירות יותר מגישה אקראית, למרות כונני SSD שאינם עומדים באותן מגבלות כמו מכשיר מכני (גם אז, חוסר פיצול אינו מבטיח גישה רציפה עקב פילוס בלאי וכו '). עם זאת, כמעט בכל תרחישים לשימוש כללי, זהו נושא שאינו נושא. הבדלי ביצועים עקב פיצול בכונני SSD בדרך כלל זניחים לדברים כמו טעינת יישומים, אתחול המחשב וכו '.
(ג) בהנחה שמערכת קבצים שפויה אינה מפצלת קבצים בכוונה.
דאג לקרוא את שאר הדיון התוסס ב- SuperUser באמצעות הקישור למטה!
יש לך מה להוסיף להסבר? נשמע בתגובות. רוצה לקרוא תשובות נוספות ממשתמשי Stack Exchange אחרים המתמצאים בטכנולוגיה? עיין כאן בשרשור הדיון המלא .