158
diskli, turli hajmli va tezlikni qo‘llab-quvvatlashi, shuningdek
kompaktdiskli imkoniyatli bo‘lishi mumkin.
Drayver qurilma apparat qismiga kirish imkoniyatini beradi,
unda
kontroller registri mavjud, o‘nta operatsion tizim yadrosida
integratsiyalanadi. Bunday usul yuqori samarodorlikni ta’minlaydi.
Lekin past ishonchlikga ega bo‘ladi, sababi, istalgan qurilma
drayveridagi xato butun bir tizimni ishini izdan chiqaradi.
Operatsion tizim nuqtai nazaridan qaralganda drayverlar blokli
(masalan, diskli) va belgili (masalan, klaviatura va printerlar) qurilmalari
uchun bo‘ladi. Ko‘plab operatsion tizim kompyuterga tegishli bo‘lgan
barcha blokli va barcha belgili qurilmalarni qo‘llab-quvvatlashi
kerak
bo‘lgan ikkita standart interfeys aniqlaniladi. Interfeyslar o‘zining ishini
bajarilishini drayver orqali ta’minlaydigan operatsion tizimlarda
chaqiriladigan protseduralar majmuini o‘z ichiga oladi.
Drayverning vazifasi yuqori pogona apparatdan mustaqil dastur
mavhum so‘rovlarini qabul qilish va so‘rov bajarilganligi to‘g‘risida
xabar berish. Odatiy so‘rov diskdan drayverga kelib tushadi - berilgan
ma’lumotlar bloki deb hisoblaniladi. Shu sababli agar so‘rovni uzatish
vaqtida harakatsiz bo‘lsa, u darrov ishlashni boshlaydi. Agar drayver
band bo‘lsa, so‘rov odatda navbatga qo‘yiladi
va unga imkoniyat
bo‘lganda xizmat ko‘rsatiladi.
Kiritish/chiqarish so‘roviga xizmat ko‘rsatishda birinchi qadam
uzatilgan parametrlarni to‘g‘riligini tekshirish va xatolarni to‘g‘irlash
bo‘ladi. Agar so‘rov to‘g‘ri bo‘lsa keyingi qadam mavhum taqdim
etilgan shakldan aniq bir shaklga o‘tkaziladi.
Shundan so‘ng belgilangan buyruqlarni bajarishda drayver
kontroller registri orqali uning qurilmasiga uzatishni boshlaydi.
Sodda kontrollerlar bitta buyruq bo‘yicha
bir marta qabul qiladi,
nisbatan murakkab buyruqlar ro‘yxati bilan bog‘liqlikni qo‘llab-
quvvatlash operatsion tizimning ishtirokisiz bajariladi.
Barcha buyruqlar uzatilgandan so‘ng holat ikki senariydan
bittaga o‘tadi. Qurilma drayverlari ko‘p holatlarda uning uchun
belgilangan ish bajarilmagunga qadar kutadilar,
shu sababli
qurilmadan to‘xtalishlar kelib tushgunga qadar bloklash holatida
bo‘ladi. Boshqa bir variantda operatsiya kutishsiz yakunlanadi va
drayverni bloklashga zarurat bo‘lmaydi.
Agar drayver bloklansa unda to‘xtalish bo‘lganda blokdan ozod
etiladi. Boshqa bir holatda drayver bloklanmaydi, umuman bloklanmaydi.
159
Drayver operatsiyasini yakunlash bo‘yicha operatsiya xatosiz o‘tganligiga
ishonch hosil qilishi kerak. Agar bari to‘g‘ri bo‘lsa
drayverga qurilma
dasturiy ta’minotidan mustaqil ravishda ma’lumotlarni uzatish mumkin
bo‘ladi (faqat o‘qilgan bloklar). Va nihoyat drayver operatsiya
yakunlanganligi to‘g‘risida ma’lumot uchun chaqiruvchi dastur ayrim
axborotlariga murojaat qilinadi. Agar navbatda boshqa so‘rov
turgan
bo‘lsa, ulardan biri tanlaniladi va ishga tushiriladi, boshqa so‘z bilan
aytganda drayver keyingi so‘rovni kutishga bloklanadi.
Do'stlaringiz bilan baham: