לדלג לתוכן

Program Segment Prefix

מתוך ויקיפדיה, האנציקלופדיה החופשית
גרסה מ־17:20, 12 ביולי 2007 מאת Nevuer (שיחה | תרומות) (הסרת בעבודה, אבל ארחיב את הערך בהמשך. זה הייתי אני מחוץ לחשבון בעריכה הקודמת)

במערכת ההפעלה DOS, תחילית מקטע התוכניתאנגלית Program Segment Prefix, ובקיצור PSP) היא מבנה נתונים בגודל של 256 בתים, המשמש את מערכת ההפעלה לשמירת נתונים שונים אודות התוכניות המופעלות בה. כאשר תוכנית נטענת לזיכרון לשם הרצה, המערכת יוצרת עבורה את טבלת ה-PSP ומעדכנת בה את השדות השונים. התוכנית עצמה נטענת לזיכרון מיד לאחר הטבלה (בהיסט 100h).

מבנה

היסטגודל (בבתים)תוכן
00-012INT 20h - קוד לסיום התוכנית (לצורכי תאימות עם CP/M)
02-032קצה הזיכרון הזמין ביחידות של 16 בתים
041שמור
05-095קוד לקריאה בין-מקטעית (far call) למנגנון ביצוע קריאות המערכת (לצורכי תאימות עם CP/M)
במקביל, עבור קובצי COM: זיכרון זמין בבתים בתוך מקטע התוכנית (היסט 6-7)
0Ah-0Dh4כתובת שגרת היציאה של התוכנית הקודמת (INT 22h הקודם)
0Eh-11h4כתובת שגרת ה-Break של התוכנית הקודמת (INT 23h הקודם)
12h-15h4כתובת שגרת הטיפול בשגיאה קריטית של התוכנית הקודמת (INT 24h הקודם)
16h-2Bh16hשמור לשימוש פנימי
2Ch-2Dh2מקטע סביבת העבודה
2Eh-5Bh2Ehשמור לשימוש פנימי
5Ch-6Bh10hטבלת בקרה לקובץ שטרם נפתח (Unopened FCB) עבור הפרמטר הראשון בשורת הפקודה
6Ch-7Fh10hטבלת בקרה לקובץ שטרם נפתח (Unopened FCB) עבור הפרמטר השני בשורת הפקודה - תידרס עם פתיחת הקובץ הראשון
801מספר התווים בשורת הפקודה, לא כולל IO redirections
81h-FFh7Fhשורת הפקודה (מסתיימת ב-0Dh)


שימושים

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

הנתונים השמורים ב-PSP משמשים בעיקר את מערכת ההפעלה. השימוש הנפוץ ביותר בתוכנה הוא ניתוח הפרמטרים שבשורת הפקודה.