מערכות הפעלה קורס מס ' 234120. מבוא אדמיניסטרציה. מהי...

Preview:

Citation preview

מערכות הפעלה234120קורס מס'

מבוא אדמיניסטרציה.

מהי מערכת הפעלה. ארגון מערכות הפעלה.

February 03 © חגית עטיה

אדמיניסטרטריוויה א מרצים

פרופ/ח אסף שוסטר )אחראי(

מר ארז חדד

מתרגלים ראשיים

???

אתר הקורס מכיל את הסילבוס

February 03 © חגית עטיה

אדמיניסטרטריוויה ב)ספר הקורס )ראשי

Silberschatz and Galvin,Operating Systems Concepts (5th ed.)Wiley

)ספר הקורס )משניBovet and Cesati,Understanding the Linux Kernel (2nd ed.)O’Reilly

February 03 © חגית עטיה

אדמיניסטרטריוויה ג:ציונים סופיים מבוססים על

( 1 רטובים + 4תרגילי בית.)יבש אופצ'( )??? אחוזים -???( 100בחינה סופית.)אחוזים .ייתכן שינוי ביחסי המשקל

.ציון התרגילים תקף ולא מגן

הנחותכל תנאי-הקדם יאכפו, ולא תהינה!

.אין העברת ציוני תרגילים

February 03 © חגית עטיה

מטרות הקורס במערכות עקרונות התכנון והשימושהבנה של

הפעלה.

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

:הבנה של מערכת הפעלה אחתLinux.

מערכת הפעלה.יסודות של תכנות

תכנון מערכות תוכנה גדולותעקרונות של.

February 03 © חגית עטיה

מבנה הקורס:הרצאות

עקרונות בסיסיים

ומערכות אחרות”Unix“מעט דוגמאות מ

:תרגולים

Linuxקוד מערכת הפעלה :תרגילי-בית

תכנות בעזרת קריאֹות מערכת-הפעלה

תכנות בתוך גרעין מערכת ההפעלה

February 03 © חגית עטיה

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

מבוא למערכות הפעלה מבנה מערכות הפעלה

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

.מערכות קבצים חדשניות.תכנות מקבילי ומבוזר.מערכות מבוזרות

הקורסים הקודמים לא יינתנו יותר!

February 03 © חגית עטיה

מהי מערכת הפעלה? שכבת תוכנה לניהול והסתרת פרטים של חומרת

המחשב.

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

מנהלת את משאבי המערכת ומשתפת אותם ביןתהליכים, תוכניות, ומשתמשים.

February 03 © חגית עטיה

תפקיד מערכת ההפעלהמאפשרת להריץ תוכניות

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

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

מערכת הפעלה

אפליקציות

CPU

memory

device device device

February 03 © חגית עטיה

שיתוף משאביםמשתמש רוצה את כל המשאבים:

זמן מעבדזיכרוןקבציםאמצעי קלט / פלטשעון

של אשליהמערכת ההפעלה נותנת לכל משתמש מערכת שלמה משל עצמו.

February 03 © חגית עטיה

התפתחות מערכות הפעלהחומרה יקרה ואיטית, כוח-אדם זול

Batch jobs 24, ניצול החומרהx7: IBM S/360

חומרה יקרה ומהירה, כוח-אדם זולInteractive time-sharing: Unix

חומרה זולה ואיטית, כוח-אדם יקר :מחשב אישי לכל משתמשMS-DOS

February 03 © חגית עטיה

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

:ריבוי משימותWindows NT, OS/2, ... ,שיתוף משאבים בסיסי: דיסקים, מדפסות

...בחזרה לעבר

.רשתות מהירות :הרשת היא המחשבSETI@home, Grid Computing

February 03 © חגית עטיה

