Upravljanje uređajima u Windows-u. Windows Kako učitati drajvere i usluge u Windows Održavanje konfiguracije drajvera tokom kreiranja Windows slike


Kategorija ~ Technical Tips – Igor (Administrator)

Bilješka: Uprkos činjenici da stranica ne daje jasnu izjavu o kompatibilnosti sa 64-bitnim verzijama Windowsa, program se osjećao prilično dobro u 64-bitnom Windowsu 7.

ServiWin sučelje je napravljeno prilično jednostavno i praktično. Možete se prebacivati ​​između lista drajvera i sistemskih usluga (meni ikona - prve dvije), kao i prilagoditi prikaz i redoslijed 16 mogućih kolona. Osim toga, uslužni program vam omogućava da izvezete podatke u html i otvorite odgovarajuće ključeve registratora za upravljačke programe ili usluge. Desnim klikom na drajver ili uslugu pojavit će se kontekstni meni koji vam omogućava ne samo upravljanje stanjem, već i pretraživanje na Googleu, što će nesumnjivo biti korisno za one koji trebaju razumjeti šta se dešava na računaru. Takođe imate mogućnost da odredite tip pokretanja drajvera (onemogućen, automatski, itd.). U stvari, ovo je prilično rijetka karakteristika. U osnovi, uslužni programi ove klase vam dozvoljavaju samo da vidite listu drajvera.

ServiWin je zaista odličan alat za napredne korisnike. Međutim, treba da shvatite da kao i kod svakog alata koji menja postavke komponenti sistema, pogrešno konfigurisanje ili onemogućavanje važnih delova sistema može dovesti do ozbiljnih problema. Stoga, ako ne znate čemu služi drajver ili servis, onda nemojte biti vođeni radoznalošću i nemojte mijenjati postavke bez prethodnog upoznavanja s njihovom svrhom.

Bilješka: Naravno, možete kreirati rezervnu kopiju diska ili Windows-a i napraviti promjene nakon toga. Međutim, i dalje budite oprezni, jer onemogućavanje drajvera kao što su tastature može odigrati okrutnu šalu s vama.

Sada znate kako da upravljate Windows drajverima i uslugama, a znate i kako da dobijete detaljne informacije o svakom od njih.

U prethodnom dijelu ove serije pogledali smo dva pristupa („pusti Windows da odluči“ i „pusti meni da odlučim“) koji se mogu koristiti za upravljanje vanjskim drajverima prilikom izvođenja Lite Touch instalacije koristeći MDT 2010. U ovom dijelu ćemo Zaključite razgovor o problemu upravljanja vozačima, evo nekoliko savjeta, trikova i priče. Prvu priču mi je dao jedan od naših čitalaca, Tim Lors, i odličan je vizuelni primer problema na koje možete naići kada pokušavate da upravljate drajverima tokom instalacije:

"Prije više od godinu dana napisao sam softversku skriptu koja instalira sve drajvere na WinXP PC. Problem na koji sam naišao prilikom odabira drajvera nije bio povezan sa OS-om. To je bio neuspjeh proizvođača da pravilno implementira PnP između svojih inf datoteka drajvera i hardvera Preciznije, inf fajl je ukazivao da je to najbolji drajver za određeni hardverski uređaj, a zapravo nije radio sa takvim uređajem. Jedini način da se izabere odgovarajući drajver u tako teškoj situaciji bio je poređenje PnP identifikacionim brojevima hardvera sa listom poznatih problematičnih drajvera, a ako sam našao podudaranje, ručno sam odabrao odgovarajući drajver na osnovu dodatnih kriterijuma, obično broja modela računara. Najčešći dodatni kriterijumi potrebni za izbor „pusti me da odlučim“ bio je broj modela računara, ali je ponekad uključivao verziju BIOS-a i ID PnP podskupa, au nekim retkim slučajevima to je bio pokušaj pokušaja i grešaka. Naravno, pokušaji i greške su prilično teški, jer kada je Windows instalirao drajver koji je smatrao najprikladnijim, morao je da izoluje neradni drajver od Windowsa, ili ga je sistem jednostavno ponovo instalirao. Imajte na umu da se ova situacija dogodila u okruženju koje sadrži skoro 10.000 računara na više od 25 različitih modela."

Većina IT profesionalaca sa kojima sam razgovarao mi je rekla da su vozači jedna od najvećih glavobolja, a gornja priča to samo pokazuje. Dakle, nakon što sam posljednja četiri dijela posvetio ovoj temi, želim završiti raspravu o vozačima s nekoliko savjeta i trikova koji će vam olakšati život.

Potražite vozače

Prvi izazov je pronalaženje slobodnih drajvera koji bi vašim sistemima mogli biti potrebni. Neki proizvođači to olakšavaju, drugi ne, a Dell je dio prve grupe jer pruža drajvere za svaki desktop sistem u obliku .cab datoteke za svaki operativni sistem. Da preuzmete ove .cab datoteke, idite na http://www.delltechcenter.com/ i iz menija za pomicanje na lijevoj strani odaberite Početna, Microsoft, Microsoft System Center, SCCM " System Center Configuration Manager, Dell Business Client Operating System Deployment , Dell Business Client Operativni sistem implementacija " .CAB datoteke i vidjet ćete stranicu prikazanu na slici 1:

Slika 1: Preuzimanje drajvera za Dell klijentske sisteme kao .cab datoteke

Kada se .cab datoteka preuzme, možete je izdvojiti u fasciklu, a zatim uputiti na tu fasciklu prilikom uvoza drajvera u vaš instalacioni deo.

Drugi proizvođači takođe pružaju alate za preuzimanje drajvera, ali po mom mišljenju ovi alati nisu tako jednostavni ili praktični kao Dell-ov pristup. Evo nekoliko primjera takvih alata i linkova do njih:

Ekstrahiranje INF datoteka iz EXE

Ponekad proizvođači sistema pružaju drajvere uređaja u obliku .exe datoteka umjesto .cab datoteka. U ovom slučaju, odličan skup alata je WinRAR, koji vam omogućava da izvučete datoteke drajvera iz .exe datoteke u fasciklu. Zapamtite, da bi uvezli drajver, MDT zahtijeva .inf datoteku i odgovarajuće datoteke drajvera nije moguće uvesti .exe datoteku kao drajver.

Sprečavanje uključivanja vozača

Da biste spriječili da drajver koji ste uvezli bude omogućen (na primjer, ako vaši testovi pokažu da drajver uzrokuje probleme nakon instalacije), jednostavno otvorite svojstva drajvera i obrišite polje Omogući ovaj drajver (slika 2):

Slika 2: Možete onemogućiti ili dozvoliti da drajver bude omogućen

Imajte na umu da je gornji upravljački program dizajniran za 32-bitni i 64-bitni Windows. Ako ustanovite da ne radi pod 64-bitnim Windowsom, možete ostaviti drajver uključen, ali poništiti x64, što će spriječiti njegovo omogućavanje tokom instalacije 64-bitnog Windowsa.

Ako želite, možete čak i onemogućiti sve drajvere u fascikli tako što ćete onemogućiti fasciklu (slika 3):

Slika 3: Možete onemogućiti prilagođeni folder u instalacionom resursu

Upravljanje drajverima za pokretanje pomoću profila za odabir

Takođe možete koristiti profile odabira za upravljanje drajverima tokom faze pokretanja Windows PE LTI instalacije. Da biste to učinili, otvorite svojstva svog instalacionog resursa i odaberite karticu Windows PE x64 komponente ili Windows PE x86 komponente za upravljanje drajverima za arhitekturu OS-a koji instalirate (slika 4):

Podrazumevano je izabran profil za odabir Svi drajveri i paketi, ali samo mrežni i drajveri za skladištenje iz ovog profila za odabir uključeni su u Windows PE boot sliku. Ako je potrebno, možete kreirati svoj vlastiti profil odabira koji će uključivati ​​WinPE hardver-specifične drajvere za vaše ciljne sisteme.

Upotreba više grupa drajvera za instalaciju prema marki i modelu

U prethodnom dijelu smo pogledali kako definirati jednu grupu drajvera pod nazivom DriverGroup001 i koristiti je za upravljanje drajverima tokom instalacije na osnovu marke i modela ciljnih računara. Keith Garner, specijalista za implementaciju sistema u Xtreme Consulting Group, ima odličan post koji daje više informacija o ovoj temi i pokazuje vam kako možete efikasnije organizirati upravljačke programe, a zatim koristiti više grupa drajvera za upravljanje načinom na koji su omogućeni tokom instalacije.

Još jedan koristan post je ovaj post o korištenju pseudonima modela, koji je napisao Michael Mergolo, viši konsultant u Microsoft Consulting Services.

Dodavanje drajvera na sliku

Možete koristiti komandu DISM.exe da dodate drajvere vanmrežnim slikama i koristite DISM komandu sa opcijom /add-driver (pogledajte za više informacija o korišćenju DISM.exe).

Da biste dodali drajvere u skladište drajvera (to jest, unapred predstavili drajvere tako da budu dostupni kada Windows identifikuje uređaje kojima su potrebni upravljački programi), možete koristiti komandu PnPutil.exe. Ova komanda može biti korisna ako ste, na primer, koristili Microsoft Update Catalog da preuzmete .cab datoteku drajvera štampača i želite da unapred predstavite te drajvere na vašem referentnom računaru kako bi ti drajveri bili dostupni tokom instalacije. Više informacija o ovoj komandi možete pronaći u i.

Održavanje konfiguracije drajvera tokom Windows Imaging

Konačno, ako kreirate referentnu sliku i instalirate je na identičan hardver, možete pružiti brže iskustvo prvog pokretanja za korisnike tako što ćete konfigurirati parametre PersistAllDeviceInstalls u datoteci odgovora za sysprepping vašeg referentnog stroja. Pogledajte detalje

Redoslijed učitavanja drajvera i usluga u Windows-u



Za one koji su zainteresovani za unutrašnje funkcionisanje Windows operativnog sistema, predlažem malo istraživanja. Pokušaćemo da saznamo šta je odgovorno za redosled učitavanja drajvera i servisa u Windows i da li se taj redosled može promeniti.

Prije svega, pogledajmo trenutni redoslijed pokretanja sistema pomoću programa LoadOrder iz Sysinternals-a. Program će nam pokazati šta se učitava i kojim redosledom kada se operativni sistem pokrene.

Kao što se vidi sa slike, prvo se učitavaju drajveri uređaja neophodni za pokretanje sistema, a zatim i razni Windows servisi. Budući da postoje neke razlike između usluga učitavanja i učitavanja drajvera, razmotrit ćemo ih zasebno.

Vozači

Kao ispitanik, uzmimo Microsoft ACPI (Advanced Configuration and Power Interface) drajver, koji je odgovoran za otkrivanje hardvera i upravljanje napajanjem. ACPI-jev posao je da omogući komunikaciju između operativnog sistema i hardvera, tako da se ACPI drajver učitava na samom početku.

Program Loadorder pruža prilično ograničene informacije o redoslijedu učitavanja, tako da idemo u registar za preciznije podatke. Svaki drajver i Windows usluga imaju svoj odjeljak u grani registra HKLM\SYSTEM\CurrentControlSet\Services. Odjeljci su nazvani prema nazivu drajvera\usluge, tako da nam je potreban ACPI odjeljak.

Tri parametra registra kontrolišu redosled učitavanja drajvera. Glavni parametar Počni- određuje tip pokretanja drajvera. Evo pravila po kojima vozači postavljaju vrijednost svog parametra Start:

Vozači koji bi trebali učitava sistemski bootloader kada se operativni sistem pokrene, navedite vrijednost Počni jednaka 0 (pokrenuti pri pokretanju sistema ). Primjer su drajveri sistemske magistrale i drajver sistema datoteka koji se koriste kada se sistem pokreće;
Vozač to nije potrebno direktno za pokretanje sistema, ukazuje na Počni vrijednost jednaka 1 (pokretanje sistema ). Primjer - standardni drajver za video karticu (VgaSave);
vozač, nije potrebno za pokretanje sistema, postavlja vrijednost Počni jednaka 2 (autostart). Primjer je drajver za višestruki UNC dobavljač (MUP) koji podržava UNC imena udaljenih resursa (tip );
vozači, nije potrebno za rad operativnog sistema(na primjer, upravljački programi mrežnog adaptera), naznačite vrijednost Počni jednaka 3 (lansirati na zahtjev ).

Upravljački programi također mogu koristiti parametre Grupa I Tag da kontrolišete redosled pokretanja sistema kada se sistem pokrene. Vozači\usluge koriste parametar Grupa da naznače grupu kojoj pripadaju, a redoslijed učitavanja grupa određen je parametrom Lista, koji se nalazi u odjeljku HKLM\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder\.

Usput, parametar Grupa nije obavezan. Ako drajver\servis nije uključen ni u jednu grupu, onda se učitava na samom kraju reda.

Vozač može dalje precizirati svoj redoslijed učitavanja koristeći parametar Tag, koji specificira specifičnu poziciju vozača u grupi. I/O Manager sortira drajvere u grupi prema vrednosti ovog parametra, a drajveri koji nemaju parametar oznake se pomeraju na dno liste drajvera u grupi.

Gledajući redoslijed učitavanja, mogli biste pomisliti da se prvo učitavaju drajveri s manjim vrijednostima Tagova, a zatim oni s većim, ali to nije sasvim točno. Prioritet vrijednosti parametara oznake unutar grupe određuje se u odjeljku HKLM\SYSTEM\CurrentControlSet\Control\GroupOrderList.

Na primjer, otvorimo binarni parametar Boot Bus Extender, koji odgovara grupi istog imena, kojoj pripada ACPI drajver. Parametar je skup dvostrukih riječi (po 4 bajta). Prva riječ (označena crvenom bojom) specificira ukupnu dužinu varijable (broj dvostrukih riječi), u našem primjeru 06. Preostale dvostruke riječi su samo oznake. ACPI drajver ima oznaku jednaku 01 (označeno zelenom bojom).

Prioritet oznake nije određen vrijednošću oznake, već njenom pozicijom: što se oznaka nalazi više, to je njen prioritet u grupi i veći prioritet drajvera kojem ova oznaka odgovara. A pošto je 01 viši od ostalih oznaka, ACPI drajver se učitava prvi u grupi.

Usluge

Redosled kojim se Windows servisi učitavaju donekle se razlikuje od redosleda učitavanja drajvera. Uzmimo uslugu automatskog ažuriranja (wuauserv) kao primjer. Nije posebno kritičan za rad sistema i stoga se učitava posljednji.

Idemo ponovo u registar. Parametri za pokretanje usluge nalaze se u odjeljku HKLM\SYSTEM\CurrentControlSet\Services\wuauserv. Identificirao sam dva glavna parametra koja su odgovorna za redoslijed učitavanja ove usluge.

Windows usluge pokreće Service Control Manager (SCM) prema vrijednosti parametra Počni. Ovaj parametar za usluge može imati sljedeće vrijednosti:

Auto start (2) - servis se pokreće automatski, odmah nakon pokretanja glavnog SCM procesa Services.exe;
Pokreni na zahtjev (3) - servis se pokreće kada je potrebno, na zahtjev bilo koje usluge ili programa;
Onemogućeno (4) - usluga je onemogućena i neće se pokrenuti ni pod kojim okolnostima.

Vrijednosti 0 (počinje pri pokretanju sistema) i 1 (pokreće sistem) za usluge se ne mogu specificirati, samo za drajvere uređaja.

Osim toga, počevši od Windows Vista\Server 2008, pojavio se još jedan način pokretanja za usluge - odloženo automatsko pokretanje. Parametar je odgovoran za to Odgođeno automatsko pokretanje = 1, što govori SCM-u da automatski pokrene ovu uslugu sa zakašnjenjem. SCM pokreće usluge koje su postavljene na odgođeno pokretanje nakon što se učitaju servisi koji su označeni za automatsko pokretanje.

Režim pokretanja usluge može se kontrolisati ne samo iz registra, već iu grafičkom režimu, sa konzole usluga.

Baš kao i drajveri, Windows usluge mogu koristiti parametar Group u svom ključu registratora da naznače grupu kojoj pripadaju. Sada, radi jasnoće, uzmimo našu uslugu wuauserv, koja se nalazi na samom kraju liste za preuzimanje. Koristeći Group ključ, stavićemo ga u grupu Event Log, restartovati i pogledati redosled učitavanja u Loadorder-u. Kao što vidite, redosled se promenio i wuauserv se popeo sa poslednjeg mesta, učitavajući se odmah posle svog kolege iz razreda - eventlog servisa. Istina, redoslijed plasmana unutar grupe ne može se mijenjati, jer Tag se ne koristi za usluge.

I još jedan parametar koji indirektno utiče na redosled učitavanja servisa - DependOnService. Označava od kojih usluga zavisi usluga. Shodno tome, usluga se ne učitava dok se ne učitaju usluge navedene u DependOnService.

Zavisnosti funkcionišu na sledeći način - ako su usluge u istoj grupi, tada se zavisna usluga pomera na kraj liste i počinje posle usluga od kojih zavisi. Ako su grupe različite, tada se usluga jednostavno neće pokrenuti, a SCM će generirati grešku.

Ovo je jasnije prikazano u dodatku Usluge, gdje kartica Zavisnost navodi i usluge od kojih zavisi određena usluga i usluge koje zavise od nje.

Tako smo saznali kojim redoslijedom se drajveri i servisi učitavaju u Windows i kako se taj redoslijed može promijeniti. Ali prije nego što požurite s uređivanjem registra, zapamtite da se redoslijed učitavanja upravljačkih programa i usluga automatski određuje i da ne biste trebali unositi izmjene u njega bez dobrog razloga. Samo jedan pogrešno postavljeni parametar može dovesti do potpune nefunkcionalnosti sistema i nema garancije da će ga biti moguće vratiti. Stoga, prije nego počnete uređivati ​​registar, obavezno napravite njegovu sigurnosnu kopiju, a preporučljivo je imati pri ruci medij za pokretanje.

Pošto je Windows sistem koji obavlja više zadataka, on isključuje takve slobode za aplikativne programe kao što je direktan pristup I/O portovima ili rukovanje hardverskim prekidima. Interakciju sa hardverom na niskom nivou mogu izvršiti samo sistemski programi koji rade u privilegovanom režimu. Drajveri uređaja ovdje igraju glavnu ulogu.

Windows koristi strukturu drajvera na više nivoa u kojoj drajveri visokog nivoa mogu da deluju kao filteri koji obavljaju posebnu obradu podataka primljenih od ili prosleđenih drajveru niskog nivoa. Primjer bi bio da se odvoji drajver koji upravlja sabirnicom od drajvera za specifične uređaje povezane na sabirnicu. Drugi primjer je drajver koji izvodi šifriranje/dešifriranje podataka kada radi sa NTFS sistemom datoteka. Struktura drajvera na svim nivoima podleže jedinstvenim standardima poznatim kao WDM (Windows DiverModel), međutim, drajveri visokog nivoa, za razliku od onih niskog nivoa, ne rukuju hardverskim prekidima.

Čudno je da u WindowsNT drajveri niskog nivoa još uvek nisu najniži nivo upravljanja uređajima. Još bliže hardveru leži takozvani HAL nivo (Hardware Abstractions Level). Njegova uloga je da sakrije od drugih OS modula, uključujući drajvere, neke detalje rada sa hardverom, ovisno o specifičnim magistralama, vrsti matične ploče i načinu povezivanja. Na primjer, HAL omogućava drajverima mogućnost pristupa registrima uređaja prema njihovim logičkim brojevima bez da znaju da li je registar povezan na port procesora ili mapiranu memoriju.

