تالار گفتمان مانشت

نسخه‌ی کامل: تست سیستم عامل- آی تی ۸۹(قطعه بندی همراه با صفحه بندی)
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
مدیریت حافظه در یک سیستم فرضی به صورت قطعه بندی صفحه بندی شده است و اندازه هر صفحه 4 کیلو بایت است هر درایه‌ی جدول قطعه دارای 3 بایت و به صورت زیر است: (ضمیمه شده)

و هر درایه‌ی جدول صفحه یک بایتی است و نشان دهنده‌ی شماره‌ی قاب است.در PCB یک فرآیند برای آدرس پایه‌ی جدول قطعه(STBA) مقدار0AFEH دیده می شود اگر در این فرآیند آدرس منطقی [02H,3456H] تولید شود آدرس فیزیکی نظیر چه خواهد بود؟.بخش اول آدرس منطقی شماره قطعه است.حرف H به معنی HEX است.محتویات حافظه به شکل زیر است...(ضمیمه شده)


جون هرکی دوست دارید یه جوری سوال رو جواب بدید که دقیقا بشه فهمید برای حل این جور سوال‌ها چه جوری باید عمل کرد.بتونم نمونه اش رو تو کنکور حل کنم.
من سیستم عامل مرجع و کتاب مقسمی رو خوندم ولی هیچی دستگیرم نشد!!

ممنون
طبق گفته کتاب پوران پژوهش صورت این سوال غلط هست!! و آدرسی براش پیدا نمیشه
ولی مقسمی حلش کرده!
بیشتر هدفم یاد گرفتن کلی است . نه جواب اصلی این تست
تو کتاب دکتر حقیقت این مساله رو حل کرده با دلایل منطقی البته من قسمتی رو که قرمز شده نفهمیدم اگر کسی براش جا افتاد یه توضیح بده:

چون در آدرس منطقی شماره قطعه برابر [tex](02)_{H}[/tex] و هر 3 بایت پشت سر هم در حافظه نشانگر یک درایه از جدول قطعه است، باید [tex]2*3[/tex] بایت از ابتدای جدول قطعه به جلو برویم. می دانیم آدرس شروع جدول قطعه فرآیند جاری (STBA) برابر [tex](0AFE)_{H}[/tex] است یعنی آدرس درایه مورد نظر برابر است با:
[tex]0AFE [/tex]
[tex]6[/tex]
------------------
[tex]0B04[/tex]

یعنی [tex](0B04)_{H}[/tex].
با مراجعه به آدرس [tex](0B04)_{H}[/tex] و برداشتن 3 بایت پشت سر هم به [tex]0B0905[/tex] می رسیم (اگر 3 بایت پشت سر هم برداریم این آدرس[tex]0B0905[/tex] به دست نمیاد که؟) که طبق صورت سوال [tex]0B09[/tex] بیانگر PTBA و [tex]05[/tex] بیانگر LIMIT است.
چون هر قطعه صفحه بندی شده است، بخش دوم آدرس منطقی، یعنی [tex](3456H)[/tex] از offset، P# تشکیل شده و با توجه به اینکه صفحات 4 کیلو بایتی هستند ([tex]2^{12}=4KB[/tex]) پس 12 بیت کم ارزش آن (3 رقم سمت راست هگزادسیمال) که برابر [tex]456H[/tex] است بیانگر آفست و 3 نشان دهنده شماره صفحه خواهد بود.
به ابتدای جدول صفحه یعنی آدرس [tex]0B09[/tex] می رویم و چون هر درایه جدول صفحه یک بایتی است و صفحه شماره 3 را می خواهیم 3 بایت به جلو می رویم و به آدرس [tex]0B0C[/tex] می رسیم. محتوای این آدرس یعنی [tex]0A[/tex] بیانگر شماره قاب صفحه است و کافی است در سمت چپ افست [tex](456)[/tex] قرار گیرد تا آدرس فیزیکی [tex](0A456)[/tex] را بسازند. یعنی گزینه 2 صحیح است.
ابتدا آدرس جدول صفحه قطعه با آدرس 02H رو بدست میاریم خوب این آدرس رو با 0AFEH جمع می کنیم که برابر 0B00H بدست میاد حال از 3H بعنوان ایندکس استفاده میشه پس آدرس مورد نظر برای برداشتن شماره قاب برابر 0B03H خواهد شد در انتها هم شماره قاب که برابر 0AH رو به 12 بیت سمت راست یعنی 456H‌، الحاق می کنیم.
لینک مرجع