OnWorks Linux ו-Windows Online WorkStations

לוגו

אירוח מקוון בחינם עבור תחנות עבודה

<הקודם | תוכן | הבא>

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


תמונה

4.3.5. האם אני יכול לעשות משהו כמשתמש?


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


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


זה סגולה אם אתה לא קונה מחשב חדש כל שנה.


תמונה

4.3.5.1. עדיף


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


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


הגדרת העדיפות של תוכנית נעשית עם נחמד פקודה.


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


תמונהתוכניות אינטראקטיביות

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

השימוש בפקודות אלו הוא בדרך כלל משימה של מנהל המערכת. קרא את דף האיש למידע נוסף על פונקציונליות נוספת הזמינה למנהל המערכת.


תמונה

4.3.5.2. משאבי מעבד


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


• הפעל תוכניות כבדות כשהעומס נמוך. זה עשוי להיות המקרה במערכת שלך במהלך הלילה. ראה את הסעיף הבא לתזמון.

• מנע מהמערכת לעשות עבודה מיותרת: עצור דמונים ותוכניות שאינך משתמש בהן, השתמש

אתר במקום ממצא כבד, ...

• הפעל עבודות גדולות בעדיפות נמוכה


אם אף אחד מהפתרונות הללו אינו אופציה במצב הספציפי שלך, ייתכן שתרצה לשדרג את המעבד שלך. במחשב UNIX זו עבודה עבור מנהל המערכת.


תמונה

4.3.5.3. משאבי זיכרון


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


אם אתה מגלה שמשתמשים בהרבה זיכרון ושטח החלפה, אתה יכול לנסות:


• הרג, עצירה או חידוש תוכניות שמשתמשות בנתח גדול של זיכרון

• הוספת עוד זיכרון (ובמקרים מסוימים יותר שטח החלפה) למערכת.

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


תמונה

4.3.5.4. משאבי I/O


בעוד שמגבלות קלט/פלט הן גורם עיקרי ללחץ עבור מנהלי מערכת, מערכת לינוקס מציעה כלי עזר גרועים למדי למדידת ביצועי קלט/פלט. ה ps, vmstat ו חלק עליון הכלים נותנים אינדיקציה כלשהי לגבי כמה תוכניות ממתינות ל-I/O; netstat מציג נתונים סטטיסטיים של ממשק רשת, אך אין כמעט כלים זמינים למדידת תגובת הקלט/פלט לעומס המערכת, וה iostat הפקודה נותנת סקירה קצרה של השימוש הכללי ב-I/O. קיימים חזיתות גרפיות שונות כדי להציג את הפלט של הפקודות הללו בצורה מובנת מבחינה אנושית.


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


בעיות קלט/פלט ברשת:


• עומס יתר ברשת:


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

• בעיות שלמות הרשת:


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


בעיות קלט/פלט דיסק:


• קצב העברה לכל תהליך נמוך מדי:


מהירות קריאה או כתיבה עבור תהליך בודד אינה מספקת.

• קצב העברה מצטבר נמוך מדי:


רוחב הפס הכולל המקסימלי שהמערכת יכולה לספק לכל התוכניות הפועלות אינו מספיק.


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


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


תמונה


4.3.5.5. משתמשים


ניתן לחלק משתמשים למספר מחלקות, בהתאם להתנהגותם בשימוש במשאבים:


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

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

• משתמשים שמפעילים מעט עבודות אבל מנצלים הרבה זמן CPU (מפתחים וכדומה).


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


תמונה

4.3.5.6. כלים גרפיים


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


איור 4-3. צג מערכת Gnome


תמונה


ישנם גם כמה אייקונים שימושיים שתוכל להתקין בשורת המשימות, כגון דיסק, זיכרון מוניטור עומס. xload הוא עוד יישום X קטן לניטור עומס מערכת. מצא את המועדף עליך!


תמונה

4.3.5.7. מפריע לתהליכים שלך


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


1. לגרום לתהליך להשתמש בפחות משאבים מבלי להפריע לו;

2. עצור את התהליך לחלוטין.


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


זהה את התהליך בעמודה "NI", ככל הנראה תהיה לו עדיפות שלילית. סוּג r והזן את מזהה התהליך של התהליך שברצונך לחדש. לאחר מכן הזן את הערך הנחמד, למשל "20". זה אומר שמעתה ואילך התהליך הזה ייקח 1/5 ממחזורי המעבד לכל היותר.


דוגמאות לתהליכים שאתה רוצה להמשיך לפעול הם אמולטורים, מכונות וירטואליות, מהדרים וכן הלאה.


תמונה

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


ג'ו:~> ps-ef | grep מוזילה

joe 25822 1 0 Mar11 ?

00:34:04 /usr/lib/mozilla-1.4.1/mozilla-

ג'ו:~> ps-ef | grep מוזילה

joe 25822 1 0 Mar11 ?


ג'ו:~> להרוג -15 25822

ג'ו:~> להרוג -15 25822

בדוגמה למעלה, משתמש ג'ו עצר את דפדפן Mozilla שלו כי הוא נתקע.


תמונה

חלק מהתהליכים קצת יותר קשה להיפטר מהם. אם יש לך זמן, אולי תרצה לשלוח להם את האות SIGINT כדי להפריע להם. אם גם זה לא עושה את העבודה, השתמש באות החזק ביותר, SIGKILL. בדוגמה למטה, ג'ו עוצר מוזילה שקפאה:


ג'ו:~> ps-ef | grep מוזילה

joe 25915 1 0 Mar11 ?

00:15:06 /usr/lib/mozilla-1.4.1/mozilla-

ג'ו:~> ps-ef | grep מוזילה

joe 25915 1 0 Mar11 ?


ג'ו:~> להרוג -9 25915


ג'ו:~> ps-ef | grep 25915

joe 2634 32273 0 18:09 pts/4 00:00:00 grep 25915

ג'ו:~> להרוג -9 25915


ג'ו:~> ps-ef | grep 25915

joe 2634 32273 0 18:09 pts/4 00:00:00 grep 25915

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


בין התהליכים שקשה להרוג נמצאת הקליפה שלך. וזה דבר טוב: אם יהיה קל להרוג אותם, היית מאבד את הקליפה שלך בכל פעם שאתה מקליד Ctrl-C בשורת הפקודה בטעות, מכיוון שזה שווה ערך לשליחת SIGINT.


תמונהUNIX ללא צינורות כמעט בלתי מתקבל על הדעת

השימוש בצינורות (|) לשימוש בפלט של פקודה אחת כקלט של אחר מוסבר בפרק הבא, פרק 5.

מחשוב ענן מערכת ההפעלה המוביל ב-OnWorks: