Sdílet prostřednictvím


Začínáme s UMDF

Tato část popisuje User-Mode Driver Framework (UMDF) a podrobně popisuje rozdíly mezi UMDF verze 1 a 2. Poskytuje také základní informace o architektuře UMDF. V této části zjistíte, jestli je ovladač UMDF správnou volbou pro vaše potřeby, a rozhodnout, jakou verzi UMDF použít.

Rozhraní WDF (Windows Driver Frameworks) obsahuje UMDF, architekturu pro vytváření ovladačů uživatelského režimu. Stejně jako Kernel-Mode Driver Framework (KMDF) poskytuje UMDF abstrakční vrstvu od WDM, zpracování velké části funkcí Plug and Play (PnP) a řízení spotřeby a umožňuje ovladači vyjádřit výslovný souhlas s konkrétními funkcemi a zpracováním událostí.

Ve Windows 8.1 jsou k dispozici dvě hlavní verze UMDF, verze 1 a 2. UMDF verze 1.11 (jedna tečka jedenáct) je nejnovější verze UMDF verze 1 a je finální verzí před nástupem UMDF 2. Tabulku s úplnými informacemi o verzi a relevanci operačního systému najdete v tématu Historie verzí UMDF.

Zápis ovladače pomocí UMDF verze 1 vyžaduje použití programovacího modelu MODELU COM k zápisu kódu C++. Zatímco UMDF verze 2 je založen na stejném koncepčním programovacím modelu ovladače jako KMDF, UMDF 1 implementuje model s různými komponentami, rozhraními ovladačů zařízení (DDI) a datovými strukturami. Všechny nové ovladače UMDF by měly být zapsány pomocí UMDF 2. Do UMDF 1 se nepřidávají žádné nové funkce a v novějších verzích Windows 10 a Windows 11 existuje omezená podpora umDF 1.

Naproti tomu počínaje UMDF verze 2 můžete napsat ovladač UMDF v programovacím jazyce C, který volá mnoho metod dostupných pro ovladače KMDF. Všechna rozhraní sdílená mezi UMDF verze 2 a KMDF mají stejné názvy, parametry a definice struktury. Pokud ovladač používá pouze sdílené funkce nebo používá podmíněná makra kolem volání, která jsou podporována pouze v jedné rozhraní, můžete napsat jeden ovladač, který můžete zkompilovat pomocí UMDF nebo KMDF. Další informace naleznete v tématu Jak vygenerovat ovladač UMDF z ovladače KMDF.

I když mezi UMDF 2 a KMDF existuje značné společné fungování, stále existuje malé množství funkcí, které jsou k dispozici pouze v jedné nebo druhé. Podrobnosti najdete v tématu Porovnání funkcí UMDF 2 sKMDF . Seznam všech zpětných volání a metod pro UMDF 2 a KMDF a k jakým rozhraním se vztahují, najdete v tématu Souhrn zpětných volání a metod WDF. V několika případech se člen struktury nebo parametr metody vztahuje pouze na jednu architekturu nebo druhou. Dokumentace popisuje tyto rozdíly na odpovídajících referenčních stránkách.