Ikkinchi imkoniyat
Download 139.89 Kb.
|
17-18-Maruza
- Bu sahifa navigatsiya:
- Xotiradan tashqarida bo’lgan sahifalarni boshqarish (qayta ishlash)
- Asosiy xotirada band bo’lmagan freymni topish (aniqlash) ; · Ushbu freymdagi sahifalar tarkibini hisoblash ; · Sahifalar jadvali elementini o’zgartirish
- 4-rasm.
- Bo’sh freymning yo’qligi. Talab bo’yicha sahifa strategiyasining unumdorligini baholash.
- Yozuv bo’yicha nusxalash (Copy-on-Write) · Fayllarni xotiraga akslantirish (Memory-Mapped Files)
3-rasm. Xotirada barcha sahifalari bo’lmagan sahifalar jadvaliga misol.
Sxemada jarayonning mantiqiy xotirasi 0 dan 5 gacha raqamlangan 6 ta sahifadan tashkil topgan. Ulardan faqat 0, 2 va 5 sahifalar asosiy xotirada joylashgan (valid/invalid bitining qiymati v = 1). 1, 3, 4 sahifalar asosiy xotirada mavjud emas (valid/invalid bitining qiymati i = 0). Xotiradan tashqarida bo’lgan sahifalarni boshqarish (qayta ishlash) Agar sahifalar jadvalida xotirada mavjud bo’lmagan sahifalarga havola bo’lsa, bunday havola bo’yicha birinchi murojaat uzilishga olib keladi va OT chaqiruvi amalga oshiriladi (page fault holati – xotirada sahifaning yo’qligi). OT aniq nima bo'lganini aniqlash uchun jadvallardan foydalanadi: Agar mantiqiy xotirada bo'lmagan sahifaga noto’g’ri (yaroqsiz) havola bo'lsa, unda dastur ishi tugaydi. Agar xotirada mavjud bo’lmagan sahifaning odatiy yetishmovchiligi bo’lsa, u holda OT uni asosiy xotiraga jolashtirishi (ko’chirib o’tkazishi) kerak. Buning uchun OT quyidagi algoritmni bajaradi: · Asosiy xotirada band bo’lmagan freymni topish (aniqlash); · Ushbu freymdagi sahifalar tarkibini hisoblash; · Sahifalar jadvali elementini o’zgartirish: validation-bitga 1 qiymatni o’rnatish; · Dasturlar ishini davom ettirish. Eslatma: bizga ma’lumki, uzilishdan keyin dastur (jarayon) sahifaning yo’qligi sababli to’xtatilgan buyruq bilan davom etadi. Shuning uchun, endi dastur normal ishlashda davom etadi va sahifaga kirish muvaffaqiyatli amalga oshiriladi.. 4-rasmda sahifaning xotirada yo’qligi holatini boshqarish bosqichi tasvirlangan 4-rasm. Sahifaning xotirada yo’qligi holatini boshqarish. 1-bosqich – xotirada sahifaning tso’qligi holati bo’yicha uzilish load M buyruqlarining bajarilishi; 2 – uzilish va OT chaqiruvi; 3 – diskdagi yuklash faylida joylashgan sahifaga murojaat; 4 – xotiradagi bo’sh freym sahifalarini hisoblash; 5 – sahifalar jadvalidagi elementlarni o’zgartirish; 6 – buyruqni takroriy (muvaffaqiyatli) bajarish. Bo’sh freymning yo’qligi. Talab bo’yicha sahifa strategiyasining unumdorligini baholash. 4-bosqichda (4-rasmda) asosiy xotirada bo’sh freym bo’lmasligi mumkin. Bunday holda OT sahifani almashtirishni (page replacement) amalga oshirishi kerak – xotiraga yuklangan, lekin aslida ishlatilmagan sahifani topishi va uni chiqarib yuborishi kerak. Sahifani almashtirish strategiyasini optimal amalga oshirish algoritmni talab qiladi, bu esa sahifadagi eng kam xatolarga olib keladi. Talab bo’yicha sahifani boshqarish unumdorligini umumiy bahosini ko’rib chiqamiz. Sahifa nosozliklar (rad etilish) koeffitsienti p ni kiritish (Page Fault Rate): 0 <= p <= 1.0. Agar p = 0 bo’lsa, u holda sahifada nosoz joylar (rad etilishi) mavjud emas. Agar p = 1 bo’lsa, u holda sahifaga har bir murojaat rad etilishiga olib keladi. Endi, samarali kirish vaqtini baholash (Effective Access Time - EAT): EAT = (1 – p) * xotiraga kirish vaqti + p * (rad etishga javob (reaktsiya) vaqti + [ sahifani xotiradan yuklash vaqti ] + sahifani xotiraga yuklash vaqti + qayta ishga tushirish vaqti) Formula tavsifi. Vaqtni baholash ikkita qo’shiluvchidan iborat. Birinchi qo’shiluvchi sahifada xatolik bo'lmagan holatga mos keladi va bu holda sahifaga kirishning o'rtacha vaqti baholanadi. Ikkinchi qo’shiluvchi sahifa ishlamay qolganda vaqtni hisoblab chiqadi. Unda birinchi komponent - bu apparat va operatsion tizimning sahifa ishdan chiqishiga javob berishning umumiy vaqti, ikkinchisi (ixtiyoriy) - sahifalarni almashtirish vaqti (agar sahifalarni almashtirish zarur bo'lsa), uchinchisi - sahifalarni almashtirish vaqti va to'rtinchidan, dasturni qayta boshlash vaqti. Agar p koeffitsient sahifaning ehtimoli sifatida qaralsa, u holda EAT qiymati umumiy sahifaga kirish vaqtining matematik kutilishi bo'ladi. Jarayonlarni yaratishda virtual xotiraning afzalliklari Virtual xotira mexanizmi tufayli jarayonlarni yaratishda quyidagicha xotirani optimallashtirishdan foydalanish mumkin: · Yozuv bo’yicha nusxalash (Copy-on-Write) · Fayllarni xotiraga akslantirish (Memory-Mapped Files). Jarayonlarning sahifalardan hamkorlikda foydalanish printsipi (yoki yozuv bo’yicha nusxalash - Copy-On-Write, COW) dastlab ota-jarayon va qism-jarayon bitta va aynan shu xotira sahifasidan birgalikda foydalanish imkonini beradi. Agar biron bir jarayon umumiy sahifani o'zgartirsa, faqatgina ushbu holatda shu sahifa nusxalanadi. COW printsipi jarayonlarni samaraliroq yaratish imkonini beradi, ya’ni faqat modifikatsiya qilingan sahifalar nusxalanadi. Bo’sh sahifalar sahifalar ro’yxatidan taqsimlanadi. Xotirada akslangan fayllardan kiritish-chiqarishda foydalanish, diskdagi blokni xotira sahifasiga solishtirish orqali faylni kiritish-chiqarishni oddiy xotiraga kirish sifatida ko'rib chiqishga imkon beradi. Dastlab, fayl talab bo'yicha sahifa so'rovi yordamida o'qiladi. Faylning bir sahifa o’lchamidagi qismi fayldan fizik sahifaga (freymga) o'qiladi. Fayldan keyingi o’qish va faylga yozish xotiraga oddiy murojaat sifatida qabul qilinadi. Bu tizimli chaqiruvlar read() va write() ga solishtirilganda faylga kirishni soddalashtiradi. Bundan tashqari, bir nechta jarayonlar har qanday sahifalarni birgalikda qo’llagani kabi bir xil faylni xotirada akslantirib saqlashga imkon beradi. 5-rasmda xotiraga akslangan fayl tushunchasining illyustratsiyasi tasvirlangan. Download 139.89 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling