02-11-2007, 07:41
|
|
|
חבר מתאריך: 31.03.02
הודעות: 400
|
|
דיוק: אי אפשר לשמור זרם, זרם הוא מן הסתם זרם של מטען חשמלי. תאי הזיכרון הם קבלים - רכיבים שיכולים לשמור מטען חשמלי.
הסיבה שמחשבים עובדים עם 2 מצבים כבר הוסברה די טוב ע"י אנשים אחרים, רק אוסיף שהעובדה הזאת מאפשרת לחומרה של המחשב להיות ממומשת ע"י מתגים פשוטים, שהם יכולים או להפתח או להסגר, והמתגים האלה ממומשים ע"י טרנזיסטורים.
אגב, הזיכרון שעליו דיבר avivmas זה רק סוג אחד של זיכרון (הסוג ההכי זול שמשתמשים בו במודולי זיכרון גדולים, כגון הRAM במחשב שלך). דבר מעניין בזיכרון כזה הוא שהמטען השמור בכל תא זולג לאט לאט, כי הטרנזיסטור שלא מאפשר לו לזרום החוצה הוא לא אידיאלי, ולכן יש צורך לרענן את תוכן הזיכרון הרבה פעמים בשניה.
ועכשיו, בקשר לשאלה השניה שלך. עיקרון הדפים הוא די מסובך אם לומדים אותו לעומק, ולכן אנסה להביא הסבר פשטני. רוב מערכות המחשבים בימינו (פרט לכמה מקרים כגון מכשירים ניידים קטנים) משתמשים בעיקרון שנקרא "זיכרון וירטואלי". העיקרון הזה נותן לתוכנה את האשליה שהיא עובדת עם כתובות זיכרון בטווח רחב ולפי הסדר (ז"א למשל תוכנה מסויימת עולה לזיכרון, והיא מבקשת להשתמש ב1 קילובייט של זיכרון, אז למשל היא תקבל את הכתובות 0 עד 1024 לשימוש שלה), למרות שבאמת הזיכרון יכול להיות מוקצה במקומות שונים בתוך הזיכרון הפיסי (האמיתי), ואף יכול לצאת מתחום הכתובות של הזיכרון הפיסי (במקרה הזה חלק מהמידע יכול להיות שמור על ההארד דיסק). חשוב להבין פה שזיכרון וירטואלי לא נועד כדי לתת לתוכנה יותר זיכרון ממה שהזיכרון הפיסי מסוגל לתת - זאת רק אחת מהאפשרויות. כל מה שזיכרון וירטואלי מביא לתוכנה זה תחום כתובות זיכרון שקל לעבוד איתו, וגם כן חוסכת מהתוכנה לדאוג למיקום האמיתי של המידע בחומרה.
עכשיו, כיצד המחשב יודע לאיזו כתובת אמיתית תחום כתובות מסויים מצביע? ע"י דפים. "דף" הוא פשוט טבלה אשר כוללת את תחום הזיכרון הוירטואלי שאותו הוא מייצג ואת הכתובת ה"אמיתית" שבה הוא שמור (אם מדובר בזיכרון הפנימי), או מצביע על קובץ שבתוכו המידע שמור (אם מדובר בזיכרון חיצוני, כגון ההארד דיסק). הפרטים תלויים במערכת. ניתן להקצות דף גדול לכל המערכת, או שאפשר לתת דף (או קבוצה של דפים) לכל תוכנה נפרדת שאתה מעלה. ככה יכול להיות ששתי תוכנות שונות יראו את אותו טווח כתובות זיכרון ויכתבו לאותה כתובת וירטואלית, אבל באמת המידע יהיה שמור במקומות שונים, כי לכל תוכנה דף נפרד.
האופן שבו כל התהליך של המיפוי עובד הוא לא פשוט בכלל, במיוחד במערכות משוכללות. כעיקרון, בד"כ יש חלק בתוך החומרה שעוזר במיפוי (וכולל כמה אופטימיזציות כדי לבצע את התהליך באופן יותר מהיר), וגם כן חלק במערכת ההפעלה (חלק התוכנה) אשר מבקר על התהליך. אם טווח הכתובות הוירטואליות הוא מעבר לטווח הכתובות בזיכרון הפיסי, מערכת ההפעלה דואגת לכתוב דפים מסויימים שבהם לא נעשה שימוש במשך זמן להרד דיסק, ובמקום זה להעלות דפים אחרים מההארד דיסק לתוך הזיכרון. חשוב לייעל את התהליך הזה אם רוצים ביצועים יותר טובים.
|