Udostępnij przez


Tabele funkcji dla sterowników miniportu

Interfejsy górnego poziomu ogólnych sterowników miniportu (zobacz Terminologia audio WDM) składają się z tabel funkcji. Niektóre sterowniki miniportów innych niż audio dostarczają tabelę funkcji do sterownika portu podczas rejestracji, w którym sterownik miniportu informuje sterownik portu o rozmiarze struktury kontekstu, której będzie wymagał sterownik miniportu. Sterownik portu kopiuje tabelę funkcji do określonej lokalizacji prywatnej, przydziela strukturę kontekstu i wywołuje funkcję inicjowania w tabeli funkcji, przekazując wskaźnik do struktury kontekstu.

Podobnie sterowniki miniportów audio używają tabel funkcji, ale są statycznie przydzielane i nie muszą być kopiowane przez sterownik portu. Sterownik portu pobiera również pamięć kontekstu ("obiektu") z określonej puli i umieszcza wskaźnik do tabeli funkcji w kontekście. Ponieważ wskaźnik tabeli funkcji jest zawsze pierwszym polem w kontekście, sterownik portu potrzebuje tylko wskaźnika kontekstu i może uzyskać dostęp do tabeli funkcji za pośrednictwem kontekstu.

Takie podejście zostało podjęte, ponieważ model COM dostarcza solidny, wydajny, powszechnie zrozumiały model tworzenia abstrakcyjnych obiektów. Model sterownika miniportu audio wykorzystuje doświadczenie branżowe z COM i zasób literatury COM. Obiekty można zaimplementować i używać w języku C lub C++. Można również użyć języka asemblera, ale należy go używać tylko wtedy, gdy przenośność nie jest wymagana.