Presentation is loading. Please wait.

Presentation is loading. Please wait.

Sami Shamoon College of Engineering Introduction to Operating Systems

Similar presentations


Presentation on theme: "Sami Shamoon College of Engineering Introduction to Operating Systems"— Presentation transcript:

1 Sami Shamoon College of Engineering Introduction to Operating Systems
SCE Sami Shamoon College of Engineering Introduction to Operating Systems Shayke Bilu January 2010

2 נושאי הלימוד מבוא למערכות הפעלה תהליכים תזמון תהליכים
תקשורת בין תהליכים פנימיים נעילה (תקיעה) תהליכים קלי משקל ניהול זיכרון זיכרון וירטואלי מדיניות ניהול זיכרון וירטואלי מערכת הפעלה עם קוד פתוח Operating Systems Shayke Bilu

3 פרק ראשון – מבוא למערכות הפעלה
מהי מטרת לימוד עקרונות מערכות הפעלה? מהי חשיבותה של מערכת הפעלה? מהי מערכת הפעלה? קצת היסטוריה. מהם העקרונות המנחים של מערכות הפעלה? כיצד עובדת מערכת הפעלה? ארכיטקטורה ומבנה של מערכת הפעלה. Operating Systems Shayke Bilu

4 מטרת לימוד הנושא בקורס זה נלמד מהי מערכת הפעלה, כיצד היא עובדת ונתנסה בתרגול במערכת ההפעלה – יוניקס נבחן את עקרונות מערכות הפעלה. נראה וננתח כיצד עובדות מערכות הפעלה שונות. נציג את האלגוריתם והמבנה הפנימי של מערכת הפעלה. נבחן את הבעיות, הפתרונות, היתרונות והחסרונות בעת תכנון ובניית מערכת הפעלה. Operating Systems Shayke Bilu

5 אפליקציות ויישומי תוכנה, תוכנת מערכת
מרכיבי מערכות מחשב אפליקציות ויישומי תוכנה, תוכנת מערכת וציוד חומרה פיזי אפליקציות ויישומי תוכנה: תוכנת ניהול בנקים, לוח טיסות, תוכנה לחישוב והפקת משכורות ועוד … תוכנת מערכת: מערכת הפעלה, מאגרי נתונים, מעבדים, עורכים, מחוללי יישומים ועוד … ציוד חומרה פיזי: דיסק קשיח, ספק כוח, מקלדת, עכבר, מסך, מדפסת, מעבד, חיווט, כרטיסי מחשב, מודם ועוד… Operating Systems Shayke Bilu

6 מהי תוכנת מערכת? תוכנת מערכת מאפשרת ומספקת סביבה וכלי עבודה ממוחשבים להרצת יישומים ותוכנות במחשב. משמשת כמישק שבין התוכנה ויישומיה לבין ציוד החומרה הפיזי המותקן במחשב. מאפשרת שימוש מקבילי יעיל של רכיבי המחשב ע”י ביצוע תיאום בין צורכי התוכנה, משאבי המחשב והנחיות המשתמש. Operating Systems Shayke Bilu

7 מהי חשיבותה של מערכת ההפעלה?
מערכת ההפעלה היא הבסיס האיתן עליו מורכבות, מותקנות, רצות ,מופעלות ומבוצעות כל עבודות המחשוב. מידע וידע על התוכן הפנימי, מורכבות התכנון ועקרונות ההפעלה של מערכות הפעלה הוא חיוני על מנת להשיג יעילות בנושאים הבאים: 1. בניית יישומים אפליקטיביים ונוחים למשתמש. 2. החלטה על איזה מחשב ניתן להריץ איזו תוכנה. 3. ניתוח, תכנון, תכנות וניהול מערכות מידע באופן יעיל. Operating Systems Shayke Bilu

8 מהי מערכת הפעלה? תוכנה גדולה (יחסית) ומורכבת ,לעיתים מכמה תוכנות שונות המשולבות יחד. תוכנה בעלת שני עקרונות בסיסיים: 1. משמשת כמישק בין המשתמש והחומרה, ע”י הדמיה של מכונה וירטואלית למשתמש. 2. מאפשרת ניהול יעיל של כלל משאבי המחשב שברשות המשתמש, פנימיים וחיצונים גם יחד. Operating Systems Shayke Bilu

9 החיים ללא מערכת הפעלה כל מתכנת היה חייב:
1. להכיר את החומרה אותה הפעיל לעומק. 2. להיות מסוגל להגיע לחומרה ולנהל אותה פיזית. כל תוכנית הייתה: 1. צריכה להכיל קוד עבור ביצוע כל תהליך. 2. מבצעת טעות אחת או יותר בעת הריצה. Operating Systems Shayke Bilu

