Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
1. Rozhrania špecifické pre hardvér:
* MAMPAPMAPIPAT I/O (MMIO): Registre zariadenia sú mapované do adresy pamäťového adresára systému. Vodič číta a zapisuje na tieto adresy pamäte na ovládanie zariadenia. Toto je bežné pre mnoho zariadení vrátane grafických kariet a kariet sieťového rozhrania (NIC). Vodič interaguje priamo s fyzickými hardvérovými registrmi.
* Port-mapované I/O (PIO): Prístup k zariadeniu je prístupný prostredníctvom špecifických vstupných/výstupných portov. Vodič odosiela príkazy a prijíma údaje písaním a čítaním z týchto portov. Toto je teraz menej bežné, ale stále sa vyskytuje v starších systémoch. Rovnako ako MMIO, je to priama interakcia.
* prerušuje: Zariadenie preruší CPU, keď potrebuje pozornosť (napr. Dáta sú pripravené, vyskytla sa chyba). Prerušenie spustí špecifický obslužný program prerušenia v ovládači, ktorý umožňuje vodičovi reagovať na udalosť zariadenia. To je rozhodujúce pre asynchrónne operácie.
* Priamy prístup k pamäti (DMA): Zariadenie môže priamo pristupovať k systémovej pamäť bez zásahu CPU, čo zlepšuje výkon. Vodič nakonfiguruje prenos DMA a uvoľní procesor pre ďalšie úlohy.
2. Softvérové rozhrania (Abstrakčné vrstvy):
Vyššie uvedené hardvérové interakcie sú zvyčajne abstrahované softvérovými vrstvami, aby poskytovali zvládnuteľnejšie a prenosnejšie rozhranie. Patria sem:
* jadro operačného systému: Vodič pracuje v jadre operačného systému. Využíva služby jadra na prístup k hardvérovým zdrojom a na interakciu s ostatnými časťami systému.
* API špecifické pre zariadenie: Operačné systémy často poskytujú rozhrania API (aplikačné programovacie rozhrania) špecifické pre určité typy zariadení (napr. SCSI, SATA, USB). Tieto rozhrania API zjednodušujú vývoj vodiča abstrakciou detailov na nízkej úrovni.
* Rozhrania špecifické pre dané zbernice: Zariadenie je pripojené k systému prostredníctvom zbernice (napr. PCI, USB, SATA). Vodič používa protokoly a rozhrania špecifické pre zbernice na komunikáciu so zariadením cez zbernicu.
v súhrne:
Komunikačný proces je možné vizualizovať nasledovne:
1. Aplikácia (používateľ alebo systém): Vyžaduje operáciu (napr. Čítanie údajov z pevného disku).
2. Operačný systém: Smeruje požiadavku na príslušný ovládač zariadenia.
3. Ovládač zariadenia: Na komunikáciu so zariadením používa príslušné rozhranie špecifické pre hardvér (MMIO, PIO atď.) A softvérové abstrakcie. Môže to zahŕňať odosielanie príkazov, prijímanie údajov, manipuláciu s prerušeniami alebo riadenie prevodov DMA.
4. Zariadenie: Vykoná požadovanú operáciu a odošle výsledok (ak existuje) späť k ovládači.
5. Ovládač zariadenia: Spracováva reakciu a vráti výsledok do operačného systému.
6. Operačný systém: Vráti výsledok do aplikácie.
Zložitosť komunikácie do značnej miery závisí od sofistikovanosti zariadenia a operačného systému. Moderné systémy často využívajú viac vrstiev abstrakcie na zjednodušenie vývoja vodiča a zlepšenie prenosnosti.