Sdílet prostřednictvím


Architektura UMDF

Toto téma popisuje, jak správce ovladačů sestaví zásobník zařízení v uživatelském režimu a jak proces hostitele, reflektor a správce ovladačů zpracovávají vstupně-výstupní požadavek, který aplikace odesílá do ovladače User-Mode Driver Framework (UMDF).

Podobně jako zásobník v režimu jádra je vytváření a odstranění zásobníku uživatelského režimu řízeno událostmi Plug and Play (PnP). Po sestavení zásobníku v režimu jádra reflektor upozorní správce ovladačů, aby zahájil vytváření zásobníku v uživatelském režimu. Správce ovladačů spustí proces hostitele ovladače a poskytne dostatek informací k tomuto spuštěnému procesu pro vytvoření zásobníku uživatelského režimu. Tímto způsobem lze zásobník uživatelského režimu považovat za rozšíření zásobníku režimu jádra.

Proces hostitele ovladačů poskytuje prostředí pro spuštění ovladačů v uživatelském režimu a směruje zprávy mezi ovladači v zásobníku uživatelského režimu. Reflektor používá komunikační mechanismus založený na zprávách ke komunikaci se správcem ovladačů a hostitelským procesem.

komponenty UMDF, včetně horních a dolních objektů zařízení v reflektoru.

Pokud chcete odeslat vstupně-výstupní požadavek ovladači UMDF, aplikace volá funkci vstupně-výstupní operace souboru Win32, například CreateFile, ReadFileEx, CancelIoEx nebo DeviceIoControl. Když reflektor obdrží požadavek z klientské aplikace, odešle požadavek do příslušného hostitelského procesu ovladače. Proces hostitele ovladače pak směruje požadavek na horní část správné uživatelské fronty zařízení.

Požadavek buď dokončí jeden z ovladačů v zásobníku uživatelského režimu, nebo ho předá jeden z ovladačů zpět do reflektoru. Když reflektor obdrží požadavek ze zásobníku ovladačů v uživatelském režimu, odešle požadavek do zásobníku režimu jádra pro dokončení.