מרץ 2002אלן אזאגורי ©1 זיכרון משותף מבוזר Distributed Shared Memory.

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

Processes and threads. תהליכים ותתי תהליכים תהליכים –כל תוכנית שרצה היא תהליך (process) –ניתן להתפצל מתהליך אחד למספר תהליכים, בעזרת הפקודה fork(). הרבה.
ממיבחניםC שאלות ++.
מבוא למדעי המחשב לתעשייה וניהול
בתרגול הקודם הורשה: –ניתן להרחיב רק מחלקה אחת –כל מה שלא private – עובר בהורשה –המילה השמורה super –יצירת היררכיה –Object היא שורש ההיררכיה –דריסה אופרטור.
1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 תהליכים - דייאט : חוטים  מוטיבציה  חוטי משתמש וחוטי מערכת  תמיכת מערכת ההפעלה  דוגמאות.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 מערכות קבצים מבוזרות  מבוא  מבנה כללי  דוגמה : Network file system  דוגמה : Google file system.
רקורסיות נושאי השיעור פתרון משוואות רקורסיביות שיטת ההצבה
1 מבוא למדעי המחשב משתנים. 2  סוגי משתנים בשפת C  ההבדלים בין סוגי המשתנים השונים.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
מערכות הפעלה תרגול 10 – זיכרון וירטואלי ב- Linux.
נובמבר ניהול תהליכים במערכת מרובת מעבדים Process Management in Multiprocessor Systems.
אוקטובר מבנה מערכות הפעלה אוקטובר אסף שוסטר שקפים ע"פ אלן אזגורי/חגית עטיה.
הגנה במערכות מתוכנתות תרגול 1 – המחשב האישי הערה: שקפים אלה אינם מהווים תחליף לחומר התרגולים המפורסם באתר הקורס, ומשמשים כעזר הוראה בלבד.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. חלוקת זכרון קבועה מול דפדוף.
מבוא לשפת C חידות ונקודות חשובות נכתב על-ידי יורי פקלני. © כל הזכויות שמורות לטכניון – מכון טכנולוגי לישראל.
מערכות הפעלה תרגול 6 – חוטים ב-Linux.
ינואר 2003אלן אזאגורי ©1 Object Storage אלן אזאגורי.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
מערכות הפעלה ( אביב 2006) חגית עטיה © 1 תהליכים - דייאט : חוטים  מוטיבציה  חוטי משתמש וחוטי מערכת  תמיכת מערכת ההפעלה  דוגמאות.
מערכות הפעלה חזרה. מערכות הפעלה - שאלות חזרה2 (c) רסקין לאוניד 2005 שאלה1.
מערכות הפעלה ( אביב 2009) חגית עטיה © 1 תהליכים - דייאט : חוטים  מוטיבציה  חוטי משתמש וחוטי מערכת  תמיכת מערכת ההפעלה  דוגמאות ושימושים.
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מימוש מערכת הקבצים  תכונות של דיסקים.  מימושים בסיסיים.  קצת על מימושים מתקדמים.  אמינות מערכת הקבצים.
A. Frank File Organization Indexed-Sequential File Introduction Thanks to Tamar Barnes.
1 Formal Specifications for Complex Systems (236368) Tutorial #5 Refinement in Z: data refinement; operations refinement; their combinations.
(C) Yohai Devir January מבנה מחשבים ספרתיים תרגול מס ' 12: זיכרון וירטואלי ב - VAX מבוסס על תרגולים מאת מורן גביש ואורן קצנגולד.
מרץ 2002אלן אזאגורי ©1 ניהול דיסקים Disk Management.
משטר סטטי שערים לוגיים Wired Drives – © Dima Elenbogen 2009, Moshe Malka :29.
חישוב ואופטימיזציה של שאילתות חלק 1
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
מרץ 2002אלן אזאגורי ©1 מבנה מערכות הפעלה מרץ אלן אזאגורי (מרצה אחראי) ארז חדד.
מרץ 2002אלן אזאגורי ©1 זימון תהליכים Process Scheduling.
מערכות הפעלה ( אביב 2009) חגית עטיה ©1 מערכת קבצים log-structured  ה log הוא העותק היחיד של הנתונים  כאשר משנים בלוק (data, header) פשוט כותבים את הבלוק.
תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. ניהול טבלת הדפים. מדיניות החלפת דפים.
תהליכים - דייאט : חוטים  מוטיבציה  חוטי משתמש וחוטי מערכת  תמיכת מערכת ההפעלה  דוגמאות.
מרץ מערכות קבצים File Systems. מרץ עמוד נושאים מבוא –מטרת מערכת קבצים מנשק למערכת קבצים –פעולות על קבצים –סמנטיקה –ארגון קבצים –הגנה מבנה.
מערכות הפעלה ( אביב 2006) חגית עטיה © 1 ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. חלוקת זכרון קבועה מול דפדוף.
מרץ 2002אלן אזאגורי ©1 חוטים Threads. מרץ 2002 אלן אזאגורי ©2עמוד נושאים הגדרות –חוטים –חוטים לעומת תהליכים תמיכת מערכת ההפעלה בחוטים דוגמאות –Mach –Windows.
טיב פני שטח (טפ"ש) טיב פני שטח- רמת החלקות של המשטח.
אלכסנדר ברנגולץ דואר אלקטרוני: אלכסנדר ברנגולץ דואר אלקטרוני: פעולות מורפולוגיות.
עקרון ההכלה וההדחה.
מערכות הפעלה ( אביב 2006) חגית עטיה © 1 סיכום הקורס.
מבוא למדעי המחשב, סמסטר א ', תשע " א תרגול מס ' 1 נושאים  הכרת הקורס  פסאודו - קוד / אלגוריתם 1.
Markov Decision Processes (MDP) תומר באום Based on ch. 14 in “Probabilistic Robotics” By Thrun et al. ב"הב"ה.
A. Frank File Organization Introduction to Pile File.
תוכנה 1 - תרגול שיעור 10 Pointers (2) שולי לב יהודי
A. Frank File Organization Hardware Size Parameters.
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
ניהול זיכרון  מבוא : מטרות ניהול הזיכרון.  מנגנונים : מרחב כתובות וירטואלי / פיזי. ניהול טבלת הדפים. מדיניות החלפת דפים.
אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 7 ISP דוגמא נוספת.
בקרה תומר באום ב"הב"ה. סוגי בקרה חוג פתוח Open-loop control : אנו מכוונים את הרובוט למצב הבא שהוא אמור להיות בו לפי מודל מסוים, כמו שעשינו בקינמטיקה הפוכה.
Text to speech In Mobile Phones איתי לוי. הקדמה שימוש בהודעות טקסט על המכשירים הסלולארים היא דרך תקשורת מאוד פופולארית בימינו אשר משתמשים בה למטרות רבות,
מערכות הפעלה ( אביב 2008) חגית עטיה © 1 מערכת הקבצים  מבוא : מטרות מערכת קבצים  מנשק המשתמש : פעולות על קבצים, ארגון קבצים, הגנה  תכונות של דיסקים.
1 חישוב מקבילי לכל תלמיד/ה פרופ' רן גינוסר הנדסת חשמל ומדעי המחשב הטכניון
מבוא למדעי המחשב לתעשייה וניהול הרצאה 7. סברוטינות subroutines.
Computer Architecture and Assembly Language
תקשורת ומחשוב תרגול 1 IP, Classes and Masks.
ממשקים - interfaces איך לאפשר "הורשה מרובה".
פרק רביעי – תקשורת בין תהליכים פנימיים
תרגול 12 – ניהול זיכרון ב-Linux: המשך
בחירת חומר גלם כתב: עמרי שרון.
סוגי משתנים קרן כליף.
תהליכים-דייאט: חוטים מוטיבציה חוטי משתמש וחוטי מערכת
Shell Scripts בסביבת UNIX
Computer Architecture and Assembly Language
פרק 3 - תהליכים.
Presentation transcript:

מרץ 2002אלן אזאגורי ©1 זיכרון משותף מבוזר Distributed Shared Memory

מרץ 2002 אלן אזאגורי ©2עמוד נושאים זיכרון משותף בין מעבדים מימושים של גישה לדף מרוחק קונסיסטנטיות שיתוף דפים לעומת שיתוף אוביקטים

מרץ 2002 אלן אזאגורי ©3עמוד מערכת מרובת מעבדים עם זיכרון משותף פיזי snoopy cache –קריאה cache hit – מהמטמון cache miss – דרך ה-bus –כתיבה write-through מטמונים אחרים מאזינים ב- busופוסלים את העותק המקומי –הטיפול הוא ברמת cache lines (כ מילים) וריאציות –העברת מידע ישירות בין המטמונים מעבד מטמון מעבד מטמון מעבד מטמון מעבד מטמון זיכרון bus

מרץ 2002 אלן אזאגורי ©4עמוד ארכיטקטורת טיפוסית למערכת מרובת מעבדים איך תהליכים הרצים על מעבדים שונים מתקשרים? 1.שליחה וקבלת הודעות רשת תקשורת רשת תקשורת מעבד זיכרון מעבד זיכרון..... sendreceive

מרץ 2002 אלן אזאגורי ©5עמוד ארכיטקטורת אלטרנטיבית... זיכרון משותף מבוזר איך תהליכים הרצים על מעבדים שונים מתקשרים? 1.שליחה וקבלת הודעות או 2.זיכרון משותף מדומה  אשליה שהתהליכים רצים על אותו מעבד רשת תקשורת רשת תקשורת מעבד זיכרון מעבד זיכרון.....

מרץ 2002 אלן אזאגורי ©6עמוד זיכרון משותף מבוזר מימוש ניתן להתלבש על מנגנון ה-page fault –גישה לדף לא בזיכרון המקומי גורמת ל-page fault ארבע אפשרויות –הדף בזיכרון המקומי והגישה חוקית –הגישה אינה חוקית... –הדף הינו בזיכרון של מחשב אחר מצריך גישה לדף המרוחק –הדף אינו בזיכרון של אף מחשב

מרץ 2002 אלן אזאגורי ©7עמוד מימושים אפשריים לגישה לדף מרוחק Remote –הדף נשאר במקום, והגישה מבוצעת מרחוק –בדומה ל-function shipping Migrate –הדף מועבר, והגישה מבוצעת מקומית –בדומה ל-data shipping Replicate –הדף מועתק, והגישה מבוצעת מקומית

מרץ 2002 אלן אזאגורי ©8עמוד מימושים אפשריים לגישה לדף מרוחק ניתן לבחור מדיניות שונה לקריאה ולכתיבה –כמו כן, ניתן להחליף מדיניות עבור דף לפי תבניות הגישה אליו אפשרויות נפוצות replicate migrate remote קריאה כתיבה 1234

מרץ 2002 אלן אזאגורי ©9עמוד מימושים אפשריים לגישה לדף מרוחק read remote/write remote –הבקשות מבוצעות ע"י שרת מרכזי –או כל חלק מהזיכרון באחריות מעבד אחר מבטיח קוסיסטנטיות ופשוט למימוש  דורש תקשורת לכל קריאה וכתיבה read migrate/write migrate –מעבירים את הדף למעבד שרוצה לבצע את הגישה יעיל מאוד כאשר יש מעט שיתוף  דפים עלולים לנדוד כל הזמן במקרה של שיתוף

מרץ 2002 אלן אזאגורי ©10עמוד מימושים אפשריים לגישה לדף מרוחק read replicate/write migrate –הדף משוכפל עבור קוראים –כותב גורם לפסילת העותקים ומקבל את הדף לכתיבה אין נדידת דפים בשיתוף לקריאה  אך בשיתוף לכתיבה, עלולה להיות נדידת יתר של דפים read replicate/write replicate –מחייב מנגנון לסידור הגישות (שמירה על קונסיסטנטיות) עשוי להיות יעיל מאוד לקריאות ולכתיבות גם כשיש שיתוף  בד"כ המנגנון דורש פעולות מפורשות ע"י המתכנת

מרץ 2002 אלן אזאגורי ©11עמוד שכפול דפים ניתן להחזיק עותק של דף בכל מעבד –קריאה יכולה להתבצע בו-זמנית ע"י מעבדים שונים מהעותק המקומי אך איך נשמור על קונסיסטנטיות? –צריך פרוטוקול בעת כתיבה לעותקים –בדומה לניהול מטמונים במערכות מרובות מעבדים עם זיכרון משותף פיזי

מרץ 2002 אלן אזאגורי ©12עמוד סוגי קונסיסטנטיות ניתן להגדיר רמות שונות של קונסיסטנטיות –מחמירה – strict consistency מתנהג כאילו כל התהליכים רצים באותו מעבד וזיכרון –סדרתית – sequential consistency הפעולות של כל מעבד מופיעות לפי הסדר שהן קרו –ועוד... נסיבתית – causal consistency מהו היתרון של רמת קונסיסטנטיות חלשה? –לרוב, ניתן לממש מנגנונים יעילים יותר גורם נוסף חשוב הוא השקיפות למשתמש... –מודל התכנות בבניית יישומים

מרץ 2002 אלן אזאגורי ©13עמוד Strict Consistency קריאה של משתנה משותף x תחזיר את הערך האחרון שנכתב ל-x –נניח ש-x מאותחל בערך 0 זמן p1 w(x)1 p2 r(x)1 זמן p1 w(x)1 p2 r(x)0 

מרץ 2002 אלן אזאגורי ©14עמוד Sequential Consistency מעבד רואה את הפעולות של מעבד אחר לפי הסדר שהן קרו בפועל –נניח ש-x ו-y שייכים לאותו דף משותף ומאותחלים בערך 0 –פחות מחמיר מ-strict consistency זמן p1 w(x)1 w(y)1 p2 r(x)0 r(y)1 זמן p1 w(x)1 w(y)1 p2 r(y)1 r(x)0 

מרץ 2002 אלן אזאגורי ©15עמוד Entry Consistency הגדרה –כל משתנה משותף משויך למשתנה סנכרון (מנעול) כמה משתנים יכולים להשתייך לאותו מנעול –יש להשתלט על המנעול לפני גישה למשתנים מובטח שכל הכתיבות הקודמות מתבצעות עד סיום ה- acquire כמו כן, הערכים החדשים מעודכנים מקומית עם סיום ה- release

מרץ 2002 אלן אזאגורי ©16עמוד Entry Consistency –גישה למשתנים משותפים מוגנת בתוך קטע קריטי למשל, הגנה ע"י מוניטור –גישה בו זמנית למשתנים שונים אפשרית בקטעים קריטיים שונים בלתי תלויים מימוש פשוט ויעיל

מרץ 2002 אלן אזאגורי ©17עמוד Object-Based לעומת Page-Based מהי היחידה הבסיסית לשיתוף בין תהליכים? –דף – נוח עבור מערכת ההפעלה, אך מנותק מהסמנטיקה של התכנית –אוביקט – מתאים לסמנטיקה של התכנית, אך בד"כ זר למערכת ההפעלה Object-Based –נעשה בסביבת שפות תכנות: Linda, Orca, Java –גישה לאוביקט היא דרך methods (protected, synchronized)

מרץ 2002 אלן אזאגורי ©18עמוד בעיה נפוצה בשיתוף דפים: False Sharing הגדרה –תהליכים ניגשים למשתנים שונים אך המשתנים נמצאים באותו דף משותף הבעיה –אין שיתוף אמיתי אך משלמים את מחיר שמירת הקונסיסטנטיות בדף הפיתרון –הקצאה חכמה של משתנים לדפים בעיתי במערכים –הקטנת גודל הדף –דפים "מדומים" קטנים –overlays –...