• Qurilma drayverlari
  • Drayverlarning keng spektrini qo‘llab- quvvatlash
  • Qurilmalarni boshqarish drayveri va dasturiy ta’minoti




    Download 4,88 Mb.
    bet43/129
    Sana18.11.2023
    Hajmi4,88 Mb.
    #100808
    1   ...   39   40   41   42   43   44   45   46   ...   129
    Bog'liq
    a12b69867f018f785135aa04d3624799 Operatsion tizimlar грифли 100 шт

    Qurilmalarni boshqarish drayveri va dasturiy ta’minoti




    Qurilmalar dasturiy interfeysi


    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.

    Qurilma drayverlari


    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.

    Drayverlarning keng spektrini qo‘llab-quvvatlash


    Drayver ikki turdagi interfeyslarni qo‘llab-quvvatlashi kerak:

    • OT yadrosi modullari bilan (kiritish/chiqarish kichik tizimi, tizim so‘rovlari, jarayon va xotirani boshqaruvchi kichik tizimlar modullari va hokazo) “drayver-yadro” interfeysi (Driver Kernel Interface, DKI);

    • tashqi qurilmalar kontrollerlari bilan “drayver-qurilma” interfeysi (Driver Device Interface, DDI).

    “Drayver-yadro” interfeysi barcha hollarda standartlashtirilgan bo‘lishi kerak, “drayver-qurilma” interfeysni esa kiritish/chiqarish kichik tizimi drayverga kontrollerning apparaturasi bilan bevosita o‘zaro harakat qilishga ruxsat bermagan holda va bu amallarni mustaqil bajarganda standartlashtirish kerak bo‘ladi. Drayverni apparaturadan ekranlashtirish juda foydali funksiya hisoblanadi, chunki bu vaziyatda drayver apparatura platformasidan mustaqil bo‘lib qoladi. Kiritish/chiqarish kichik tizimi ma’lum klassdagi qurilmalarga maxsus interfeys taqdim etib, bir necha turdagi interfeyslarni DKI/DDI qo‘llab-quvvatlashi mumkin. Masalan, Windows NT oilasidagi OT larda tarmoq adapteri drayverlari uchun NDIS (Network Driver Interface Specification) standartli interfeys nazarda tutilgan, lekin tarmoq transport protokollarining drayverlari tarmoq dasturiy ta’minotning yuqori qatlamlari bilan TDI (Transport Driver Interface) interfeysi orqali o‘zaro harakat qiladi. Operatsion tizim drayverlarini ishlab chiqish jarayonini qo‘llab-quvvatlash uchun odatda tegishli instrumental vositalar (kutubxonalar, kompilyator va sozlovchilar) to‘plamidan iborat DDK (Driver Development Kit) drayverlar to‘plami ishlab chiqariladi.

    Drayverlarni dinamik yuklash va tizimdan chiqarish


    Mazkur OT tomonidan qo‘llab-quvvatlashga imkoni bor yordamchi (periferik) qurilmalar doimo OT boshqaradigan aniq mashinada o‘rnatiladigan qurilmalar to‘plamidan sezilarli darajada kengroq bo‘ladi. Shuning uchun OT qimmatli xususiyati, ya’ni operativ xotiraga kerakli drayverni dinamik ravishda yuklash (OT to‘xtamagan holda) va mazkur qurilmani qo‘llab-quvvatlash ehtiyoji qolmagandan keyin uni tizimdan chiqarish, xotira tizimi maydonini sezilarli darajada tejashi mumkin. Drayverlarni dinamik yuklashni qo‘llab-quvvatlash deyarli barcha zamonaviy universal operatsion tizimlarga qo‘yilgan talab hisoblanadi. Kompyuterning tashqi qurilmalarning joriy konfiguratsiyasi o‘zgargan holda drayverlarni dinamik yuklashning muqobil yo‘li deb, kerakli drayverlar to‘plami joylashgan yadro kodini qayta kompilyatsiya qilish hisoblanadi. Bunda yadroning barcha qismlari o‘rtasida statik bog‘lanishlar o‘rniga dinamik bog‘lanishlar yaratiladi. Masalan, shunday yo‘l bilan mazkur muammo Unix operatsion tizimining avvalgi versiyalarda hal etilgan. Yadro va drayverlar o‘rtasidagi statik bog‘lanishlar OT tuzilmasini soddalashtiradi, lekin bu yondashuv operatsion tizim modullari boshlang‘ich kodlarini mavjudligini talab qiladi; ulardan foydalanish esa ko‘pincha mustasno (Unix/Linux ning notijorat versiyalari uchun) emas, balki qoidadir. Shuningdek, bu variantda operatsion tizimning avvalgi ishlab turgan versiyasini to‘xtatish va uni yangi bilan almashtirish kerak, OT ishlashidagi tanaffuslar ayrim hollarda yo‘l qo‘yilmasligi mumkin.



      1. Download 4,88 Mb.
    1   ...   39   40   41   42   43   44   45   46   ...   129




    Download 4,88 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Qurilmalarni boshqarish drayveri va dasturiy ta’minoti

    Download 4,88 Mb.