حافظه مجازي در اين تمرين شما با صورتها و شكلهاي مختلفي از مكانيزم حافظه مجازي در ويندوز NT آشنايي پيدا خواهيد كرد عليرغم اغلب ديگر سيستمهاي عامل، ويندوز NT يك API ساده و روشني را براي اداره كردن بعضي شكلها و صورتهاي حافظه مجازي تهيه ميكند(معمولاً حافظه مجازي بطور كامل توسط برنامه نويس كاربردياش روشن و واضح ميگردد) در اين تمرين شما در موارد زير اطلاعاتي ياد خواهيد گرفت: سازماندهي سيستم حافظه مجازي ويندوز NT چگونه فضاي حافظه مجازي خود را كنترل كنيد؟ چگونه يك وسيله آگاه كننده و گزارش دهنده بنويسيد؟ جزئيات GlobalMemory Status , GetsystemInfo – VirtualQuery – VirtualUnlock – VirtualLock – VirtueaFree – VirtualAlloc معرفي حافظه مجازي صفحهبندي يا Paging Virtual Memory در بسياري از سيستمهاي عامل امروزي بكار گرفته ميشود. در يك سيستم صفحهبندي شده، هر فرآيندي يك فضاي آدرس دهي مجازي خاص خود دارد كه براي ارجاع ديگر اشياء بكار گرفته ميشود كه معمولاً محتواي يك محل يا موقعيتي از حافظه است بخشي از فضاي آدرس دهي مجازي توسط ويراستار خطي ( Link editor ) تعريف ميشوند وقتي كه آن يك تصوير قابل اجرايي بوجود ميآورد كه در واقع فايل اجرايي يا EXE است. تعداد باقيمانده از فضاي آدرسدهي ميتواند بطور پويا در زمان اجرا توسط روشهايي كه در اين تمرين توضيح داده خواهد شد تعر يف شود. بعد از اينكه قسمت پايدار و ثابت از فضاي آدرسدهي مجازي ايجاد شد در حافظه ثانويه ذخيره خواهد شد ( معمولاً در بخش يا Partition از وسيله ذخيرهسازي كهPaging disk نام دارد ). به منظور عمليتر شدن شما ميتوانيد Paging disk را مشابه فايل در نظر بگيريد. در يك كامپيوتر معمول و مرسوم پردازنده تنها ميتواند دستورات را واكشي كند يا دادههايي را كه در حافظه اوليه يا قابل اجرا ( كه معمولاً RAM خوانده ميشوند. ) واقع شدهاند را بارگذاري كند. حافظه اوليه در مقايسه با حافظه ثانويه كوچكتر و سريعتر است. حافظه اوليه خيلي گرانتر از حافظه ثانويه است بنابراين بطور معمول در زمره اجزاي با ارزشتر از نظر حجم اما كوچكتر از حافظههاي ثانويه قرار دارند. اغلب كامپيوترها حافظه اوليه كافي حتي براي ذخيره فضاي آدرسدهي مجازي كامل يك فرآيند را هم ندارند بنابراين در يك زمان تعداد زيادي فضا روي حافظه ثانويه براي ذخيره فضاي آدرسدهي مجازي تعداد زيادي فرآيند وجود خواهد داشت. حافظه اوليه همچنين خيلي سريعتر از حافظه ثانويه ميباشد. پردازنده ميتواند يك بايت را در 2 سيكل پردازنده در حافظه اوليه بخواند يا بنويسيد. اما همين عمل هزاران سيكل از پروسسور را براي نوشتن يا خواندن اطلاعات در حافظه ثانويه نيازمند است.
حافظه مجازي در اين تمرين شما با صورتها و شكلهاي مختلفي از مكانيزم حافظه مجازي در ويندوز NT آشنايي پيدا خواهيد كرد عليرغم اغلب ديگر سيستمهاي عامل، ويندوز NT يك API ساده و روشني را براي اداره كردن بعضي شكلها و صورتهاي حافظه مجازي تهيه ميكند(معمولاً حافظه مجازي بطور كامل توسط برنامه نويس كاربردياش روشن و واضح ميگردد) در اين تمرين شما در موارد زير اطلاعاتي ياد خواهيد گرفت: سازماندهي سيستم حافظه مجازي ويندوز NT چگونه فضاي حافظه مجازي خود را كنترل كنيد؟ چگونه يك وسيله آگاه كننده و گزارش دهنده بنويسيد؟ جزئيات GlobalMemory Status , GetsystemInfo – VirtualQuery – VirtualUnlock – VirtualLock – VirtueaFree – VirtualAlloc معرفي حافظه مجازي صفحهبندي يا Paging Virtual Memory در بسياري از سيستمهاي عامل امروزي بكار گرفته ميشود. در يك سيستم صفحهبندي شده، هر فرآيندي يك فضاي آدرس دهي مجازي خاص خود دارد كه براي ارجاع ديگر اشياء بكار گرفته ميشود كه معمولاً محتواي يك محل يا موقعيتي از حافظه است بخشي از فضاي آدرس دهي مجازي توسط ويراستار خطي ( Link editor ) تعريف ميشوند وقتي كه آن يك تصوير قابل اجرايي بوجود ميآورد كه در واقع فايل اجرايي يا EXE است. تعداد باقيمانده از فضاي آدرسدهي ميتواند بطور پويا در زمان اجرا توسط روشهايي كه در اين تمرين توضيح داده خواهد شد تعر يف شود. بعد از اينكه قسمت پايدار و ثابت از فضاي آدرسدهي مجازي ايجاد شد در حافظه ثانويه ذخيره خواهد شد ( معمولاً در بخش يا Partition از وسيله ذخيرهسازي كهPaging disk نام دارد ). به منظور عمليتر شدن شما ميتوانيد Paging disk را مشابه فايل در نظر بگيريد. در يك كامپيوتر معمول و مرسوم پردازنده تنها ميتواند دستورات را واكشي كند يا دادههايي را كه در حافظه اوليه يا قابل اجرا ( كه معمولاً RAM خوانده ميشوند. ) واقع شدهاند را بارگذاري كند. حافظه اوليه در مقايسه با حافظه ثانويه كوچكتر و سريعتر است. حافظه اوليه خيلي گرانتر از حافظه ثانويه است بنابراين بطور معمول در زمره اجزاي با ارزشتر از نظر حجم اما كوچكتر از حافظههاي ثانويه قرار دارند. اغلب كامپيوترها حافظه اوليه كافي حتي براي ذخيره فضاي آدرسدهي مجازي كامل يك فرآيند را هم ندارند بنابراين در يك زمان تعداد زيادي فضا روي حافظه ثانويه براي ذخيره فضاي آدرسدهي مجازي تعداد زيادي فرآيند وجود خواهد داشت. حافظه اوليه همچنين خيلي سريعتر از حافظه ثانويه ميباشد. پردازنده ميتواند يك بايت را در 2 سيكل پردازنده در حافظه اوليه بخواند يا بنويسيد. اما همين عمل هزاران سيكل از پروسسور را براي نوشتن يا خواندن اطلاعات در حافظه ثانويه نيازمند است.