קריאת מערכת

מתוך המכלול, האנציקלופדיה היהודית
קפיצה לניווט קפיצה לחיפוש
Crystal Clear app help index.svg
ערך מחפש מקורות
רובו של ערך זה אינו כולל מקורות או הערות שוליים, וככל הנראה, הקיימים אינם מספקים.

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

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

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

קריאת מערכתאנגלית: system call) היא בקשה שמבצעת תוכנת מחשב מליבת מערכת ההפעלה (באנגלית: kernel) כדי לבצע פעולה שהיא אינה יכולה לבצע בעצמה. קריאות מערכת הן האחראיות על החיבור שבין המשתמש לליבת המערכת, ובכך מאבזרת את המשתמש ונותנת לו שימוש מרבי בפונקציונליות שהיא מציעה. הדבר כולל בין היתר יכולת קבלת גישה לרכיבי חומרה (למשל קריאת קובץ מהדיסק הקשיח), ליצירת תהליך חדש, להעברת מידע בין תהליכים ועוד[1].

הצורך בקריאות מערכת

כל תהליך הוא בעל רמת הרשאה שמאפשרת להפעיל פקודות מסט הפקודות של המעבד ולכל פקודה בסט הפקודות יש רמת הרשאה הנדרשת על מנת להפעילה. רמות הרשאה אלו נקראות rings. במעבדים בעלי ארכיטקטורת IA-32 למשל, ישנן 4 הרשאות, מ-0 עד 3, כאשר ring 0 היא הרשאה שמאפשרת ביצוע של כל הפקודות ו-ring 3 היא רמת ההרשאה המוגבלת ביותר[2]. מערכת ההפעלה רצה ב-ring 0 ומקבלת גישה לכל הפקודות שהמעבד מספק. כאשר תהליך שרץ תחת מערכת ההפעלה מעוניין להריץ פקודה שאין לו הרשאה לבצעה, עליו לפנות למערכת ההפעלה בבקשה שתבצע עבורו את השירות. הקריאות האפשריות, כמו גם הפרמטרים אותם יש להעביר נקבעים ב-API של מערכת ההפעלה.

אופן הפעולה

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

תהליך מבצע קריאת מערכת באמצעות הרצת פקודה מסט הפקודות של המעבד שגורמת ליצירת פסיקה. הפסיקה מפסיקה את הרצת התהליך ומתחילה להריץ קוד של מערכת ההפעלה שתפקידו לטפל בקריאות מערכת[1]. במקרה שהתהליך מנסה להריץ בעצמו פקודה שאין לו הרשאה להריצה, המעבד יזהה זאת ויודיע למערכת ההפעלה על ידי יצירת פסיקה שמפעילה שגרה של מערכת הפעלה שמטפלת בכך.

הערות שוליים

  1. ^ 1.0 1.1 Er Vivek Sharma, Er Manish Varshney, Shantanu Sharma, Design and Implementation of Operating System, Laxmi Publications, Ltd., 2010-08, עמ' 83, מסת"ב 978-93-80386-41-6. (באנגלית)
  2. ^ Sherif Sakr, Mohamed Gaber, Large Scale and Big Data: Processing and Management, CRC Press, 2014-06-25, עמ' 509, מסת"ב 978-1-4665-8151-7. (באנגלית)
Crystal Clear app ktalkd.png ערך זה הוא קצרמר בנושא מחשבים. אתם מוזמנים לתרום למכלול ולהרחיב אותו.
Logo hamichlol 3.png
הערך באדיבות ויקיפדיה העברית, קרדיט,
רשימת התורמים
רישיון cc-by-sa 3.0