10 המבנה הגראפי של מערכת ההפעלה
System Calls Users and User Programs Operating System Hardware CPU & Memory I/O Devices M I/O I/O I/O Operating Systems Shayke Bilu

11 היסטוריה: דור ראשון (1945-1955)
שפורפרות ואקום. ללא מערכת הפעלה. התוכנית נכתבה ע”י הרמת/הורדת מתגים. התוכניות יועדו לביצוע פעולות חשבון, מתמטיקה ואלגברה בסיסיות, חישובי שטחים, קוסינוס/סינוס וכדומה. פותחה כתוצאה מהצורך לחשב מסלולים בליסטיים מדויקים לטילים במהלך מלחמת העולם השניה. Operating Systems Shayke Bilu

12 היסטוריה: דור שני (1955-1965) טרנזיסטורים.
מחשבים המתמחים בחישובים מסחריים. מחשבים יקרים מאד, איטיים מאד, גדולים פיזית, דורשים צוותי תכנות, אחזקה, תפעול גדולים. בעלי מערכות הפעלה כבדות ומורכבות. תהליכי ריצה באצווה, קליטת עבודה, הרצה, ביצוע פעולות קלט, עיבוד והפקת דוחות פלט. Operating Systems Shayke Bilu

13 היסטוריה: דור שני (1955-1965) המשך
הקמת תור עבודות (בעת ובעונה אחת רצו מספר עבודות במקביל תוך כדי ניהול תור בזמן אמיתי) ניהול תור במצב On - Line ניהול תור במצב Off - Line ניהול תור במצב Off - Line מחליף תהליך איטי של ניהול ציוד קלט/פלט, יחד עם מחשבים המיועדים לכך. המערכת הראשית מדמה מצב בו הציוד ההיקפי מנוהל כחלק מציוד היקפי של המחשב. Operating Systems Shayke Bilu

14 היסטוריה: דור שני (1955-1965) המשך
היישומים היו ברובם מדעיים ונועדו לצורך חישובים הנדסיים שונים כגון חישוב משוואות ברמה גבוהה. שפות שהיו בשימוש בדור זה: COBOL FORTRAN RPG PASCAL PL1 Operating Systems Shayke Bilu

15 היסטוריה: דור שלישי (1965-1980)
מעגלים משולבים בגודל “זעיר” ארוזים ב”ג’וקים” שבבי סיליקון בסיסים. מעבדי קלט/פלט המסוגלים לעבוד באופן מקבילי עם מספר יחידות CPU בשיטת ריבוי-משימות. ניהול תור בזמן אמיתי, תוך כדי ניצול מספר ערוצים בו זמנית. שימוש בחלוקת זמן (במסופים ובעמדות עבודה) שימוש בחלוקת תדר לריבוב תשדורות. Operating Systems Shayke Bilu

16 היסטוריה: דור שלישי (1965-1980) המשך
מערכת הפעלה מרובת משימות, מתקיים ניהול של ריבוי משתמשים/פונקציות כגון UNIX שעבדה בעיקר במחשבי VAX. תחילת ייצור מחשבי המיני – היו זולים,אמינים ודרשו פחות אחזקה ממחשבי ה- Main Frames היו בעלי יכולת חישוב מהירה, יכולת ניהול חומרה מוגבלת ותוכנה מהירה יחסית. מזעור מעגלים והקטנת כל רכיבי המחשב, ייצור במדינות המזרח והוזלה של החומרה באופן ניכר. Operating Systems Shayke Bilu

17 היסטוריה: דור רביעי (1980-1990)
שילוב ואינטגרציה בין יישומים/תוכנות/חומרות מחשבים אישיים בעלות יחסית נמוכה, לכל מי שחפץ בכך ובעל יכולת כלכלית ממוצעת. מערכות הפעלה נפוצות: CP/M UCSD MS-DOS UNIX NOVELL MAC X Operating Systems Shayke Bilu

18 היסטוריה: דור חמישי 1990-2000 רשתות תקשורת מבוססות מודל שרת/לקוח.
לקוחות: מחשבים אישיים, מחשבי יד, תחנות עבודה, ריצה של תוכנות ע”ג פלטפורמת מערכת הפעלה חלונות Windows XP (3.11/95/98/ME) או לחילופין ע”ג מערכות UNIX שרתים: מערכות הרצות ע”ג פלטפורמת חלונות NT או לחילופין ע”ג מערכות UNIX אינטרנט: מערכות הפעלה רחבות פס (WWW) שילוב פרוטוקולים כגון- TCP/IP מודלים כ- OSI ומערכות כגון -WAP Operating Systems Shayke Bilu

19 היסטוריה: דור שישי מערכות מבוססות יוניקס ביניהן: IRIX, SOLARIS, AIX, SUNOS, HP-UK משפחת BSD כוללת את: OS X, FREEBSD, NETBSD, OPENBSD משפחת לינוקס הכוללת הפצות רבות בהן: דביאן, לינוקס, אובונטו, SUSE, REDHAT, FEDORA CORE מנדריבה, ג'נטו, סלאקוור. מערכות הפעלה למחשבים ניידים כגון: Windows Vista, Windows 7, Google Chrom, מערכות הפעלה למחשבת מחברת כגון: Mac OS מערכות הפעלה לטלפונים ניידים כגון: אנדרואיד Operating Systems Shayke Bilu

20 מערכות הפעלה לפי יצרן - Windows
משפחת Windows: מערכת הפעלה נפוצה מאוד, של חברת מיקרוסופט Windows Windows 95 Windows 98 Windows Me Windows NT Windows Windows XP Windows Alta Vista Windows 7 :Windows CE גירסת חלונות המשמשת למחשבי כף-יד Operating Systems Shayke Bilu

21 מערכות הפעלה לפי יצרן – UNIX/LINUX
משפחת Linux/Unix: לינוקס: מערכת הפעלה חופשית דביאן GNU/ לינוקס: SUSE Redhat fedora מנדרייק ג'נטו Knoppix: Slackware בנוסף, יש עוד עשרות הפצות לינוקס עם קוד פתוח אחרות Operating Systems Shayke Bilu

22 מערכות הפעלה לפי יצרן – BSD
משפחת BSD: BSD FreeBSD NetBSD OpenBSD OSX מערכת ההפעלה האחרונה של מקינטוש, מבוססת על ניב הדומה למערכת ה- BSD Operating Systems Shayke Bilu

23 מערכות הפעלה לפי יצרן - Windows
משפחת Apple Macintosh: System Mac OS 8 / 9 / 10 Operating Systems Shayke Bilu

24 הדגשים במערכות הפעלה מערכת הפעלה מאפשרת:
מישק חזק, פשוט ויעיל למשתמש. שירותים ברמה גבוהה לכל מתכנת, מפעיל ומשתמש. מערכת הפעלה מאפשרת גישה אך ורק ע”י מערכת תאים, כל אחד מהם אחראי על ביצוע פונקציה/ות לא ניתנת גישה ישירה למשתמשים ומתכנתים לחומרה אלא דרך הרשאות מערכת. קיימות מערכות הפעלה בעלות קוד פתוח (UNIX) אשר מאפשרות למפעיל המחשב לתכנת ולנהל את מערכת ההפעלה שלו באופן עצמאי. Operating Systems Shayke Bilu

25 מושגים במערכות הפעלה גרעין מערכת Kernel
התוכנית הראשית של כל מערכת הפעלה, מכילה בתוכה רשימות קוד לכל שימושי המערכת, תמיד נמצאת בתוך הזיכרון המקדמי primary memory תוכנות לניהול ציוד היקפי תוכניות אשר מאפשרות מיישק פשוט, מתמשך לכל ציוד הקלט פלט המחובר למחשב חלק בלתי נפרד מגרעין המערכת Operating Systems Shayke Bilu

26 מושגים במערכות הפעלה (המשך)
תוכנית קובץ ממשי בשפת מכונה על רכיב פיזי (דיסק, דיסקט, CD-ROM, מיני דיסק, פלאש) תהליך תוכנית בעת ביצוע - אוסף מבנה המידע במערכת ההפעלה, משאבי המערכת שבבעלות תוכנית הרצה בזמן נתון. Operating Systems Shayke Bilu

27 קידום תוכנית לקראת ריצה
Source Code Object File Executable Compile Link Libraries and other Object files Operating Systems Shayke Bilu

28 RAM 1. Program performs trap 2. OS determines service number
User Program #2 User Mode RAM 1. Program performs trap 2. OS determines service number 3. Service is located and executed. 4. Control returns to user program. User Program #1 trap 002 4 1 3 Based on a diagram from “Modern Operating Systems” by Andrew Tanenbaum. 2 Kernel System/Kernel Mode Operating Systems Shayke Bilu

29 מבנה מערכת הפעלה מערכת עשויה מקשה אחת מערכת היררכית המבוססת על שכבות
מערכת מכונה וירטואלית מיקרו גרעין - מתאים למודל שרת/לקוח Operating Systems Shayke Bilu

30 מערכת עשויה מקשה אחת למערכת ההפעלה אין מבנה אלא היא אוסף של פרוצדורות המוגדרות היטב ע”י מישק פקודות קריאה תוכנית - המישק למערכת ההפעלה הוא דרך מערכת קריאה של משגיח-על SVC Interrupt Handler Service routine SVC Program Operating Systems Shayke Bilu

31 מערכת עשויה מקשה אחת (המשך)
הקוד של מערכת ההפעלה הוא תוכנית כורכת אובייקטים וקוד המקור מחולק באופן לוגי ל: תוכנית ראשית של מערכת ההפעלה שגרת קריאה למערכת ההפעלה פרוצדורה המיועדת לשפר את ביצועי שגרות השרות ע”י הגדלת התועלת והיעילות Operating Systems Shayke Bilu

32 מערכת היררכית המבוססת על שכבות
מבנה אצווה BATCH של מערכת ההפעלה: 0. ניהול יחידת העיבוד המרכזית- CPU 1. ניהול הזיכרון - Swapping 2. תקשורת בין המפעיל לתהליך 3. ניהול רכיבי קלט/פלט 4. תוכניות המשתמש 5. פונקציות המפעיל של מערכת ההפעלה Operating Systems Shayke Bilu

33 מערכת היררכית מבוססת שכבות (המשך)
0. מיתוג תהליכים, ריבוי תוכניות, תזמון יחידת העיבוד המרכזית על כל יחידות המשנה שלה 1. זיכרון ושטח אחסון זמני, ניהול דיסק 2. פענוח הודעות, פונקציות לניהול עבודות - JCL 3. ניהול רכיבי קלט/פלט 4. תוכניות המשתמש 5. מפעיל המערכת ביצוע סינכרון בין שכבות: חומרה ותוכנה, מנגנון הפסיקות. כל שכבה במודל מספקת מספר “מכונות וירטואליות” כאשר לכל “מכונה” כזו יש מאפיינים ייחודיים חד ערכיים המאפיינים רק אותה Operating Systems Shayke Bilu

34 Physical Hardware Virtual Machine OS1 OS2 OS3 OS4 User Programs
מכונה וירטואלית Physical Hardware Virtual Machine OS1 OS2 OS3 OS4 User Programs “מכונה וירטואלית” מספקת “N” העתקים של שימוש בחומרה פיזית ע”י תוכנה. באופן כזה מערכות הפעלה שונות יכולות לעבוד באותו זמן “עם אותה תוכנה ועם אותו ציוד” ללא התנגשויות וללא "תקיעות" Operating Systems Shayke Bilu

35 מה לא עובד? ומה בכלל קורה כאן?
מערכת הפעלה היא תוכנית גדולה המספקת את כל מכלול השירותים הדרוש להפעלת מערכת ממוחשבת. כל פעם שאתה מוסיף חומרה/תוכנה חדשים עליך: לבצע התקנה מלאה וחוקית עבור הרכיב (חומרה/תוכנה). לבצע קומפילציה לגרעין המערכת להכרת הרכיבים בדרך כלל מתבצעת במהלך התקנת הרכיב והקמת מע' קבצי ה- DLL לבצע אתחול (BOOT) אחרי ההתקנה, לעדכון גרעין מערכת ההפעלה ולסיום ההתקנה באופן מסודר. Operating Systems Shayke Bilu

36 מיקרו גרעין - מתאים למודל שרת/לקוח
מערכת הפעלה היא מרכז מינימלי-הגרעין kernel- OS Kernel Prog1 Prog2 File Server Terminal Memory Messages for Communication Operating Systems Shayke Bilu

37 מיקרו גרעין - מתאים למודל שרת/לקוח
הגרעין של מערכת ההפעלה מכיל את הפונקציות: ניהול זיכרון ניהול יחידת העיבוד המרכזית ביצוע תקשורת בין תהליכים (משלוח הודעות) תמיכה וניהול רכיבי קלט/פלט פונקציות נוספות מסופקות ע”י שכבת ניהול שאחראית על התהליכים של המשתמש Operating Systems Shayke Bilu

38 אפיון גרעין מערכת ההפעלה kernel -
משתמש בהעברת הודעות בין רכיבי תוכנה/חומרה ומשתמשים במערכת אחראי ומתפעל את החלפת התהליכים בשרת מכיל ומטפל במספר רב של ישויות בעת ובעונה אחת פשוט מאד לכתיבה ולשימוש בתחנת מערכת הפעלה תכנונו מושלם לצורכי הפצת מערכת בעל יכולת עשייה וביצוע מוגבלות ומוגדרות מראש Operating Systems Shayke Bilu


Download ppt "Sami Shamoon College of Engineering Introduction to Operating Systems"

Similar presentations


Ads by Google