Printer driver isolation
Ebben a cikkben ígértem még pár információt a meghajtókról.
Bár ritka, még találkozhatunk V2, azaz Kernel-típusú meghajtókkal – manapság inkább a Windows 2000-el bevezetett V3, azaz felhasználó-típusú meghajtókat használunk. Ezek .dll formában megírt volta miatt csak használatkor kerülnek betöltésre a Nyomtatásisor-kezelő (Print Spooler) szolgáltatás hátterében álló spoolsv.exe által.
Mivel már nem kernel szinten futnak, egy-egy hibás meghajtó esetén nem az egész gépet, csak a szolgáltatást rántja a mélybe – ilyenkor az összes rajta található nyomtatót eltüntetve. Ez főleg olyan esetben jelenthet kellemetlenséget, ha a gép vagy nyomtató-kiszolgálóként üzemel, vagy terminál-szolgáltatást valósít meg. Ha be is állítjuk, hogy hiba esetén automatikusan induljon újra, a probléma gyökerét nem kezeltük.
Ezen próbál segíteni a W7/2k8 R2-ben bevezetett meghajtó-izoláció. Ilyenkor dedikált szálanként fut a PrintIsolationHost.exe, így ha egy meghajtó hibás, csak az a szál megy az örök vadászmezőkre, ezáltal a többi nyomtatást nem érintve.
Az izoláció alapból be van kapcsolva, de ha ez zavar bennünket, akkor házirendből a „Computer Configuration / Administrative Templates / Printers / Execute print drivers in isolated processes” beállításával tudjuk szabályozni.
Egy másik házirend, ami továbbra is a meghajtó-izolációval kapcsolatos, a „Computer Configuration / Administrative Templates / Printers / Override print driver execution compatibility setting reported by print driver”. Ez a beállítás a már említett cikkben szereplő „DriverIsolation=2” sort hivatott „helyettesíteni”, magyarul, ha a meghajtó nem is tudja az izolációt, attól még úgy kezeljük, mintha tudná (külön szálat indítunk neki).
Amikor tehát meghajtó-izolációról beszélünk, akkor több tényező játszik közre. Egyrészt vagy a meghajtó kell tudja a technológiát, vagy az előbb említett, második házirenddel kikényszerítjük. Ha egyik állítás sem igaz, akkor a régi módszer lép életbe.
Amit még fontosnak tartok tudni, hogy az izoláció alapértelmezés szerint csak a spooler-től való elkülönítést jelenti, ugyanis az izolált nyomtatások egy megosztott szálat használnak. Magyarul: ha van egy új típusú meghajtónk, meg egy régi, akkor nem ugyanazt a szálat fogják hiba esetén a mélybe rántani, viszont két új típusú esetén igen (bár ekkor a spooler-t nem bántják J). Ahhoz, hogy tényleg izoláljuk egymástól a nyomtatási szálakat, a Print Management konzolt kell elindítsuk (lásd itt), majd a meghajtón beállítani az „izolált” módot – valójában csak ekkor nyílik külön szál erre a meghajtóra, s gond felmerülésekor nem zavar más nyomtatást.
Még néhány információ erről itt.
-
november 13, 2012 - 11:34 de.Nyomtató-meghajtó eltávolítási gondok « Asteriksz's Blog
-
április 11, 2016 - 9:03 de.Nyomtatók kezelése v4 módra - Felsofokon.hu a Szakmai Magazin