מערכות הפעלה
description
Transcript of מערכות הפעלה
מערכות הפעלה
- מבוא1תרגול
מערכות הפעלה - תרגול 1 2(c) 2003 ארז חדד
ברוכים הבאים לקורס מערכות הפעלה!
אדמיניסטרציהסקירה בסיסית של ארכיטקטורת IA32 (80386+) מערכת ההפעלה שתודגם בקורס היאLinux:
סקירה היסטורית-הכנה לעבודה בLinux-כיצד לקבל עזרה בLinux-כתיבת תכנית ראשונה בLinux
מערכות הפעלה - תרגול 1 3(c) 2003 ארז חדד
IA32ארכיטקטורת
ביט, 32ארכיטקטורה של Little-Endian נמצאת במעבדיIntel-80386 החל מ
80286 ו-8086מהווה הרחבה של ארכיטקטורות קודמות במעבדי 1985הופיעה לראשונה בשוק בשנת:הארכיטקטורה מגדירה למעבד שלושה מצבי עבודה
Real Mode מצב של תאימות לארכיטקטורות ישנות יותר. משמש – בעיקר לאתחול המערכת
VM86 Modeמצב נוסף של תאימות למערכות ישנות – Protected Mode-ביט, 32 – מצב פעולה עיקרי הכולל תמיכה מלאה ב
ניהול זיכרון, ריבוי משימות וכו'. ,נציג סקירה בסיסית הכוללת ניהול זיכרון, רגיסטרים, פסיקות
בלבד.Protected Modeק"פ. הסקירה תתייחס למעבד במצב
מערכות הפעלה - תרגול 1 4(c) 2003 ארז חדד
IA32 (1)פעולות מיוחסות ב-
עקרון הפעולות המיוחסות מוטמע בכל המנגנונים בחומרה ולהפרדה בין ומשמש להגבלת פעולות יישומי המשתמשים
היישומיםגישה מבוקרת לחומרהגישה חסומה לזיכרון שבשימוש מערכת ההפעלה
ארכיטקטורתIA32 רמות (4 מבדילה בין rings או privilege levels 0-3, המסומנות מיוחסות) שונות של פעולות מכונה
Ring 0 הרמה המקסימלית - ברמה זו ניתן לגשת לכל – החומרה במחשב ללא הגבלה
Ring 3 הרמה המינימלית – מאפשרת גישה מוגבלת (ברוב – מערכות ההפעלה, גישה לחלקי זיכרון בלבד).
מערכות הפעלה - תרגול 1 5(c) 2003 ארז חדד
IA32 (2)פעולות מיוחסות ב-
-רוב מערכות ההפעלה לPC מנצלות רק את ring 0 בתור kernel mode הרמה של קוד)
user בתור ring 3מערכת ההפעלה) ואת mode(הרמה של קוד משתמש)
-כאשר המעבד מבצע קוד, הring שבו נמצא CPL (Current Privilegeהמעבד כרגע נקרא
Level)
מערכות הפעלה - תרגול 1 6(c) 2003 ארז חדד
IA32(1) ניהול זיכרון ב-
IA32 4 מסוגלת לנצל עדGB(צ'יפים) של זיכרון פיזי ,"לכל יישום (וגם למערכת ההפעלה עצמה) יש זיכרון "פרטי
שרק הוא יכול לגשת אליו הגנה על נתוני מערכת ההפעלההגנה על נתוני כל יישום
למערכת ההפעלה מותר לגשת לזיכרון של היישום
ניתן לשתף זיכרון בין יישומים הזיכרון מאורגן בצורת "איזורים". לכל יישום יש בדרך-כלל
גישה לשני איזורים לפחות: אחד לקוד ואחד לנתונים + מחסנית
מערכות הפעלה - תרגול 1 7(c) 2003 ארז חדד
IA32 (2)ניהול זיכרון ב-
כאשר קוד מבקש לגשת לאיזור, החומרהמאשרת את הגישה במגבלות הבאות:
:לפי הפעולה המבוקשתread/write/execute לכל . איזור מוגדרות הרשאות המגבילות את סוג הפעולה
-לפי הCPL של המבקש: לכל איזור מוגדר DPL (Descriptor Privilege Level) הגישה מותרת רק .
. כך נמנע מיישומי המשתמש לגשת CPL≤DPLאם לאיזורים של מערכת ההפעלה
מערכות הפעלה - תרגול 1 8(c) 2003 ארז חדד
IA32 (3)ניהול זיכרון ב-
המכילה כתובת לוגיתבגישה לזיכרון, הקוד מספק segment:offset
Segment ביט המזהה את איזור הזיכרון 16 הוא מספר בן המבוקש.
Offset ביט המזהה כתובת ספציפית 32 הוא מספר בן בתוך האיזור המבוקש
כתובת החומרה מתרגמת את הכתובת הלוגית ל ביט) של תא בזיכרון המחשב32 (מספר בן פיזית
-על מנגנון הזיכרון בIA32-וב Linux נלמד ביתר דיוק והרחבה בתרגולים הבאים
מערכות הפעלה - תרגול 1 9(c) 2003 ארז חדד
IA32 (1)רגיסטרים במעבד
) 80386נציג רק את סט הרגיסטרים הבסיסי(-כל הרגיסטרים, למעט הsegment registers ביט 32, הם בני
ביט) הנמוכה של כל רגיסטר בהשמטת 16וניתן לגשת למילה ( מתחילת השםeה- לדוגמה: המילה הנמוכה שלebp היא bp
4 :רגיסטרים לחישוב כללי eax, ebx, ecx, edx) ביט) הנמוך ביותר בכל 8ברגיסטרים אלו בלבד, ניתן לגשת גם לבית
. לבית השני הנמוך ביותר ניגשים al. לדוגמה: l ב-xרגיסטר בהחלפת ה-.ah. לדוגמה: h ב-xבהחלפת ה-
2:רגיסטרים כלליים המשמשים גם לגישה למערכים esi, edi
מערכות הפעלה - תרגול 1 10(c) 2003 ארז חדד
IA32 (2)רגיסטרים במעבד
:מצביע המחסניתesp :רגיסטר כללי שמשמש גם בקריאה לפונקציותebp :מצביע התכניתeip :רגיסטר הדגליםeflags segment registers ביט המכילים את 16: רגיסטרים בני
/ cs (code), ds (data), ss (stack), esהסגמנט בגישה לזיכרון: fs / gs
דוגמאות: ראש המחסנית נמצא בss:esp ההוראה הבאה לביצוע .. cs:eipנמצאת ב-
-הCPL הוא שדה בתוך הרגיסטר csרגיסטרים נוספים יוצגו בהמשך לפי הצורך
מערכות הפעלה - תרגול 1 11(c) 2003 ארז חדד
IA32 (3)רגיסטרים במעבד הדגלים של רגיסטרeflags:
:הדגלים מחולקים לשני סוגים:מתעדכנים בעקבות כל פעולת מכונה. משמשים לחיווי דגלי חיווי סטטוס
מצב המעבד:משנים מצב על-פי פעולה מפורשת של הקוד, על-מנת מתגי בקרה
להשפיע על התנהגות המעבד בהמשך.בהמשך נפרט את תפקידם של מספר דגלים רלוונטיים
31
18
17
16
15
14
13
12
11
10
9876543210
0VM
RF
0NT
IOPLOF
DF
IF
TF
SF
ZF
0AF
0PF
1CF
מערכות הפעלה - תרגול 1 12(c) 2003 ארז חדד
IA32 (4)רגיסטרים במעבד
דגלי חיווי סטטוסCF (Carry Flag) אם בחישוב 1 מציין (ערך (
) מעבר לסיבית carry/borrowהאחרון נוצר נשא (הגבוהה ביותר
PF (Parity Flag) האם מספר 1 מציין (ערך (" בתוצאת החישוב האחרונה הינו 1הסיביות במצב "
זוגיZF (Zero Flag) האם תוצאת 1 מציין (ערך (
0החישוב האחרונה היא
מערכות הפעלה - תרגול 1 13(c) 2003 ארז חדד
IA32 (5)רגיסטרים במעבד
:מתגי בקרהIF (Interrupt Flag) למעבד לקבל ולטפל 1 מאפשר (ערך (
בפסיקות חמרה חיצוניותIOPL (I/O Privilege Level)-קובע את ה ring המקסימלי
ביט)2עבורו מותר לבצע פעולות קלט/פלט (שדה בגודל -רק קוד שרץ בCPL=0 רשאי לשנות את ערך IOPL-רק קוד שרץ בCPL-שאינו גבוה מ IOPL רשאי
לאפשר ולחסום פסיקות מהחומרה באמצעות מתג )cli, sti במעבד (פעולות IFה-
מערכות הפעלה - תרגול 1 14(c) 2003 ארז חדד
IA32 (1)פסיקות ב-
) פסיקהinterrupt .היא אות הנקלט במעבד במהלך ביצוע קוד (אות זה מעיד על אירוע שדורש את טיפולו המיידי של המעבד
המעבד מבחין ומטפל בפסיקות בין ביצוע של שתי הוראותעוקבות בקוד
בתגובה על פסיקה, המעבד מבצע שגרת קוד מוגדרת מראשואחר כך חוזר להמשך ביצוע הקוד.
שגרת הטיפול בפסיקה נקראת Interrupt Handler-הפעלת שגרת הטיפול בפסיקה יכולה לגרום מעבר מuser mode
(ומעבר הפוך בסיום הטיפול בפסיקה)kernel modeל--בIA32 255..0 פסיקות שונות הממוספרות 256 מוגדרות
מערכות הפעלה - תרגול 1 15(c) 2003 ארז חדד
IA32 (2)פסיקות ב-
בארכיטקטורתIA32:מוגדרים שני סוגי פסיקות פסיקות אלו , פסיקות אסינכרוניות):interruptsפסיקות חומרה (1.
נגרמות ע"י חומרה חיצונית למעבד וללא תיאום עם שעון המעבד. מטרת פסיקות אלו היא להודיע למעבד על שינוי מצב בחומרה
החיצונית הדורש את טיפולו של המעבד, כגון הקשת מקש במקלדת, הגעת נתונים מהרשת וכו'. חלק מפסיקות אלו ניתנות לחסימה
) וחלקן קריטיות ואינן ניתנות maskable interruptsסלקטיבית ().non-maskable interruptsלחסימה (
פסיקות אלו נוצרות ע"י , פסיקות סינכרוניות):exceptionsחריגות (2.המעבד עצמו בעת ביצוע הוראות של הקוד. מטרת החריגות היא
לגרום למעבד לטפל בתקלות שמתעוררות עקב ביצוע קוד, או ליזום במתכוון מצב שבו המעבד מפעיל שגרת טיפול כלשהי. דוגמה:
, גישה לא מותרת לזיכרוןbreakpoint, 0חלוקה ב-
מערכות הפעלה - תרגול 1 16(c) 2003 ארז חדד
IA32 (3)פסיקות ב-
סוג מסוים של חריגות נקראProgrammed Exceptions או ). זהו המנגנון Software Interruptsפסיקות תוכנה (
באמצעותו מבקשים יישומים לקבל שירות ממערכת ההפעלה, הנגיש כשיגרת טיפול בחריגה מסוימת. ניתן
:intלגרום פסיקת תכנה על-ידי הוראת int <int_num>
מדוע משתמשים במנגנון זה לקבלת שירותים שאלה: במקום בקריאה פשוטה לפונקציה?
תשובה:kernel mode ל-user modeכדי לתמוך במעבר מ-–כדי שיישום המשתמש לא יצטרך לדעת את מיקום שגרות –
מערכת ההפעלה
מערכות הפעלה - תרגול 1 17(c) 2003 ארז חדד
IA32קלט/פלט ב-
המעבד מחובר לחומרה היקפית כמו דיסק, מדפסתportsוכו' באמצעות "שערים" -
-64תמיכה בKשערים בכל שער ניתן לקבל ולשלוח הוראות ונתונים לחומרה
I/Oההיקפית באמצעות פעולות פעולותI/O-הן פעולות מיוחסות. רק קוד שרץ ב CPL
במעבד רשאי לבצע IOPLשאינו גבוה מערך שדה פעולות אלו. למעשה, רק קוד מערכת ההפעלה רשאי
לגשת לחומרה בחופשיות
מערכות הפעלה - תרגול 1 18(c) 2003 ארז חדד
IA32 (1)המחסנית ב-
לכל יישום במערכת יש מחסנית המשמשתלקריאה לפונקציות במהלך ביצוע הקוד
למעשה, לכל יישום יכולות להיות מספר מחסניותוהן משמשות בתפקידים נוספים. פרטים נוספים
בתרגולים הבאים המחסנית נגישה דרך צמד הרגיסטרים
ss:esp שבראש האיבר הנוכחי, המצביע על המחסנית
מערכות הפעלה - תרגול 1 19(c) 2003 ארז חדד
IA32 (2)המחסנית ב-
המחסנית גדלה בכיוון הכתובות הנמוכותesp-בכל פעולת 4 או ב-2 מוקטן ב push גם אם ,
ביט16מכניסים למחסנית פחות מ- כתובותsegment:offset) far pointer או far call (
כערך segmentנשמרות במחסנית ע"י דחיפת ה-offset ביט ואחריו ה-32של
בדרך-כלל מכניסים למחסנית רקoffset של )near call או near pointerכתובת (
מערכות הפעלה - תרגול 1 20(c) 2003 ארז חדד
Linux!נעים להכיר – מערכת הפעלה דמויתUnix
תאימות גבוהה (אך לא רשמית) לתקןPOSIX.1 מערכת הפעלה חופשית
ניתנת להורדה בחינם מהאינטרנטקוד פתוח - מפותחת כשיתוף פעולה של אלפי מתכנתים מכל העולם
-1990התחילה כפרויקט של סטודנט בLinus Torvalds כיום מוביל את פיתוח הגרעין העתידי של – Linux
:שמה המלאGNU/Linux חלק ניכר מהתוכנה בכלdistribution (גרסת הפצה) מעבר לגרעין הוא קוד פתוח של
GNUפרויקט Linuxמותאמת לסביבות חומרה רבות ושונות
למעשה, כמעט לכל סוג מעבד שישמשעוני יד ועד לשרתים אירגוניים
מערכות הפעלה - תרגול 1 21(c) 2003 ארז חדד
Linux (1)הכנה לעבודה ב-
VMware:תוכנה המבצעת סימולציה של מחשב וירטואלי רצה על-גביWindows, Linux מותקנת בתחנותwindows בחוות המחשבים
בטאוב על גביVMware נתקין Red Hat Linux 8.0..פרטים נוספים – בתרגיל הבית הראשון
מערכות הפעלה - תרגול 1 22(c) 2003 ארז חדד
Linux (2)הכנה לעבודה ב-
פקודות סטנדרטיות שלUnix Shell שלמדנו במת"ם
ls, cp, mv, cd, mkdir, rmdir, ps, grep … , :למי שרוצה לעבוד עם קבצים בקלות ובנוחות
mc (Midnight Commander)
מערכות הפעלה - תרגול 1 23(c) 2003 ארז חדד
Linux (3)הכנה לעבודה ב-
מגוון סביבות עבודה גרפיות נוחות תחתX-Windows
KDE, Gnome) סביבות פיתוחIDEחלונאיות (
KDevelop, Anjuta :תוכנות עריכה נוחותnedit, (x)emacs, vim
תוכנות עריכה סטנדרטיות שפועלות גם ללאemacs, vim, pico, mceditסביבת חלונות:
מערכות הפעלה - תרגול 1 24(c) 2003 ארז חדד
Linux (1)קבלת עזרה בעבודה ב-
הפקודהman מציגה מידע על כל פקודה או פונקצית ספריה בה תרצו להשתמש
הקישו:lsדוגמה: לקבלת מידע על הפקודה >man ls
לקבלת מידע על כל הפקודות הקשורות לנושא מסוים.>man –k <topicהקישו
דוגמה: לקבלת מידע על כל הפקודות העוסקות בקבצים הקישו:
>man –k file
מערכות הפעלה - תרגול 1 25(c) 2003 ארז חדד
Linux (2)קבלת עזרה בעבודה ב-
-הshell-שבו תעבדו ב Linux יהיה בדרך-כלל bash -חלק מהפקודות שתחפשו הן פקודות של הshell ולכן מופיעות
"man bashבתוך " :דוגמא לפקודות כאלוhistory, alias, fg
-דפי הman) מחולקים למספר חלקים sections ,למשל .(. פונקציות 1) נמצאות בחלק ps ו-lsפקודות שימושיות (כמו
.2) נמצאות בחלק ()open(), closeמערכת (כמו .לעיתים אותו שם יכול להופיע בשני חלקים של המדריך
) והן kill של המדריך (הפקודה 1 נמצאת הן בחלק killלמשל, תחזיר את man kill). במקרה שכזה, ()kill (הפונקציה 2בחלק
המידע מהמדריך הנמוך ביותר עם השם המתאים
מערכות הפעלה - תרגול 1 26(c) 2003 ארז חדד
Linux (3)קבלת עזרה בעבודה ב-
הקישו 2כדי לקבל את המידע על פקודה ספציפית מחלק מסוים (למשל ((לדוגמה):
man 2 kill הקישו:2כדי לקבל מידע על כל המצוי בחלק מסוים (למשל (
man 2 intro-דפי מידע ארוכים מוצגים תוך שימוש בless שהיא תוכנה לגלילה מבוקרת ,
של קבצי טקסט על המסך. ניתן לנוע בין העמודים בחופשיות באמצעות . קבלת עזרה על ’q‘ באמצעות less. יציאה מ-pgup/pgdnמקשי החיצים וה-
.’h‘ באמצעות lessמקשי :מקור נוסף לקבלת מידע על פקודות ומילות מפתח
>info <keyword> עם מעט יותר הסבר hypertextפקודה זו מביאה את המידע מאורגן בצורת
ידידותי לגבי השימוש בה.
מערכות הפעלה - תרגול 1 27(c) 2003 ארז חדד
)1 ראשונה (Linuxתכנית
#include <stdio.h>
int main() {char *str=“Hello”;printf(“%s World!\n”, str);return 0;
}
hello.c
מערכות הפעלה - תרגול 1 28(c) 2003 ארז חדד
)2 ראשונה (Linuxתכנית
נקליד את התוכנית באמצעות תכנית עריכה כלשהי (למשלemacs(:נעביר את התכנית קומפילציה
>gcc –g –o hello hello.cנריץ את התכנית
>./helloHello World!>
ניתן (ורצוי) לבנות קובץ עבורmake בשם Makefile הקפידו על אותיות גדולות) וקטנות) בתוך ספרית העבודה שלכם. הקומפילציה תתבצע על-ידי הפקודה:
>make <target> ניתן לבצעdebugging אינטראקטיבי של תכנית באמצעות gdb:לדוגמה .
gdb hello באותו אופן.dddמי שמשתמש בסביבה גרפית יכול להשתמש למטרה זו ב-
מערכות הפעלה - תרגול 1 29(c) 2003 ארז חדד
Linuxעבודה עם קוד גרעין
קוד המקור של גרעיןLinux נמצא בדרך כלל בספרייה /usr/src/linux-2.4במחשב בו אתם עובדים
ייתכנו שינויים בהתאם למסגרת העבודה – נודיע לכם מראש בתרגולים הבאים נתבונן בדוגמאות קוד שונות הלקוחות מקוד
הגרעין ,לכל דוגמת קוד נציין מהו הקובץ ממנו לקוחה הדוגמה
במסלול יחסי לספרית השורש המצוינת לעיל למשל, אם ציינו שהפונקציהsys_open() נמצאת בקובץ גרעין
fs/open.c:הרי שהמסלול המלא לקובץ הוא ,/usr/src/linux-2.4/fs/open.c
" בסוף ספר הלימודUnderstanding the Linux Kernel יש ") את המסלול sys_openמפתח המכיל עבור כל שם (כמו
היחסי לקובץ המכיל שם זה
מערכות הפעלה - תרגול 1 30(c) 2003 ארז חדד
משתמשיםLinuxהיא מערכת הפעלה מרובת משתמשים לכל משתמש ישUser Id
User ID ='0‘ נקרא משתמש root האדמיניסטרטור שיכול לעשות כל - דבר במחשב
כל תהליך משויך לuserשהפעיל אותו כל קובץ משויך לuserשיצר אותו קובץ/etc/passwd מכיל את רשימת כל ה users:במערכת
User NamePassword סיסמאות יכולות להופיע בצורה מוצפנת גם בקובץ
wshado/etc/User ID (number)User's default Group ID (will be explained later)Home DirectoryLogin Shell
מערכות הפעלה - תרגול 1 31(c) 2003 ארז חדד
קבוצות משתמשים מוגדרות בקובץ/etc/group המכיל את רשימת כל ה groups:במערכת
Group Name Password Group Id (number)List of Users
לכלUser יש default groupאך הוא יכול להשתייך לקבוצות נוספות , אפשר לבדוק לאילו קבוצותUser שייך ע"י הפקודה groups [username]
מערכות הפעלה - תרגול 1 32(c) 2003 ארז חדד
קבציםלכל קובץ מוגדרות הרשאות גישה
קבוצות: 3ההרשאות מתחלקות ל user-owner, group-owner, others - כל קבוצת הרשאות מתחלקת להרשאות קריאה,כתיבה, הרצהrwx:ספריה היא גם קובץ. עבור ספריה
קריאה פירושה לראות את רשימת הקבצים והתתי ספריות בספריה זוכתיבה פירושה יצירת קובץ או ספריה חדשה בספריה זו הרצה פירושה לגשת לקבצים בספריה
כדי לקרוא קובץtmp/X צריך הרשאת /x על "/" , הרשאת x על tmp // tmp/X על rוהרשאת
בעל הקובץ – זה שיצר אותו, רשאי לשנות את ההרשאות ניתן לשנות הרשאות ע"י הפקודהchmod 7 ל 0 ההרשאות נכתבות בפורמט של מספר אוקטלי – בין 9כ"א מ הרשאות ברירת מחדל הן בד"כrw ,לכולם עבור קובץ rwxלכולם עבור ספריה הפקודהumask לתת לקובץ חדשלא קובעת אילו הרשאות ברירת מחדל
מערכות הפעלה - תרגול 1 33(c) 2003 ארז חדד
תהליכים פקודהpsמציגה את רשימת התהליכים הרצים ב shell הנוכחי
היא ניגשת ל)/proc(פרטים בהמשך – ps –a, ps –u <user_name<kill <pid>, kill -9 <pid<משתמש יכול להרוג רק תהליכים שלו -
rootיכול להרוג תהליכים של כולם הפקודהsbin/fuser/רשימת התהליכים שמחזיקים את הקובץ פתוח כרגע - הפקודהusr/sbin/lsof/רשימת הקבצים הפתוחים כרגע ע"י תהליך נתון -
מערכות הפעלה - תרגול 1 34(c) 2003 ארז חדד
מציאת קבצים משתנה סביבהPATHרשימת הספריות בהן יש לחפש – executables בעת
הרצה הפקודהwhich היכן בדיוק ממוקם - executable שהספריה שלו מפורטת
pathב אם קובץ ההרצה לא בpath:או סתם כדי למצוא קובץ במערכת הקבצים
find(איטי אבל תמיד נכון) סורק את מערכת הקבצים – locate(מהיר אבל יכול לטעות) מחפש במסד נתונים –
updatedb (רץ ברקע כל פרק זמן מסוים) מעדכן את מסד הנתונים –
מערכות הפעלה - תרגול 1 35(c) 2003 ארז חדד
suidהרשאות מיוחדות – – לכל קובץ קיים ביט הרשאה נוסףset user-id bit:כשהוא דלוק עבור קובץ הרצה אזי
כשמשתמש יריץ אותו – התהליך שירוץ יקבל את ההרשאות של בעל הקובץ ולאאת ההרשאות של המשתמש שהריץ את הקובץ
suidמאפשר לתת למשתמש גישה זמנית לקבצים שבד"כ אין לו גישה אליהם :שימוש טיפוסי
התוכניתpasswd שמשנה סיסמא של המשתמש צריכה לגשת לקובץ ,/etc/passwd לכתיבה. למשתמש רגיל כמובן אסור לגשת לקובץ /etc/passwd
קובץ של התוכניתpasswdשייך ל root ול root מותר גם לגשת לקובץ /etc/passwd
suid bit של התוכנית passwdדלוק כשמשתמש מריץ את התוכניתpasswd התהליך שמריץ את תוכנית מקבל –
etc/passwd/ולכן יכול לגשת ל root באופן זמני את כל הרשאות הגישה של
מערכות הפעלה - תרגול 1 36(c) 2003 ארז חדד
System Monitoring - topמציגה את הסטטסיטיקות לגב ביצועי המערכת
כמות התהליכיםCPU usage תפוסת זכרון פיזי וswap תהליכים שצורכים הכי הרבה זמןCPU
iostat מידע על ביצועי – IOשל הדיסק df -h מידע על הדיסקים (כל ה – mounted disks(du -h) גודל הספריות והקבצים – du -hs(סיכום - quota –v גודל הדיסק המרבי המוקצה עבור המשתמש –w כל המשתשים שכרגע – logged-in והפקודה שהם מריצים
מערכות הפעלה - תרגול 1 37(c) 2003 ארז חדד
strace – System Call Tracer
?אילו קריאות מערכת מופעלות בעת ביצוע התוכנית הבאה
#include <stdio.h>
int main(void)
{
printf("Hello, world!");
return 0;
} אילו קריאות מערכת מופעלות ע"י תוכניתX בהינתן קובץ הרצה של X בלבד? ?מהם הפרמטרים של הקריאות האלו? מהו ערך החזרה? האם הם הצליחו
?errno לאחר החזרה? מהי המחרוזת הסימבולית המתאימה ל- errnoמהו יותר פרטים בחומר נוסף באתר הקורס