תאר בקצרה את המשמעות והתפקוד של PCB

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

ipcb

תפקידו של PCB בלוק בקרת התהליך:

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

(2) PCB יכול לממש מצב פעולה לסירוגין. בסביבה מרובת תוכניות, התוכנית פועלת במצב עצירה וסע לסירוגין. כאשר תהליך מושעה עקב חסימה, עליו לשמור את פרטי אתר ה-CPU כאשר הוא פועל. לאחר שיש את ה-PCB, המערכת יכולה לשמור את מידע אתר ה-CPU ב-PCB של התהליך שנקטע לשימוש כאשר אתר ה-CPU ישוחזר כאשר התהליך מתוזמן לביצוע שוב. לכן, ניתן להבהיר שוב כי בסביבה מרובת תוכניות, כתוכנית סטטית במובן המסורתי, מכיוון שאין לה אמצעים להגן או להציל את אתר ההפעלה שלה, היא אינה יכולה להבטיח את יכולת השחזור של תוצאות ההפעלה שלה. , ובכך מאבד את פעולתו. מַשְׁמָעוּת.

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

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

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

מידע בבלוק בקרת התהליך:

בבלוק בקרת התהליך, הוא כולל בעיקר את המידע הבא:

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

(2) מצב מעבד: מידע מצב המעבד נקרא גם ההקשר של המעבד, המורכב בעיקר מתכנים של אוגרים שונים של המעבד. רישומים אלה כוללים: ① רגיסטרים למטרות כלליות, הידוע גם כרישומים גלויים למשתמש, אשר נגישים על ידי תוכניות משתמש ומשמשים לאחסון מידע זמני. ברוב המעבדים, ישנם 8 עד 32 אוגרים לשימוש כללי. במחשבים בעלי מבנה RISC יכולים להיות יותר מ-100; ②מונה הוראות, המאחסן את הכתובת של ההוראה הבאה שאליה יש לגשת; ③מילת סטטוס התוכנית PSW, המכילה מידע סטטוס, כגון קוד מצב, מצב ביצוע, דגל מסכת הפסקה וכו’; ④ מצביע מחסנית משתמש, זה אומר שלכל תהליך משתמש יש ערימות מערכת קשורות אחת או כמה, המשמשות לאחסון פרמטרים של תהליך ושיחות מערכת וכתובות שיחה. מצביע הערימה מצביע על החלק העליון של הערימה. כאשר המעבד נמצא במצב ביצוע, חלק ניכר מהמידע המעובד מוכנס למרשם. כאשר התהליך עובר, יש לשמור את מידע מצב המעבד ב-PCB המתאים, כך שהביצוע יוכל להמשיך מנקודת הפסיקה כאשר התהליך מבוצע מחדש.

(3) מידע על תזמון תהליכים: כאשר מערכת ההפעלה מתזמנת, יש צורך להבין את מצב התהליך ומידע על תזמון תהליכים. מידע זה כולל: ① סטטוס תהליך, המציין את המצב הנוכחי של התהליך, המשמש כבסיס לתזמון והחלפת תהליכים ②קדימות תהליכים היא מספר שלם המשמש לתיאור רמת העדיפות של התהליך המשתמש במעבד. התהליך עם עדיפות גבוהה יותר צריך לקבל את המעבד ראשון; ③מידע אחר הנדרש לתזמון תהליכים, הקשור לאלגוריתם תזמון התהליך בו נעשה שימוש. לדוגמה, סכום הזמן שהתהליך חיכה למעבד, סכום הזמן שהתהליך בוצע, וכן הלאה; ④אירוע מתייחס לאירוע הממתין לשינוי התהליך ממצב הביצוע למצב החסימה, כלומר, הסיבה לחסימה.

(4) מידע בקרת תהליך: מתייחס למידע הדרוש לבקרת תהליכים, הכולל: ①כתובת התוכנית והנתונים, כתובת הזיכרון או הזיכרון החיצוני של התוכנית והנתונים בישות התהליך, כך שניתן יהיה לתזמן אותו לבצע כאשר התהליך מבוצע. , ניתן למצוא את התוכנית והנתונים מה-PCB; ②מנגנון סנכרון ותקשורת תהליכים, שהוא מנגנון הכרחי לסינכרון ותקשורת תהליכים, כגון מצביעי תור הודעות, סמפורים וכו’, הם עשויים להיות ממוקמים ב-PCB כולו או חלקו; ③רשימת משאבים, בה רשומים כל המשאבים (למעט CPU) הנדרשים על ידי התהליך במהלך פעולתו, ויש גם רשימה של משאבים שהוקצו לתהליך; ④מצביע קישור, שנותן את התהליך (PCB) הכתובת הראשונה של ה-PCB של התהליך הבא בתור.