למה מרוקן שטח דיסק להאיץ את המחשב?
כאשר לומדים יותר על מחשבים וכיצד הם פועלים, תפעלו מדי פעם על פני משהו שלא נראה הגיוני. עם זאת, בראש ובראשונה, האם ריקון שטח הדיסק למעשה מהירות המחשב למעלה? היום של SuperUser Q & A לכתוב יש את התשובה לשאלה של מבולבל הקורא.
מפגש השאלות והתשובות של היום מגיע אלינו באדיבות SuperUser - חלוקה מחודשת של Stack Exchange, קיבוץ מונחה על ידי הקהילה של אתרי אינטרנט של Q & A.
צילום מסך באדיבות nchenga (Flickr).
השאלה
קורא SuperUser Remi.b רוצה לדעת למה ריקון שטח דיסק נראה להאיץ את המחשב:
אני כבר צופה הרבה קטעי וידאו ועכשיו להבין איך מחשבים לעבוד קצת יותר טוב. אני מבין מה זה זיכרון RAM, על זיכרון נדיף ולא נדיף, ועל תהליך של החלפה. אני גם מבין למה הגדלת מהירות RAM מעלה את המחשב.
מה אני לא מבין הוא למה ניקוי שטח דיסק נראה מהירות המחשב. האם זה באמת להאיץ את המחשב? אם כן, מדוע היא עושה זאת?
האם יש לזה קשר עם חיפוש מקום זיכרון כדי לשמור דברים או עם דברים נעים מסביב כדי להפוך מקום מספיק רציף מספיק כדי לשמור משהו? כמה שטח ריק אני צריך להשאיר חינם על דיסק קשיח?
למה ריקון שטח דיסק נראה להאיץ את המחשב?
התשובה
תורם SuperUser ג 'ייסון C יש את התשובה עבורנו:
"למה מרוקן שטח דיסק במהירות מחשבים?"
זה לא, לפחות לא בפני עצמה. זהו מיתוס נפוץ מאוד. הסיבה היא מיתוס נפוץ היא כי מילוי הכונן הקשיח קורה לעתים קרובות באותו זמן כמו דברים אחרים באופן מסורתי יכול להאט את המחשב (א). ביצועי SSD נוטים להשפיל ככל שהם ממלאים, אך זוהי בעיה חדשה יחסית, ייחודית ל- SSD, והיא לא ממש מורגשת למשתמשים מזדמנים. בדרך כלל, שטח דיסק פנוי נמוך הוא רק הרינג אדום.
לדוגמה, דברים כגון:
1. פיצול קבצים. פיצול קבצים הוא בעיה (ב), אבל חוסר מקום פנוי, בעוד בהחלט אחד הגורמים התורמים רבים, היא לא הסיבה היחידה לכך. כמה נקודות מפתח כאן:
- הסיכויים לקובץ מקוטעים הם לא קשור לכמות השטח הפנוי שנותר על הכונן. הם קשורים לגודל של גוש רציף הגדול ביותר של שטח פנוי על הכונן (כלומר "חורים" של שטח פנוי), אשר כמות שטח פנוי קורה לשים על הגבול העליון. הם קשורים גם לאופן שבו מערכת הקבצים מטפלת בהקצאת קבצים (בהמשך). לשקול: כונן זה 95% מלא עם כל מקום פנוי בבלוק אחד רציף אחד יש סיכוי אפס אחוז פיצול קובץ חדש (ג) (והסיכוי לפיצול קובץ מצורף אינו תלוי במרחב החופשי). כונן זה הוא 5 אחוז מלא אבל עם נתונים להפיץ באופן שווה על פני הכונן יש סיכוי גבוה מאוד של פיצול.
- זכור כי פיצול קובץ משפיע רק על הביצועים בעת גישה לקבצים המפוצלים. לשקול: יש לך נחמד, איחוי כונן כי עדיין יש הרבה "חורים" חינם בו. תרחיש נפוץ. הכל פועל בצורה חלקה. בסופו של דבר, אם כי, אתה מגיע לנקודה שבה אין עוד בלוקים גדולים של שטח פנוי שנותר. אתה מוריד סרט ענק, הקובץ מסתיים להיות מקוטעת קשות. זה לא להאט את המחשב. כל קבצי היישום שלך וכאלה שהיו בעבר בסדר לא פתאום להיות מקוטעת. זה עשוי להפוך את הסרט לוקח זמן רב יותר לטעון (אם כי שיעורי טיפוסי הסרט נמוכים כל כך נמוך בהשוואה לדיסק הקשיח לקרוא שיעורי זה יהיה סביר להניח unnoticeable), וזה עשוי להשפיע על I / O קשור הביצועים בזמן שהסרט נטען, אבל חוץ מזה, שום דבר לא משתנה.
- בעוד שבריסת קבצים היא בהחלט בעיה, פעמים רבות את ההשפעות הן מתמתנות על ידי מערכת ההפעלה ברמת חומרה buffering ו במטמון. עיכוב כותב, לקרוא מראש, אסטרטגיות כמו prefetcher ב- Windows, וכו ', כל לעזור להפחית את ההשפעות של פיצול. אתה בדרך כלל לא בעצם לחוות השפעה משמעותית עד הפיצול הופך חמור (הייתי אפילו סיכון לומר כי כל עוד קובץ החלפה שלך אינו מקוטע, אתה כנראה לא שם לב).
2. חיפוש באינדקס הוא דוגמה נוספת. נניח שיש לך אינדקס אוטומטי מופעלת ומערכת הפעלה שאינה מטפלת בזה בחן. ככל שתשמור יותר ויותר תוכן שניתן להוסיף לאינדקס למחשב שלך (מסמכים וכאלה), ייתכן שהאינדקס יימשך זמן רב יותר ויכול להתחיל להשפיע על מהירות המחשב הנתפסת בזמן שהיא פועלת, הן בשימוש ב- I / O והן ב- CPU . זה לא קשור שטח פנוי, זה קשור לכמות התוכן שניתן לצרף לך. עם זאת, אוזל של שטח פנוי הולך יד ביד עם אחסון תוכן יותר, ומכאן חיבור שקר נמשך.
3. תוכנת אנטי-וירוס (בדומה לדוגמה לאינדקס החיפוש). תגיד שיש לך תוכנת אנטי וירוס להגדיר לעשות רקע סריקה של הכונן שלך. ככל שיש לך יותר תוכן scannable יותר, החיפוש לוקח יותר I / O משאבי CPU, אולי מפריע לעבודה שלך. שוב, זה קשור לכמות תוכן scannable יש לך. תוכן יותר לעתים קרובות שווה פחות מקום פנוי, אבל חוסר מקום פנוי הוא לא הגורם.
4. תוכנה מותקנת. תגיד שיש לך הרבה תוכנות מותקנות, כי כאשר המחשב שלך המגפיים, ובכך להאט את זמני ההפעלה. זה להאט קורה כי הרבה תוכנות טעון. עם זאת, תוכנה מותקנת תופסת מקום בכונן הקשיח. לכן, שטח פנוי בכונן הקשיח פוחתת באותו זמן זה קורה, ושוב חיבור שקר יכול להתבצע בקלות.
5. דוגמאות רבות אחרות לאורך השורות האלה אשר, כאשר נלקח יחד, מופיעים כדי לקשר מקרוב חוסר מקום פנוי עם ביצועים נמוכים יותר.
האמור לעיל ממחיש סיבה נוספת לכך שמיתוס נפוץ כל כך: בעוד שהמחסור בשטח פנוי אינו גורם ישיר להאט, הסרת התקנה של יישומים שונים, הסרת תוכן באינדקס או סריקה וכו '(לפעמים לא תמיד מחוץ לתחום תשובה זו) מגדילה את הביצועים שוב מסיבות שאינן קשורות לכמות השטח הפנוי שנותר. אבל זה גם באופן טבעי משחרר את שטח הכונן הקשיח. לכן, שוב, ניתן ליצור קשר (אך שקר) לכאורה בין "מרחב פנוי יותר" לבין "מחשב מהיר יותר".
לשקול: אם יש לך מחשב פועל לאט בגלל הרבה תוכנות מותקנות וכו ', לשכפל את הכונן הקשיח (בדיוק) לכונן קשיח גדול יותר, ולאחר מכן להרחיב את המחיצות שלך כדי לקבל יותר מקום פנוי, המכונה לא קסם למעלה. אותו עומס תוכנה, אותם קבצים עדיין מקוטעת באותן דרכים, באותו אינדקס החיפוש עדיין פועל, שום דבר לא משתנה למרות שיש יותר מקום פנוי.
"האם יש לזה קשר לחיפוש שטח זיכרון כדי להציל דברים?"
לא זה לא. ישנם שני דברים חשובים מאוד ראוי לציין כאן:
1. הדיסק הקשיח אינו מחפש מסביב כדי למצוא מקומות לשים דברים. הכונן הקשיח שלך הוא טיפש. זה כלום. זה בלוק גדול של אחסון התייחס כי בעיוור מציב את הדברים שבהם מערכת ההפעלה שלך אומר את זה וקורא כל מה שהוא שאל על זה. לכוננים מודרניים יש מנגנונים מתוחכמים של אחסון במטמון ומנגנוני אחסון (buffering) המתוכננים סביב חיזוי מה שמערכת ההפעלה תבקש על סמך הניסיון שצברנו לאורך זמן (כמה כוננים מודעים למערכת הקבצים שנמצאת בהם), אבל למעשה, חשוב על לנהוג כמו לבנים רק טיפש גדול עם תכונות בונוס מדי פעם הביצועים.
2. מערכת ההפעלה שלך לא מחפשת מקומות לשים דברים. אין חיפוש. מאמצים רבים נכנסו לפתרון בעיה זו, שכן זה קריטי כדי להגיש את ביצועי המערכת. האופן שבו הנתונים מאורגנים בפועל על הכונן שלך נקבעת על ידי מערכת הקבצים שלך. לדוגמה, FAT32 (DOS הישן ו- Windows PCs), NTFS (מהדורות מאוחרות יותר של Windows), HFS + (Mac), ext4 (כמה מערכות לינוקס), ועוד רבים אחרים. אפילו המושג "קובץ" ו"ספרייה "הם רק מוצרים של מערכות קבצים טיפוסיות - כוננים קשיחים אינם יודעים דבר על החיות המסתוריות הקרוי קבצים. פרטים הם מחוץ לתחום של תשובה זו. אבל למעשה, לכל מערכות הקבצים הנפוצות יש דרכים למעקב במקום שבו השטח הזמין נמצא בכונן, כך שחיפוש מקום פנוי הוא, בנסיבות רגילות (כלומר, מערכות קבצים במצב בריאותי תקין), מיותר. דוגמאות:
- NTFS יש טבלה קובץ מאסטר, הכולל את הקבצים המיוחדים מפת סיביות, וכו ', וכן הרבה meta נתונים המתארים את הכונן. בעיקרון הוא עוקב אחר איפה בלוקים חינם הבא הם כך קבצים חדשים ניתן לכתוב ישירות בלוקים ללא צורך לסרוק את הכונן בכל פעם.
- דוגמה נוספת: ל- Ext4 יש את מה שמכונה "הקצאת מפת סיביות", שיפור על ext2 ו- ext3 שבעצם עוזר לו לקבוע באופן ישיר היכן נמצאים בלוקים חופשיים במקום לסרוק את רשימת הבלוקים החופשיים. Ext4 תומך גם - הקצאה מאוחרת, כלומר, חציצה של נתונים ב- RAM על ידי מערכת ההפעלה לפני כתיבת אותו אל הכונן על מנת לקבל החלטות טובות יותר על איפה לשים את זה כדי להפחית את הפיצול.
- דוגמאות רבות אחרות.
"או עם דברים נעים מסביב כדי לעשות מספיק מקום רציף מספיק כדי לשמור משהו?"
זה לא קורה, לפחות לא עם כל מערכת הקבצים אני מודע. קבצים פשוט בסופו של דבר מקוטעת.
תהליך "להזיז דברים מסביב כדי להמציא מספיק מקום רציף מספיק לשמירת משהו" נקרא איחוי. זה לא קורה כאשר קבצים נכתבים. זה קורה כאשר אתה מפעיל את מאחה הדיסק שלך. במהדורות חדשות יותר של Windows, לפחות, זה קורה אוטומטית על לוח זמנים, אבל זה אף פעם לא מופעלת על ידי כתיבת קובץ.
להיות מסוגל ל להימנע דברים נעים סביב זה הוא המפתח לתפקוד מערכת הקבצים, וזו הסיבה שברירציה מתרחשת ומדוע איחוי קיים כשלב נפרד.
"כמה שטח ריק אני צריך להשאיר חינם על דיסק קשיח?"
זו שאלה מסובכת יותר לענות (והתשובה הזאת כבר הפכה לספר קטן).
כלל אצבע:
1. עבור כל סוגי הכוננים:
- והכי חשוב, להשאיר מספיק מקום פנוי אתה יכול להשתמש במחשב שלך בצורה יעילה. אם אתה פועל מחוץ מקום לעבודה, אתה רוצה כונן גדול יותר.
- כלים רבים לאיחוי דיסק דורשים כמות מינימלית של שטח פנוי (אני חושב שאחד עם Windows דורש 15 אחוז, במקרה הגרוע ביותר) לעבוד בו. הם משתמשים זה מקום פנוי באופן זמני להחזיק קבצים מקוטעים כמו דברים אחרים מאורגנים מחדש.
- השאירו מקום עבור פונקציות אחרות של מערכת ההפעלה. לדוגמה, אם אין במחשב שלך זיכרון RAM פיזי רב, ויש לך זיכרון וירטואלי מופעל עם קובץ דף בגודל דינמי, אתה רוצה להשאיר מספיק מקום לגודל המרבי של קובץ הדף. או אם יש לך מחשב נייד שאתה מכניס למצב תרדמה, תצטרך מספיק מקום פנוי עבור מצב מצב תרדמה. דברים כמו זה.
2. SSD ספציפי:
- לקבלת אמינות מיטבית (ובמידה פחותה יותר), SSD מחייבים מקום פנוי כלשהו, אשר מבלי להיכנס לפרטים רבים מדי, הם משתמשים בהפצת נתונים סביב הכונן כדי להימנע מלכתוב ללא הרף לאותו מקום (אשר לובש אותם) . תפיסה זו של עזיבת מקום פנוי נקראת הקצאת יתר. זה חשוב, אבל במכשירי SSD רבים כבר קיים מרחב חובה. כלומר, הכוננים לעתים קרובות יש כמה עשרות GB יותר מאשר הם דיווחו למערכת ההפעלה. בסופו של דבר כוננים סוף דורשים ממך לעזוב ידנית ללא מחיצות שטח, אבל עבור כוננים עם OP חובה, אתה לא צריך לעזוב כל מקום פנוי. דבר חשוב לציין כאן הוא זה יתר על המידה שטח נלקח לעתים קרובות רק מתוך שטח ללא חלוקה. אז אם מחיצה שלך תופס את כל הכונן שלך ואתה משאיר קצת מקום פנוי על זה, זה לא תמיד לספור. פעמים רבות, ידנית יתר אספקה דורש לך לכווץ את המחיצה להיות קטן יותר מאשר את גודל הכונן. עיין במדריך למשתמש של SSD לקבלת פרטים. TRIM, איסוף אשפה, וכאלה יש השפעות גם כן, אבל אלה הם מחוץ להיקף של תשובה זו.
אישית, אני בדרך כלל לתפוס כונן גדול יותר כאשר יש לי על 20-25 אחוז מקום פנוי הנותרים. זה לא קשור לביצועים, זה רק כי כאשר אני מגיע לנקודה זו, אני מניח כי אני כנראה יהיה אוזל של שטח נתונים בקרוב וזה הזמן להגיע לכונן גדול יותר.
חשוב יותר מאשר צופה שטח פנוי הוא לוודא איחוי מתוזמן מופעלת כאשר מתאים (לא על SSD), כך שאתה לא מגיע לנקודה שבה זה הופך להיות קשה מספיק כדי להשפיע עליך.
יש עוד דבר אחד ראוי להזכיר. אחת התשובות האחרות כאן הזכירה כי מצב הדופלקס למחצה של SATA מונע קריאה וכתיבה בו-זמנית. אמנם נכון, זה oversimplified מאוד והוא בעיקר לא קשור לנושאים ביצועים הנדונים כאן. מה שזה אומר, פשוט, הוא כי הנתונים לא ניתן להעביר בשני הכיוונים על הקו באותו הזמן. עם זאת, SATA יש מפרט מורכב למדי מעורבים גודל בלוק מקסימלי זעיר (על 8kB לכל בלוק על חוט, אני חושב), לקרוא ולכתוב תורים הפעלה, וכו ', ואינו מונע כתיבה למאגר קורה בזמן קריאות נמצאים בתהליך, interleaved פעולות, וכו '.
כל חסימה המתרחשת נובעת מתחרות על משאבים פיזיים, בדרך כלל מקלים על ידי שפע של מטמון. מצב הדופלקס של SATA כמעט ולא רלוונטי כאן.
(א) "האט" הוא מונח רחב. הנה אני משתמש בו כדי להתייחס לדברים שהם גם אני / קשור (כלומר, אם המחשב שלך יושב שם crunching מספרים, את התוכן של הכונן הקשיח אין השפעה) או CPU- קשורה ומתחרה עם דברים הקשורים משיק כי יש CPU השימוש (כלומר אנטי וירוס תוכנת סריקה טונות של קבצים).
(ב) SSD מושפעים על ידי פיצול במהירויות גישה עוקבות, בדרך כלל, מהר יותר מאשר גישה אקראית, למרות SSD לא מול אותן מגבלות כמו מכשיר מכני (גם אז, חוסר פיצול אינו מבטיח גישה רציפה עקב פילוס ללבוש, וכו '). עם זאת, כמעט בכל תרחיש שימוש כללי, זה לא בעיה. הפרשי ביצועים עקב פיצול על SSD הם בדרך כלל זניח עבור דברים כמו טעינת יישומים, אתחול המחשב, וכו '.
(ג) בהנחה מערכת קבצים שפוי שאינו פיצול קבצים בכוונה.
הקפד לקרוא את שאר הדיון תוסס ב SuperUser דרך הקישור שלהלן!
יש לך משהו להוסיף להסבר? נשמע את ההערות. רוצה לקרוא תשובות נוספות ממשתמשים אחרים בעלי ידע טכנולוגי מתמצא? בדוק את נושא הדיון המלא כאן.