|
Qurilmalarni boshqarish drayveri va dasturiy ta’minoti
|
bet | 86/222 | Sana | 15.05.2024 | Hajmi | 5,84 Mb. | | #236377 |
Qurilmalarni boshqarish drayveri va dasturiy ta’minoti
O‘z ichiga kiritish/chiqarish protseduralarni qamrab oluvchi amaliy dasturlar ishlab chiqishni osonlashtirish uchun OT xususiyatidan qat’iy nazar, barcha qurilmalarda kiritish/chiqarish bazaviy amallarning umumiy to‘plamidan foydalanish imkoniyatini
beruvchi periferik qurilmalar va ilovalar o‘rtasidagi ekranlashtirilgan mantiqiy interfeysni qo‘llab-quvvatlashi kerak. Bunday interfeysning asosi sifatida deyarli barcha operatsion tizimlar kiritish/chiqarish qurilmaning faylli modelini qo‘llab-quvvatlaydi. Bu yerda biz yana bir marta virtualizatsiyaning mahsuldor konsepsiyasi bilan to‘qnashamiz. Real kiritish/chiqarish qurilmalarning barcha ko‘p sonli turlarini operatsion tizim bitta virtual turdagi qurilma bilan almashtiradi. Barcha virtual qurilmalar yagona tarzda ishlaydi, maxsus yoki virtual fayllar deb nomlanadigan ko‘rinishda shakllanadi.Har bir kiritish/chiqarish qurilmasiga alohida maxsus fayl bog‘lanadi. U bu qurilmani amaliy jarayonlarga va operatsion tizimning qolgan qismiga baytlarning stukturalanmagan to‘plami sifatida taqdim etadi. Natijada real qurilmalar uchun kiritish/chiqarishning murakkab protseduralarini yozishni o‘rniga, dasturchi endi oddiygina mazkur qurilmalar bilan bog‘langan maxsus fayllardan o‘qish va maxsus fayllarga yozish amallardan foydalanish mumkin. Fayl-qurilma modelining jozibadorligi uning barcha turdagi qurilmalar uchun soddaligi va universalligidadir. Lekin ko‘p hollarda, masalan, grafik ma’lumotni displey yoki printerga chiqarish, tarmoq almashinuvi amallarni dasturlash va boshqalar, bu model juda sodda va amaliyotchi dasturchini ushbu qurilmalar uchun kiritish/chiqarishni dasturlashning odatdagi vazifalaridan ozod qilmaydi. Shuning uchun ayrim turdagi qurilmalar uchun OT ularning xususiyatlarini aks ettiruvchi yanada rivojlangan interfeysni qo‘llab-quvvatlaydi.
Kompyuterga ulangan har bir kiritish/chiqarish qurilmasini boshqarish uchun maxsus dasturlar talab etiladi.
Bu dasturlar qurilma drayveri deyiladi, ko‘pincha qurilma ishlab chiqaruvchisi tomonidan yaratiladi, qurilma bilan birgalikda kompakt diskda tarqatiladi. Har bir operatsion tizim uchun maxsus drayverlar talab qilinar ekan, odatda ishlab chiqaruvchilar bir nechta keng tarqalgan operatsion tizimlar uchun drayverlarni joylashtiradilar.
Har bir drayver bir turdagi qurilmaga yoki bir biriga o‘xshash ko‘plab qurilmalarga kiradilar. Masalan, bitta sichqoncha drayveriga qaramasdan tizim bir nechta turdagi sichqonchalarni qo‘llab- quvvatlaydi. Disk o‘quvchi qurilma drayverlari bir necha turdagi
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.
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.
|
| |