Dynamic-Link Library – הבדלי גרסאות
תוכן שנמחק תוכן שנוסף
אין תקציר עריכה |
מ ליבא -> לייבא, ליצא -> לייצא (דרך WP:JWB) |
||
שורה 21:
בתהליך של קישור דינמי, מרוכזות כל ה[[פונקציה (תכנות)|פונקציות]] הנמצאות בקובצי DLL חיצוניים לתוך [[מערך (מבנה נתונים)|טבלה]] שכל ה[[מצביע]]ים שלה ריקים. במהלך טעינת התוכנית על ידי ה[[מקשר דינמי|מקשר הדינמי]] של [[חלונות]] (PE Loader), מתבצעת טעינה של קובצי ה-DLL הרלוונטיים ל[[זיכרון גישה אקראית|זיכרון הפיזי]] (אם אחד מקובצי ה-DLL אשר התוכנה תלויה בהם לא קיים במערכת, התוכנה לא תיטען כלל). לרוב קובצי DLL לא עוברים ל[[זיכרון וירטואלי|זיכרון הווירטואלי]], אלא נשארים בזיכרון הפיזי עד שכל התוכניות שזקוקות להם מסיימות את פעולתן.
לאחר שכל קובצי ה-DLL הרלוונטיים נטענו לזיכרון, מתבצע מיפוי כתובות של הפונקציות ועדכון של כל המצביעים בטבלת היבוא. פעולת המיפוי נעזרת בטבלאות ייצוא, שמתאימות מספר הסידורי לכל אחת מהפונקציות בקובץ ה-DLL. בדרך כלל, עדיף
=== טעינה מושהית (Delay load) ===
|