מהי ספריית מערכת

תוכן עניינים:

מהי ספריית מערכת
מהי ספריית מערכת

וִידֵאוֹ: מהי ספריית מערכת

וִידֵאוֹ: מהי ספריית מערכת
וִידֵאוֹ: ולוג: מהי מערכת Teen Driver וכיצד היא עובדת? 4K 2024, מאי
Anonim

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

DLL - ספריית מערכת דינמית
DLL - ספריית מערכת דינמית

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

הרעיון של ספריית מערכות חל גם על תוכניות בודדות וגם על מערכות הפעלה בכללותן, וזה חל על משפחות של Windows, UNIX ו- Mac.

ההגדרה של "ספרייה" הופיעה לראשונה בשנת 1951 בספרם של מ 'וילקס, ד' וילר וס 'גיל "תכנות למכונות חישוב אלקטרוניות".

על פי עקרון הפעולה, ספריות המערכת מחולקות לדינמיות וסטטיות.

ספריות דינמיות

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

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

לקבצי ספריית קישורים דינמיים ב- Windows OC יש את הסיומת.dll (ספריית קישורים דינמית) והם מאוחסנים בספריית system32. רכיבים דומים במערכות דומות ל- UNIX נקראים אובייקטים משותפים ויש להם את הסיומת.so, ב- Mac OS -.dlyb.

מוריס וילקס ואח 'העבירו את ההגדרה הבאה לספרייה - תכנית קצרה ומוכנה מראש עבור פעולות חישוב בודדות (רגילות).

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

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

ספריות סטטיות

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

ככלל, ב- Windows, לקבצים של ספריות כאלה יש את הסיומת.lib, במערכות דומות ל- UNIX -.a.

לעבוד עם רוב השפות המהודרות, למשל, C, C ++, Pascal, אי אפשר בלי ספריות סטטיות.

מוּמלָץ: