uchun qo'shimcha iqtiboslar kerak tekshirish




Download 0.95 Mb.
bet2/5
Sana14.09.2022
Hajmi0.95 Mb.
#25912
1   2   3   4   5
Bog'liq
Новый документ в формате RTF

uchun qo'shimcha iqtiboslar kerak tekshirish. Iltimos yordam bering ushbu maqolani yaxshilang tomonidan ishonchli manbalarga iqtiboslarni qo'shish. Ma'lumot manbasi bo'lmagan materialga qarshi chiqish va olib tashlash mumkin. (2010 yil dekabr) (Ushbu shablon xabarini qanday va qachon olib tashlashni bilib oling)

Virtual xotiraning deyarli barcha amaldagi dasturlari a virtual manzil maydoni ichiga sahifalar, tutashgan virtual xotira manzillari bloklari. Zamonaviy haqida sahifalar[c] tizimlar odatda kamida 4 ga teng kilobayt hajmi bo'yicha; katta virtual manzillar diapazoniga yoki real xotiraning hajmiga ega tizimlar odatda kattaroq sahifa o'lchamlaridan foydalanadi.[19]
Sahifalar jadvallari
Sahifalar jadvallari dastur tomonidan ko'rilgan virtual manzillarni tarjima qilish uchun ishlatiladi jismoniy manzillar ko'rsatmalarga ishlov berish uchun apparat tomonidan ishlatiladi;[20] ushbu maxsus tarjimani boshqaradigan bunday apparat ko'pincha xotirani boshqarish bo'limi. Sahifalar jadvalidagi har bir yozuv mos keladigan sahifaning haqiqiy xotirada yoki yo'qligini ko'rsatuvchi bayroqqa ega. Agar u haqiqiy xotirada bo'lsa, sahifalar jadvali yozuvida sahifa saqlanadigan haqiqiy xotira manzili bo'ladi. Agar apparat tomonidan sahifaga havola qilingan bo'lsa, agar sahifadagi jadval jadvalidagi yozuv u hozirda haqiqiy xotirada emasligini ko'rsatsa, apparat sahifa xatosi istisno, ning disk xotira boshqaruvchisi komponentini chaqirish operatsion tizim.
Tizimlarda butun tizim uchun bitta sahifa jadvali, har bir dastur va segment uchun alohida sahifalar jadvallari, katta segmentlar uchun sahifalar jadvallari daraxti yoki ularning bir nechta birikmasi bo'lishi mumkin. Agar bitta sahifa jadvali bo'lsa, turli xil dasturlar bir vaqtning o'zida yugurish bitta virtual manzilning turli qismlaridan foydalaning. Agar bir nechta sahifa yoki segment jadvallari bo'lsa, bir nechta virtual manzil bo'shliqlari va alohida sahifalar jadvallari bo'lgan bir vaqtning o'zida ilovalar turli xil haqiqiy manzillarga yo'naltiriladi.
Haqiqiy xotira hajmi kichikroq bo'lgan ba'zi oldingi tizimlar, masalan SDS 940, ishlatilgan sahifa registrlari manzil tarjimasi uchun xotiradagi sahifa jadvallari o'rniga.
Disk xotira rahbari
Operatsion tizimning ushbu qismi sahifalar jadvallarini yaratadi va boshqaradi. Agar apparat sahifada xatolik holatini keltirib chiqarsa, disk xotira noziri ikkinchi darajali xotiraga kirsa, natijada virtual manzilga ega bo'lgan sahifani qaytaradi, natijada sahifaning jadvallari virtual manzilning joylashishini aks ettiradi va tarjima mexanizmini so'rovni qayta ishga tushiring.
Barcha fizik xotira allaqachon ishlatilganda, disk xotira noziri almashtirilgan sahifani ushlab turish uchun asosiy xotirada sahifani bo'shatishi kerak. Nazoratchi turli xillardan birini ishlatadi sahifani almashtirish algoritmlari kabi yaqinda ishlatilgan qaysi sahifani bo'shatish kerakligini aniqlash uchun.
Iplangan sahifalar
Operatsion tizimlarda xotira sohalari mavjud mahkamlangan (hech qachon ikkilamchi saqlashga almashtirilmagan). Boshqa ishlatilgan atamalar qulflangansobit, yoki simli sahifalar. Masalan, uzmoq mexanizmlari o'zlarining ishlovchilariga ko'rsatgichlar qatoriga tayanadi, masalan I / O tugatish va sahifa xatosi. Agar ushbu ko'rsatgichlarni o'z ichiga olgan sahifalar yoki ular chaqirgan kodlar sahifaga mos keladigan bo'lsa, uzilishlar bilan ishlash ancha murakkab va uzoq vaqt talab etiladi, ayniqsa, sahifadagi xatolar to'xtab qolganda. Shunday qilib, sahifalar jadvali tuzilmalarining ba'zi qismlari sahifaga joylashtirilmaydi.
Ba'zi sahifalar qisqa vaqtga mahkamlangan bo'lishi mumkin, boshqalari uzoq vaqtga mahkamlangan bo'lishi mumkin, boshqalari esa doimiy ravishda mahkamlanishi kerak. Masalan:

  • Disk xotira sozlagichining kodi va sahifalar joylashgan ikkinchi darajali saqlash moslamalari uchun drayverlar doimiy ravishda mahkamlangan bo'lishi kerak, aks holda kerakli kod mavjud bo'lmagani uchun paging ham ishlamaydi.

  • Vaqtni belgilashga bog'liq komponentlar o'zgaruvchan pacing kechikishini oldini olish uchun mahkamlangan bo'lishi mumkin.

  • Ma'lumotlar buferlari to'g'ridan-to'g'ri foydalanadigan periferik qurilmalar tomonidan kiriladigan xotiraga bevosita kirish yoki I / O kanallari I / U ishlashi davom etayotgan paytda mahkamlangan sahifalarda yashashi kerak, chunki bunday qurilmalar va avtobuslar ularga biriktirilgan fizik xotira manzillarida joylashgan ma'lumotlar buferlarini topishni kutmoqdalar; avtobusda a bo'lishidan qat'iy nazar I / O uchun xotirani boshqarish bloki, agar sahifada nosozlik yuz bersa va sahifa xatosi qayta ishlangandan so'ng qayta ishga tushirilsa, o'tkazmalarni to'xtatish mumkin emas.

Uchun IBM operatsion tizimlarida Tizim / 370 va voris tizimlari, bu atama "belgilangan" bo'lib, bunday sahifalar uzoq muddatli, qisqa muddatli yoki tuzatilmagan (ya'ni sahifalashga yaroqli) bo'lishi mumkin. Tizimni boshqarish tuzilmalari ko'pincha uzoq muddatli (devorning soati bilan o'lchanadi, ya'ni vaqt bir soniya bilan emas, balki soniyada o'lchanadi), I / U buferlari odatda qisqa muddatli (odatda sezilarli darajada o'lchanadi) devor soatidan kamroq, ehtimol o'nlab millisekundlarda). Darhaqiqat, operatsion tizimda ushbu qisqa muddatli sobit ma'lumotlar buferlarini "tezkor tuzatish" uchun maxsus imkoniyat mavjud (fiksatsiya vaqtni sarflamasdan amalga oshiriladi) Supervisor chaqiruvi bo'yicha ko'rsatma ).
Multics "simli" atamasidan foydalangan. OpenVMS va Windows vaqtincha sahifalashga yaroqsiz bo'lgan sahifalarga murojaat qiling (kiritish-chiqarish buferlariga kelsak) "qulflangan", shunchaki hech qachon sahifaga kira olmaydigan sahifalar uchun shunchaki "sahifasiz". The Yagona UNIX spetsifikatsiyasi uchun spetsifikatsiyada "qulflangan" atamasidan foydalaniladi mlock(), kabi mlock() odam sahifalari ko'pchilikda Unixga o'xshash tizimlar.
Virtual-real operatsiya
Yilda OS / VS1 va shunga o'xshash operatsion tizimlar, tizim xotirasining ba'zi qismlari "V = R" deb nomlangan "virtual-real" rejimida boshqariladi. Ushbu rejimda har bir virtual manzil bir xil haqiqiy manzilga to'g'ri keladi. Ushbu rejim uchun ishlatiladi uzmoq mexanizmlar, eskirgan tizimlardagi disk xotira noziri va sahifalar jadvallari va nostandart I / U boshqaruvidan foydalanadigan dastur dasturlari. Masalan, IBM z / OS 3 rejimga ega (virtual-virtual, virtual-real va virtual-fix).[21][sahifa kerak ]
Qo'rqish
Qachon xotira va sahifani o'g'irlash ishlatilgan, muammo "deb nomlanganurish "sodir bo'lishi mumkin, bunda kompyuter sahifalarni orqa do'konga va undan do'konga o'tkazishda juda ko'p vaqt sarflaydi, shuning uchun foydali ish sekinlashadi. ishchi to'plam foydali rivojlanish uchun xotirada bo'lishi kerak bo'lgan sahifalarning minimal to'plamidir. Qo'rqitish barcha faol dasturlarning ishchi to'plamlarini saqlash uchun etarli xotira mavjud bo'lmaganda sodir bo'ladi. Haqiqiy xotirani qo'shish eng oddiy javobdir, ammo dastur dizayni, rejalashtirish va xotiradan foydalanishni yaxshilash yordam beradi. Yana bir echim - tizimdagi faol vazifalar sonini kamaytirish. Bu bir yoki bir nechta jarayonlarning butun ishchi to'plamini almashtirish orqali haqiqiy xotiraga bo'lgan talabni kamaytiradi.
Segmentlangan virtual xotira
Kabi ba'zi tizimlar Burrouz B5500,[22] foydalanish segmentatsiya xotira o'rniga virtual manzil bo'shliqlarini o'zgaruvchan uzunlikdagi segmentlarga bo'lish. Bu erda virtual manzil segment raqami va segment ichidagi ofsetdan iborat. The Intel 80286 variantga o'xshash segmentatsiya sxemasini qo'llab-quvvatlaydi, ammo u kamdan kam qo'llaniladi. Har bir segmentni sahifalarga bo'lish orqali segmentatsiya va pagingdan birgalikda foydalanish mumkin; kabi ushbu xotira tuzilishiga ega tizimlar Multics va IBM tizimi / 38, odatda xotira muhofazasini ta'minlaydigan paging-ustunlik, segmentatsiya.[23][24][25]
In Intel 80386 va keyinroq IA-32 protsessorlar, segmentlar a da joylashgan 32-bit chiziqli, pagingli manzil maydoni. Segmentlar ushbu bo'shliqda va tashqarida harakatlanishi mumkin; u erdagi sahifalar virtual xotiraning ikki darajasini ta'minlovchi asosiy xotiradan "tashqariga" chiqishi va chiqishi mumkin; agar biron bir operatsion tizim buni amalga oshirsa, buning o'rniga faqat paging-dan foydalaning. Dastlab uskuna yordamisiz x86 virtualizatsiyasi echimlar paging va segmentatsiyani birlashtirdi, chunki x86 paging faqat ikkita himoya domenini taqdim etadi, VMM / guest OS / mehmon dasturlari to'plami esa uchta kerak.[26]:22 Paging va segmentatsiya tizimlari o'rtasidagi farq nafaqat xotirani taqsimlash bilan bog'liq; segmentatsiya foydalanuvchi jarayonlariga, xotira modeli semantikasining bir qismi sifatida ko'rinadi. Demak, bitta katta bo'shliqqa o'xshagan xotira o'rniga u bir nechta bo'shliqlarga tuzilgan.
Ushbu farq muhim oqibatlarga olib keladi; segment - bu o'zgaruvchan uzunlikdagi sahifa yoki manzil maydonini uzaytirishning oddiy usuli emas. Jarayon xotirasi va fayl tizimi o'rtasida farq yo'q bo'lgan bir darajali xotira modelini taqdim eta oladigan segmentatsiya faqat jarayonning potentsial manzil maydoniga tushirilgan segmentlar (fayllar) ro'yxatidan iborat.[27]
Kabi qo'ng'iroqlar tomonidan taqdim etilgan mexanizmlar bilan bir xil emas mmap va Win32 MapViewOfFile, chunki fayllarni yarim o'zboshimchalik bilan xaritalashda fayllararo ko'rsatgichlar ishlamaydi. Multics-da fayl (yoki ko'p segmentli fayldan segment) manzil maydonidagi segmentga joylashtirilgan, shuning uchun fayllar har doim segment chegarasida xaritada joylashgan. Faylni bog'lash bo'limida ko'rsatgichni registrga yuklash yoki u orqali bilvosita ma'lumot berishga urinish tuzoqni keltirib chiqaradigan ko'rsatgichlar bo'lishi mumkin. Eritilmagan ko'rsatkichda ko'rsatgich ko'rsatilgan segment nomi va segment ichidagi ofset mavjud; tuzoqqa ishlov beruvchi segmentni manzil maydoniga tushiradi, segment raqamini ko'rsatgichga qo'yadi, markerdagi yorliq maydonini endi tuzoqqa olib kelmasligi uchun o'zgartiradi va tuzoq sodir bo'lgan kodga qaytadan bajaradi. tuzoqqa sabab bo'lgan ko'rsatma.[28] Bu a ga bo'lgan ehtiyojni yo'q qiladi bog'lovchi to'liq[7] va turli xil jarayonlar bir xil faylni shaxsiy manzil maydonlarida turli joylarga solishtirganda ishlaydi.[29]
Manzil maydonini almashtirish
Ba'zi operatsion tizimlar to'liq almashtirishni ta'minlaydi manzil bo'shliqlari, paging va segmentatsiya uchun har qanday qulayliklarga qo'shimcha ravishda. Bu sodir bo'lganda, OS fayllarni almashtirish uchun ushbu sahifalarni va segmentlarni hozirda haqiqiy xotirada yozadi. Almashinishda operatsion tizim almashtirish fayllaridagi ma'lumotlarni o'qiydi, lekin almashtirish paytida operatsiya qilingan sahifalarni avtomatik ravishda o'qimaydi.
IBM kompaniyalari MVS, dan OS / VS2 versiyasi 2 orqali z / OS, manzil maydonini yaroqsiz deb belgilashni ta'minlaydi; buni amalga oshirish manzil maydoniga biron bir sahifani mahkamlamaydi. Buni loyihaning nomini kiritib, ish davomida bajarish mumkin[30] o'chirib bo'lmaydigan bayroq bilan Dastur xususiyatlari jadvalidagi asosiy dastur. Bundan tashqari, imtiyozli kod SYSEVENT yordamida vaqtincha manzil maydonini o'chirib qo'yishi mumkin Supervisor chaqiruvi bo'yicha ko'rsatma (SVC); ma'lum o'zgarishlar[31] fazoviy xususiyatlarda OS uni almashtirishni va keyin SYSEVENT TRANSWAP-dan foydalangan holda almashtirishni talab qiladi.[32]
Shuningdek qarang

  • CPU dizayni

  • Sahifa (hisoblash)

  • Keshlash algoritmlari

  • Xotirani ajratish

  • Xotirani boshqarish (operatsion tizimlar)

  • Himoyalangan rejim, an x86 virtual xotiraga imkon beradigan rejim.

  • CUDA Belgilangan xotira

  • Geterogen tizim arxitekturasi, RAM va Graphic-ning karta xotirasini virtual xotirada birlashtirishga mo'ljallangan bir qator xususiyatlar

Qo'shimcha o'qish

  • Xennessi, Jon L.; va Patterson, Devid A.; Kompyuter arxitekturasi, miqdoriy yondashuv (ISBN 1-55860-724-2)

Izohlar


    1. Download 0.95 Mb.
1   2   3   4   5




Download 0.95 Mb.

Bosh sahifa
Aloqalar

    Bosh sahifa



uchun qo'shimcha iqtiboslar kerak tekshirish

Download 0.95 Mb.