מבנה המחשבהתנהגות מערכת ההפעלה מוכתבת )חלקית( על-ידי

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

החומרה יכולה לפשט / לסבך משימות מערכת ההפעלהPCישנים לא סיפקו תמיכה לזיכרון וירטואלי

February 03 © חגית עטיה

מנגנוני חומרה לתמיכה במערכת ההפעלה

שעון חומרהפעולות סנכרון אטומיותהגנת זיכרוןפעולות בקרת קלט / פלטפסיקות( אופן עבודה מּוגןprotected)פעולות מּוגנותקריאות מערכת-הפעלה

February 03 © חגית עטיה

פקודות מוגנות חלק מפקודות המכונה מותרות רק

למערכת-ההפעלה

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

טיפול בפסיקות(. פקודתhalt.

February 03 © חגית עטיה

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

kernel modeuser mode

יש ארבעה מצבים...(IA32)במעבדי

המצב נשמר באמצעותstatus bit .ברגיסטר מוגן-תכניות משתמש רצות בuser mode.-מערכת ההפעלה רצה בkernel mode.

-המעבד מבצע פקודות מוגנות רק בkernel mode.

February 03 © חגית עטיה

אז איך משתמש ניגש לדיסק?קריאה לפרוצדורת מערכת-הפעלה

(system call)גורמת לפסיקה פרמטר מזהה את קריאת

המערכת שומרת את מצב התוכנית

הקוראת ,מוודאת את הפרמטרים )למשל

מצביעי זבל( דרך לחזור לתוכנית הקוראת

כאשר מסיימים

User mode

Kernel mode

Explorer: read()

טיפול בפסיקה

read() kernel routine

חזרה

February 03 © חגית עטיה

Intelדוגמא: מעבדי :אתחול

( טבלת מזהי פסיקהInterrupt Descriptor Table עם מטפלים לכל )אחד מסוגי הפסיקות.

128ווקטור =( 0x80-מתאים ל )system calls. 3, לקוד משתמש עדיפות 0לקוד גרעין יש עדיפות.

כניסה בIDT מכילה:128, המתאימה לווקטור ,-מצביע לקטע קוד גרעין, וoffset.עבור הקריאה הזו ליזום קריאה לפסיקה זו.3אישורים עבור קוד עם עדיפות

בביצועsystem call:תהליך המשתמש , מציב ברגיסטרeax-את מספר ה system call.המבוקש מבצע פקודת“int 0x80”.)פסיקה יזומה ע"י תוכנה(

February 03 © חגית עטיה

הגנה על הזיכרון מערכת ההפעלה צריכה להגן על תוכניות

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

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

:שיטה פשוטהbase register, limit register לכל אחת מהתוכניות.

.מוגנים בעצמם

.זיכרון וירטואליProg C

Prog B

Prog A

Base registerLimit register

February 03 © חגית עטיה

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

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

-פסיקות וexceptions:נגרמות על-ידי רכיבי חומרה )שעונים, סיום ק/פ(פסיקות Exceptions ,פקודה מפורשת( מגיעות מהתוכנהpage fault)

February 03 © חגית עטיה

רכיבי מערכת ההפעלה

זאת ועוד...אתחולגיבוי...?דפדפן

תהליכיםזיכרוןקלט / פלטזיכרון משנימערכות קבציםהגנהניהול חשבונות משתמשים( ממשק משתמשshell)

February 03 © חגית עטיה

תפירה של הרכיבים

ניהול זיכרון

קלט / פלט

ניהול זיכרון משני

מערכת קבצים

הגנה

ממשק משתמש

שירותי מידע

טיפול בשגיאות

ניהול תהליכים

ניהול חשבונות

February 03 © חגית עטיה

תפירה של הרכיביםWindows NT)גרסה מופשטת(

February 03 © חגית עטיה

ארגון מערכת ההפעלהתקשורת זולה בין מודולים

קשה להבין קשה לשנות או להוסיף

רכיבים

מה האלטרנטיבה?

בראשית... מונוליתית

תוכניות

משתמש

חומרה

גרעין מערכת ההפעלה

February 03 © חגית עטיה

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

תוכניות

משתמש

חומרה

גרעין מערכת -Microההפעלה

kernel

חומרה

תוכניות

משתמש

System processes

Use

r mode

file system scheduling

networking

הגנה ניהול המעבד

זיכרון וירטואלי

February 03 © חגית עטיה

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

גרעין

אמינות גבוהה יותרקל להרחיב ולשנות ביצועים גרועים )מעבר בין

user-mode לבין kernel-mode)

,Mach, OS Xדוגמאות: ~Windows NT

Micro-kernel

חומרה

תוכניות

משתמש

System processes

Use

r mode

file system scheduling

networking

הגנה ניהול המעבד

זיכרון וירטואלי

Recommended