171
Amaliy jarayon ko‘pincha bir emas bir necha resurslarga kira
olishi zarur. Faraz qilamiz, masalan ikkala jarayonning har biri
kompakt – diskdan hujjat nusxasini yozib olishni istashi mumkin.
A
jarayon skanerdan foydalanishga ruhsat so‘raydi va uni oladi.
B
jarayon boshqa dastur bilan dasturlanganligi
sababli dastlab kompakt
diskga yozish uchun qurilmaga murojaat qiladi. So‘ng
A
jarayon
kompakt diskga yozish uchun qurilmaga murojaat qiladi, lekin bu
qurilma
B
jarayon bilan band qilinganligi sababli so‘rovga rad javobi
beriladi. Afsuski, kompakt – diskga yozish uchun qurilmani ozod
qilishda
B
skanerdan so‘raydi. Jarayonlar bloklanganligini ko‘rsatadi.
Bunday holat o‘zaro birgalikda bloklash yoki berklik deyiladi.
Resurslar
Tizim jarayon qurilma, fayl va boshqalarga
kirish qoidalarini
taqdim etganda o‘zaro birgalikda bloklashni ko‘rishimiz mumkin.
O‘zaro birgalikda bloklash to‘g‘risida umumiy bir xulosaga kelib
obyektga kirishni resurs deb atashimiz mumkin. Resurs qurilma
(masalan, magnitli tasmali tarqatgich) yoki axborot bir qismi
(ma’lumotlar omborida berkitilgan yozuv) bo‘lishi mumkin.
Kompyuterda murojaat qilish mumkin bo‘lgan turli hajmli resurslar
mavjud. Bundan tashqari tizimda biron
bir resursning bir nechta
nusxalarini ko‘rishimiz mumkin. Agar tizimda
bir xil
deb ataladigan
bir nechta o‘zaro almashadigan resurs nusxalarini bor, unda
resurslarga murojaat qilishga javob nusxalardan kirishga ruhsat etilgan
istalgan birini taqdim etishi mumkin. Resurs – vaqtning istalgan onida
faqat bitta jarayondan foydalanish qoidasi.
Resurslar ikki xil bo‘ladi:
yuklanadigan
va
yuklanmaydigan
.
Yuklanadigan resurs jarayonning egasidan olish zararsiz. Bunday
resurslarga xotirani kiritish mumkin. Masalan,
foydalanuvchi xotirasi
64 Mbayt li tizimga bitta printer va har biri nimanidir chop etishni
istayotgan 64 Kbaytli ikkita jarayon bor.
A
jarayon so‘raydi va
printerni oladi, so‘ng chop etish uchun ma’lumotlarni hisoblashni
boshlaydi. Yana hisoblashni tugamasdan, o‘zining kvant vaqtini
oshiradi va o‘rin almashtirish maydonida diskga yuklaydi.
Shundan so‘ng
B
jarayon ishlaydi va bekordan bekorga printerga
murojaat qilishga harakat qiladi. Natijada
berklikli vaziyatga tushib
qolinadi,
A
jarayon printerni egallab olganligi sababli,
B
jarayon
xotirani band qiladi va ulardan hech biri resursiz o‘z ishini davom
172
ettira olmaydi.
B
jarayonni xotiraga yuklash ta’qiqlanmagan, uni o‘rin
almashtirish maydonida xotiraga o‘tkaziladi va
A
jarayonni xotiradan
diskga yuklanadi. Shundan so‘ng
A
jarayon hisoblashni yakunlashi,
chop etishni bajarishi va so‘ng printerni bo‘shatishi mumkin. O‘zaro
birgalikda bloklanish sodir bo‘lmaydi.
Yuklanmaydigan resurs – hisoblash natijasida yo‘q qilib
bo‘lmaydigan joriy egasidan olib bo‘lmaydigan resurs. Agar kompakt
– diskga yozish vaqtida yozish uchun qurilmadan jarayonni to‘satdan
tortib olsa
va uni boshqa jarayonga uzatsa, unda kompakt – disk
ishdan chiqish natijasini olamiz. Kompakt diskni yozish uchun
qurilma vaqtinchalik resurs ixtiyoriy vaqtda yuklanmaydi.
O‘zaro birgalikda bloklash yuklanmaydigan resurs hisoblanadi.
Berklikli holatda, ya’ni resurs ko‘rinishiga qarama-qarshi bo‘lganda,
odatda bir jarayondan boshqasiga resurslarni taqsimlashga ruhsat
beradi. Shu sababli biz e’tiborimizni yuklanmaydigan resurslarga
qaratamiz.
Resursdan foydalanish uchun zarur hodisalar ketma-ketligi
mavhum ko‘rinishi quyidagi shaklda tasvirlanadi:
Resursni so‘rash;
Resursdan foydalanish;
Resursga qaytish.
Agar resurs ruhsat etilmagan bo‘lsa, uning jarayoni so‘rovni
kutadi. Ba’zi operatsion tizimlarda avtomatik
bloklaydigan jarayon
resursiga murojaat muvaffaqiyatsiz bo‘lsa va shundan so‘ng qayta
yangilansa resurs kirishga ruhsat etilgan bo‘lib qoladi. Boshqa
tizimlarda resurs so‘rovi va rad etishda xatolik kodiga murojaat etilsa,
unda chaqiriluvchi jarayon biroz kutib turishi va harakatni takroran
bajarishi mumkin.
Dostları ilə paylaş: