Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Na poniższej ilustracji przedstawiono obiekty urządzeń, które reprezentują urządzenia klawiaturowe i myszy pokazane wcześniej na rysunku ilustrującym Konfiguracja sprzętu klawiatury i myszy. Sterowniki klawiatury i myszy pokazane na rysunku ilustrującym warstwy klawiatury i myszy tworzą te obiekty urządzeń poprzez wywołanie procedury obsługi wejścia/wyjścia (IoCreateDevice).
W przypadku urządzeń z klawiaturą i myszą zarówno odpowiednie sterowniki portów, jak i klas tworzą obiekty urządzeń. Sterownik portu tworzy obiekt urządzenia fizycznego (PDO) do reprezentowania portu fizycznego. Każdy sterownik klasy tworzy własny obiekt funkcjonalny urządzenia (FDO) do reprezentowania klawiatury lub urządzenia myszy jako obiektu docelowego dla żądań we/wy.
Każdy sterownik klasy wywołuje procedurę obsługi we/wy, aby uzyskać wskaźnik do obiektu urządzenia sterownika niższego poziomu, dzięki czemu może ustawić się powyżej tego sterownika, którym jest sterownik portu. Następnie sterownik klasy może wysyłać żądania we/wy do sterownika portu dla docelowego obiektu PDO reprezentującego jego urządzenie fizyczne.
Opcjonalny sterownik filtru dodany do konfiguracji spowoduje utworzenie obiektu urządzenia filtru (DO filtru). Podobnie jak sterownik klasy, opcjonalny sterownik filtrujący łączy się do niższego sterownika w stosie urządzenia i wysyła żądania we/wy dla docelowego obiektu urządzenia (PDO) do niższego sterownika.
Jak pokazano wcześniej na rysunku warstw sterownika klawiatury i sterownika myszy, każdy sterownik portu jest sterownikiem magistrali (sterownik najniższego poziomu), więc każdy sterownik portu urządzenia, który generuje przerwania, musi skonfigurować obiekt (obiekty) przerwania i zarejestrować ISR.
Sterownik portu dla dwóch urządzeń, taki jak sterownik i8042 dla klawiatury i pomocniczego kontrolera urządzenia, pokazany na rysunku , Konfiguracje sprzętu klawiatury i myszy, musi skonfigurować specyficzne dla urządzenia obiekty przerwań , jeśli każde z urządzeń używa innego wektora przerwań. Podczas pisania takiego sterownika można zaimplementować oddzielne rutyny ISR dla każdego urządzenia lub zaimplementować jedną rutynę ISR dla obu urządzeń.