Unatoč standardizaciji strukture, može se razlikovati nekoliko posebnih tipova drajvera, koji se razlikuju po funkcionalnosti.

    GDI (GraphicDeviceInterface) drajveri su drajveri visokog nivoa za grafičke uređaje (monitori, štampači, ploteri). Ovi upravljački programi prevode Windows grafičke pozive (kao što su crtanje linije, područje popunjavanja, izlazni tekst, odabir trenutnog fonta, trenutna olovka, trenutno popunjavanje) u komande koje izvode odgovarajuće radnje na određenom uređaju. Izdavanje ovih komandi uređaju vrši drugi, niskorazinski drajver. Zahvaljujući prisutnosti GDI drajvera, isti program može emitovati grafičke slike na različite uređaje. Odličan primjer za to je režim pregleda dostupan u raznim uređivačima, koji prikazuje stranice na ekranu tačno onako kako će biti odštampane.

    Drajveri tastature i miša, pored standardnih operacija drajvera, vrše dodatno opterećenje. Oni generišu poruke o događajima na odgovarajućem uređaju (pritisak i otpuštanje tastera, pomeranje miša, pritisak i otpuštanje tastera miša) i smeštaju ih u sistemski red poruka. Sistem zatim prosljeđuje svaku poruku procesu koji je namijenjen za dalju obradu.

    Drajveri za virtuelizaciju uređaja (VxD drajveri) služe za dijeljenje uređaja između procesa, stvarajući iluziju da proces ima ekskluzivno vlasništvo nad uređajem. Zapravo, drajver organizira red zahtjeva od procesa, prebacuje uređaj u način rada potreban za sljedeći proces, itd. Primjer bi bio drajver za virtuelizaciju monitora. Konzolna aplikacija (na primjer, MS-DOS program) radi sa cijelim ekranom u tekstualnom modu. Ali ako se takva aplikacija pokrene u Windows prozoru, tada VxD drajver simulira tekstualni mod u grafici. Da bi to učinio, vozač mora presresti pokušaje programa da direktno pristupi adresama video memorije i konvertuje koordinate poznatih lokacija u tekstualnom režimu u koordinate odgovarajućih pozicija u prozoru.

    Sljedeći alati se koriste za upravljanje uslugama u Windows-u:
  • Snap-in services.msc je najpogodniji alat za upravljanje uslugama;
  • Program msconfig.exe - pored upravljanja uslugama, takođe vam omogućava kontrolu pokretanja Windows-a (pogledajte poglavlje Korisni Windows 7 uslužni programi);
  • Naredbe net i sc se koriste za upravljanje uslugama iz komandne linije. Kliknite na dugme Start, upišite services.msc i pritisnite Enter. Vidjet ćete dodatak za upravljanje uslugama.

Hajde da shvatimo kako upravljati uslugama. Dvaput kliknite na bilo koju uslugu - odaberite bilo koju, sada nas ne zanima nijedna konkretna usluga. Vidjet ćete prozor sa svojstvima usluge.


Kartica Općenito sadrži naziv usluge, opis usluge, naziv izvršne datoteke usluge i kontrolna dugmad usluge. Ovdje možete promijeniti tip pokretanja. Sa liste Tip pokretanja, možete odabrati jedan od tipova pokretanja usluge.

    Polje Status prikazuje trenutno stanje usluge:
  • Pokreće - servis je pokrenut i trenutno radi;
  • Zaustavljen - usluga ne radi;
  • Suspendirano - usluga je pokrenuta, ali je trenutno obustavljena.
    Tasteri za kontrolu servisa:
  • Start - pokreće zaustavljenu (ili još nije pokrenutu) uslugu;
  • Stop - zaustavljanje usluge;
  • Suspendirati - pauzirati izvršenje usluge (ne podržavaju sve usluge pauziranje); Za nastavak pokretanja usluge koristite dugme Nastavi;
  • Nastavi - nastavi uslugu.

Nema potrebe još ništa mijenjati kako to ne bi negativno uticalo na vaš sistem. Bolje je otići na karticu Zavisnosti: tamo ćete saznati od kojih drugih usluga ovisi ova usluga, a koje druge usluge o njoj.
Imajte na umu da ako druge usluge zavise od usluge, a vi zaustavite uslugu, sve zavisne usluge će također prestati raditi.