Loading AI tools
מוויקיפדיה, האנציקלופדיה החופשית
יחידת ניהול הזיכרון (באנגלית: Memory Management Unit, בראשי תיבות: MMU) היא רכיב חומרה האחראי על פעולות ניהול הזיכרון על ידי המעבד. נכון לתחילת המאה העשרים ואחת, ברוב המעבדים יחידת ניהול הזיכרון ממוקמת במעבד, והיא אינה רכיב פיזי נפרד.
יחידות ניהול הזיכרון מודרניות ממפות בין כתובות וירטואליות לכתובות פיזיות בזמן ריצה, אם דף הזיכרון הנדרש לא נמצא כעת בזיכרון הפיזי, היחידה מייצרת פסיקה שמסורתית נקראת page fault, ומערכת ההפעלה מטפלת בפסיקה על ידי טעינת הדף מהזיכרון המשני – בדרך כלל דיסק או SSD.
זיכרון וירטואלי (באנגלית: Virtual Memory) היא טכניקה לניהול והקצאה של זיכרון המחשב, המסתירה את הזיכרון הפיזי של המחשב ומדמה זיכרון רציף וגדול, ומפרידה בין ניהול הזיכרון של תהליכים שונים. כל אחת מהתוכניות המתבצעות פועלת כאילו עומד לרשותה מרחב זיכרון בגודל שהיא זקוקה לו, רציף, וללא הפרעות מתהליכים (לא מוזמנים) אחרים.
הרעיון של זיכרון וירטואלי הוא להוסיף עוד רמה של הפשטה בארגון הזיכרון. תהליך המנסה לגשת לזיכרון בכתובת X (כתובת וירטואלית), ייגש בפועל לכתובת מתאימה Y (כתובת פיזית) בזיכרון הראשי של המחשב, או לכתובת Z בזיכרון משני כלשהו, בדרך כלל דיסק קשיח, שהוא זול יותר, ואז המידע המבוקש יישלף משם ויועתק לזיכרון הראשי בפעולה הנקראת דפדוף. תרגום הכתובות מתבצע במקרים רבים בחומרה.
בשיטת זיכרון וירטואלי מחלקים את הזיכרון לעמודים, כל עמוד הוא בדרך כלל בגודל של מספר ק"ב בודדים שהוא חזקה של שניים[1]. כאשר תהליך מנסה לגשת לכתובת בזיכרון הווירטואלי, יחידת ניהול הזיכרון לוקחת את כל הביטים שגדולים מגודל העמוד שנקבע, ומחליפה אותם במיקום של הדף בזיכרון הפיזי ומוסיפה בסופם את הביטים הנותרים, שמסמלים את המיקום בתוך הדף.
ישנם שלושה מימושים לניהול טבלת המיפוי:
בקטע תוכנה המתכנת הגדיר משתנה וכינה אותו בשם X. טיפוס המשתנה X הוא מספר שלם בגודל שני בתים, שבו מספר. המהדר קבע שמשתנה זה יישמר בתחום שבין 0E00:0030 עד 0E00:0031. בהנחה שגודל דף הוא 4 ק"ב (0000:1000), יחידת ניהול הזיכרון ממפה בין 0E000 לבין המיקום בו הדף נמצא בפועל בזיכרון הפיזי, נניח 00A00 ושמה את המספר בכתובת 00A0:0030 ו-00A0:0031.
אם דף הזיכרון הנדרש לא נמצא כעת בזיכרון הפיזי, היחידה קוראת למערכת ההפעלה, שאצלה נמצא המיפוי בין הזיכרון הווירטואלי לדיסק, עם page fault ומערכת ההפעלה מעבירה בעזרת דפדוף את הדף המבוקש לזיכרון הראשי ולאחר מכן מבוצעת פעולת הכתיבה באותו האופן. בדרך כלל בינתיים כדי העתקת הדף מוענק ה-CPU לתהליך אחר כדי לא לבזבז זמן עיבוד. הסיבה שמעתיקים את כל הדף ולא רק את המקטע המבוקש היא כדי להמעיט כמה שאפשר בפעולת הדפדוף.
modern operating systems third edition, Andrew S. Tanenbaum עמודים 189–198.
מקבץ סרטונים קצרים שמסבירים את הנושא בצורה טובה: https://www.youtube.com/watch?v=qcBIvnQt0Bw
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.