TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI URGANCH FILIALI
Telekomunikatsiya trxnalogiyasi va kasb ta’limi FAKULTETI
972-18 guruh talabasi Allamov Mansurning
Operatsion tizimlar fanidan mustaqil ishi
Topshirdi Allamov Mansur
Qabul qildi _______________
2020 y.
Kompyuter fizik xotirasi strukturasi
Reja:
1. Kirish
2. Xotira iyerarxiyasi.
3. Mantiqiy xotira.
4. Xotirani boshqarish tizimi.
Kirish
Kompyuter tizimining asosiy vazifasi dasturlarni bajarishdir. Dasturlar, ular kirish huquqiga ega bo'lgan ma'lumotlar bilan birga (hech bo'lmaganda qisman) operativ xotirada bo'lishi kerak. Operatsion tizim foydalanuvchi jarayonlari va OS komponentalari o'rtasida xotirani ajratish muammosini hal qilishi kerak. Ushbu faoliyat xotirani boshqarish deb ataladi. Shunday qilib, xotira (xotira, xotira) ehtiyotkor boshqaruvni talab qiladigan muhim manba hisoblanadi. Yaqin o'tmishda xotira eng qimmat resurs edi. Xotirani boshqarish uchun mas'ul bo'lgan OS qismi xotira menejeri deb ataladi. Kompyuter xotirasini jismoniy tashkil etish Kompyuterni saqlash qurilmalari kamida ikkita darajaga bo'linadi: asosiy (asosiy, operatsion, jismoniy) va ikkilamchi (tashqi) xotira. Asosiy xotira - har birining o'ziga xos manzili (raqami) bo'lgan bitta baytli kataklarning tartiblangan massivi. Protsessor buyruqni asosiy xotiradan oladi, dekodlaydi va bajaradi. Buyruqni bajarish uchun asosiy xotiraning yana bir nechta katakchalariga kirish kerak bo'lishi mumkin. Asosiy xotira odatda yarimo'tkazgich texnologiyasi yordamida ishlab chiqariladi va quvvat o'chirilganda uning tarkibini yo'qotadi. Ikkilamchi xotirani (asosan disklar) baytlar ketma-ketligidan tashkil topgan bir o'lchovli chiziqli manzillar maydoni sifatida ham tasavvur qilish mumkin. RAMdan farqli o'laroq, u o'zgaruvchan emas, hajmi ancha kattaroq va asosiy xotiraning kengaytmasi sifatida ishlatiladi. Shaklda ko'rsatilgandek, ushbu sxema yana bir necha o'rta darajalar bilan to'ldirilishi mumkin. Xotira lazzatlari ierarxik ravishda kirish vaqtining pasayishi, narxning oshishi va imkoniyatlarning oshishi bilan tartibga solinishi mumkin.
Xotira iyerarxiyasi Qatlamli sxema quyidagicha ishlatiladi. Yuqori darajadagi xotirada bo'lgan ma'lumotlar, odatda, yuqori raqamlarda saqlanadi. Agar protsessor i-darajadagi kerakli ma'lumotlarni topmasa, uni keyingi darajalarda qidirishni boshlaydi. Kerakli ma'lumotlar topilganda, ular tezroq darajalarga o'tkaziladi. Joylashuv Ma'lum bo'lishicha, ushbu tashkil etish usuli bilan xotira darajasiga kirish tezligi pasayganda, unga qo'ng'iroqlar chastotasi ham kamayadi. Bu erda asosiy rolni cheklangan vaqt davomida kichik xotira manzillari to'plami bilan ishlashi mumkin bo'lgan haqiqiy dasturlarning xususiyati o'ynaydi. Ushbu empirik kuzatilgan xususiyat ma'lumotlarning joylashuvi yoki lokalizatsiyasi printsipi sifatida tanilgan. Mahalliylik xususiyati (makon va zamonda qo'shni bo'lgan ob'ektlar o'xshash xususiyatlar bilan ajralib turadi) nafaqat OS operatsion tizimiga, balki umuman tabiatga ham xosdir. OS holatida, agar dasturlarning yozilishi va ma'lumotlar qanday saqlanishini hisobga olsak, ya'ni odatda ma'lum bir vaqt uchun cheklangan kod qismi cheklangan ma'lumotlar to'plami bilan ishlashini hisobga olsak, mahalliylik xususiyati tushunarli. Ushbu kod va ma'lumotlarni tezkor xotirada saqlash mumkin. Natijada, haqiqiy xotiraga kirish vaqti ierarxik sxemadan foydalanish samaradorligini belgilaydigan yuqori darajalarga kirish vaqti bilan belgilanadi. Aytish kerakki, hisoblash tizimining tavsiflangan tashkiloti asosan odam miyasining ma'lumotni qayta ishlashdagi faoliyatiga taqlid qiladi. Darhaqiqat, ma'lum bir muammoni hal qilishda, odam ozgina ma'lumot bilan ishlaydi, ahamiyatsiz ma'lumotlarni xotirasida yoki tashqi xotirada saqlaydi (masalan, kitoblarda). Protsessor keshi odatda apparatning bir qismidir, shuning uchun OS xotira menejeri ma'lumotni asosan asosiy va tashqi kompyuter xotirasida tarqatish bilan shug'ullanadi. Ba'zi sxemalarda RAM va tashqi xotira o'rtasidagi oqimlar dasturchi tomonidan tartibga solinadi (masalan, quyida joylashgan qo'shimcha tuzilmalarga qarang), ammo bu dasturchi vaqtining narxi bilan bog'liq, shuning uchun ular bunday faoliyatni OSga topshirishga harakat qilishadi. Ma'lumotlarning fizik xotiradagi haqiqiy joylashishini tavsiflovchi asosiy xotiradagi manzillar fizik manzillar deyiladi. Dastur bilan ishlaydigan jismoniy manzillar to'plami fizik manzillar maydoni deb ataladi.
Mantiqiy xotira .Yadrolarning chiziqli to'plami ko'rinishidagi xotirani apparatli tashkil etish dasturchilarning dasturlar va ma'lumotlarni saqlash qanday tashkil etilganligi haqidagi g'oyalariga mos kelmaydi. Ko'pgina dasturlar bir-biridan mustaqil ravishda yaratilgan modullar to'plamidir. Ba'zan jarayonni tashkil etuvchi barcha modullar birin ketin xotirada joylashgan bo'lib, chiziqli manzil maydonini tashkil qiladi. Ammo, ko'pincha, modullar turli xil xotira maydonlariga joylashtiriladi va turli xil usullarda qo'llaniladi. Dasturlarning va ma'lumotlarning qanday saqlanishi haqida foydalanuvchining ushbu ko'rinishini qo'llab-quvvatlaydigan xotirani boshqarish sxemasi segmentatsiya deb ataladi. Segment - bu ma'lum bir maqsaddagi xotira sohasi bo'lib, uning ichida chiziqli adreslash qo'llab-quvvatlanadi. Segmentlar protseduralar, massivlar, steklar yoki skalarlarni o'z ichiga oladi, lekin odatda aralash ma'lumotni o'z ichiga olmaydi. Ko'rinishidan, boshida xotira segmentlari dastur kodlari parchalarini (matn muharriri, trigonometrik kutubxonalar va boshqalar) ijtimoiylashtirish jarayonlari zarurligi bilan bog'liq holda paydo bo'lgan, ularsiz har bir jarayon o'z manzil maydonida takroriy ma'lumotlarni saqlashi kerak edi. Tizim bir nechta jarayonlarning xotirasida aks ettiradigan ma'lumotni saqlaydigan ushbu alohida xotira sohalari segmentlar deb ataladi. Xotira shu tariqa chiziqli bo'lishni to'xtatdi va ikki o'lchovli bo'ldi. Manzil ikkita komponentdan iborat: segment raqami, segment ichidagi ofset. Bundan tashqari, jarayonning turli qismlarini (dastur kodi, ma'lumotlar, stek va boshqalarni) turli segmentlarga joylashtirish qulay bo'lib chiqdi. Yo'l davomida ma'lum bir segment bilan ishlash xususiyatini unga atributlarni berib boshqarishingiz mumkin, masalan, kirish huquqlari yoki segmentda saqlangan ma'lumotlar bilan bajarishga ruxsat berilgan operatsiyalar turlari.
Jarayon segmentlarining kompyuter xotirasida joylashishi Jarayonning manzil maydonini tavsiflovchi ba'zi segmentlar Segment turlari haqida ko'proq ma'lumot olish uchun 10-bobga qarang. Aksariyat zamonaviy operatsion tizimlar segmentlangan xotirani qo'llab-quvvatlaydi. Ba'zi arxitekturalarda (masalan, Intel) segmentatsiya apparat tomonidan qo'llab-quvvatlanadi. Jarayon orqali kiradigan manzillar RAMda mavjud bo'lgan manzillardan farq qiladi. Har holda, dastur tomonidan ishlatiladigan manzillar turli xil ko'rinishda bo'lishi mumkin. Masalan, manba matnlaridagi manzillar odatda ramziy ma'noga ega. Tuzuvchi ushbu ramziy manzillarni boshqa joyga ko'chiriladigan manzillar bilan bog'laydi (masalan, modul boshidan boshlab n bayt). Dastur tomonidan ishlab chiqarilgan bunday manzil odatda mantiqiy (virtual xotirasi bo'lgan tizimlarda uni ko'pincha virtual deb atashadi) deyiladi. Barcha mantiqiy manzillar to'plami mantiqiy (virtual) manzillar maydoni deb ataladi. Manzillarni bog'lash Shunday qilib, mantiqiy va jismoniy manzillar bo'shliqlari na tashkilotda, na hajmda bir-biriga mos kelmaydi. Mantiqiy manzil maydonining maksimal hajmi odatda protsessor hajmi bilan aniqlanadi (masalan, 232) va zamonaviy tizimlarda fizik manzil maydoniga qaraganda ancha katta. Shuning uchun protsessor va OS dastur kodidagi havolalarni dasturning asosiy xotirasidagi joriy joylashuviga mos keladigan haqiqiy fizik manzillarga solishtirish imkoniyatiga ega bo'lishi kerak. Ushbu manzil xaritasi manzil tarjimasi (majburiy) yoki manzilni bog'lash deb nomlanadi (8.3-rasmga qarang). Dastur operatori tomonidan yaratilgan mantiqiy manzilni fizik bilan bog'lash operator bajarila boshlashdan oldin yoki uni bajarish vaqtida amalga oshirilishi kerak. Shunday qilib, ko'rsatmalar va ma'lumotlarni xotiraga bog'lash, asosan, quyidagi bosqichlarda amalga oshirilishi mumkin [Silberschatz, 2002]. Tuzish vaqti. Jarayonning xotirada aniq joylashuvi kompilyatsiya vaqtida ma'lum bo'lsa, u holda jismoniy manzillar to'g'ridan-to'g'ri hosil bo'ladi. Dasturning boshlang'ich manzilini o'zgartirganda uning kodini qayta kompilyatsiya qilishingiz kerak. Masalan, uni kompilyatsiya vaqtida jismoniy manzillar bilan bog'laydigan MS-DOS .com dasturlari. Yuklash vaqti. Agar kompilyatsiya vaqtida dasturning joylashuvi to'g'risida ma'lumot bo'lmasa, kompilyator ko'chiriladigan kodni ishlab chiqaradi. Bunday holda, yakuniy majburlash yuklab olish sodir bo'lguncha qoldiriladi. Agar boshlang'ich manzil o'zgarsa, kodni o'zgartirilgan qiymat bilan qayta yuklashingiz kerak. Ijro etilish bosqichi (ijro vaqti). Agar protsessni ishlash vaqtida xotiraning bir mintaqasidan boshqasiga o'tkazish mumkin bo'lsa, ulanish ish vaqti tugaguniga qoldiriladi. Bu erda harakat registrlari kabi maxsus jihozlarga ega bo'lish maqsadga muvofiqdir. Ularning qiymati jarayon tomonidan yaratilgan har bir manzilga qo'shiladi. Aksariyat zamonaviy operatsion tizimlar buning uchun maxsus apparat mexanizmidan foydalangan holda ish vaqtida manzil tarjimasini amalga oshiradilar.
Xotirani boshqarish tizimi funktsiyalari Xotiradan foydalanishni samarali boshqarish uchun OS quyidagi funktsiyalarni bajarishi kerak: jarayonning manzil maydonini jismoniy xotiraning ma'lum sohalariga xaritalash; raqobatdosh jarayonlar o'rtasida xotirani taqsimlash; jarayonlarning manzilli bo'shliqlariga kirishni boshqarish; operativ xotirada bo'sh joy bo'lmaganda tashqi xotiraga jarayonlarni (to'liq yoki qisman) tushirish; bo'sh va band bo'lgan xotirani hisobga olish. Ma'ruzaning keyingi bo'limlari bir qator o'ziga xos xotirani boshqarish sxemalarini o'rganadi. Har bir sxema boshqaruvning ma'lum bir mafkurasini, shuningdek algoritmlarni va ma'lumotlar tuzilmalarini o'z ichiga oladi va foydalanilgan tizimning me'moriy xususiyatlariga bog'liq. Avval eng oddiy sxemalar ko'rib chiqiladi. Bugungi kunda dominant virtual xotira sxemasi keyingi ma'ruzalarda bayon qilinadi. Oddiy xotirani boshqarish sxemalari Birinchi operatsion tizimlarda juda oddiy xotirani boshqarish usullari ishlatilgan. Dastlab, har bir foydalanuvchi jarayoni asosiy xotiraga to'liq joylashishi, tutashgan xotira maydonini egallashi kerak edi va tizim ularning barchasi bir vaqtning o'zida asosiy xotiraga joylashguncha xizmat ko'rsatish uchun qo'shimcha foydalanuvchi jarayonlarini qabul qildi. Keyin "oddiy almashtirish" paydo bo'ldi (tizim hanuzgacha har bir jarayonni asosiy xotirada bir butun sifatida ajratadi, lekin ba'zida ba'zi bir mezonlarga asoslanib, u jarayonning tasvirini asosiy xotiradan tashqi xotiraga to'liq tiklaydi va uni asosiy xotirada boshqa jarayonning tasviri bilan almashtiradi). Ushbu turdagi sxemalar nafaqat tarixiy ahamiyatga ega. Hozirda ular o'quv va tadqiqot modellari operatsion tizimlarida, shuningdek o'rnatilgan kompyuterlar uchun operatsion tizimlarida qo'llaniladi. Ruxsat etilgan bo'lim sxemasi Tasodifiy kirish xotirasini boshqarishning eng oddiy usuli bu dastlabki o'lchamdagi (odatda avlod yaratish bosqichida yoki tizimni ishga tushirish vaqtida) sobit hajmdagi bir nechta bo'limlarga ajratishdir. Kiruvchi jarayonlar u yoki bu bo'limga joylashtirilgan. Bunday holda, jismoniy manzil maydonining shartli bo'limi paydo bo'ladi. Jarayonning mantiqiy va fizik manzillarini bog'lash uni ma'lum bir bo'limga yuklash bosqichida, ba'zida kompilyatsiya bosqichida sodir bo'ladi. Har bir bo'lim o'ziga xos jarayon navbatiga ega bo'lishi mumkin yoki barcha bo'limlar uchun global navbat bo'lishi mumkin (8.4-rasmga qarang). Ushbu sxema IBM OS / 360 (MFT), DEC RSX-11 va boshqa bir qator tizimlarda joriy qilingan. Xotirani boshqarish quyi tizimi kiruvchi jarayon hajmini taxmin qiladi, unga mos bo'limni tanlaydi, jarayonni ushbu bo'limga yuklaydi va manzillarni o'rnatadi.
Do'stlaringiz bilan baham: |