Namestitev inf v windows 7. Namestitev gonilnika iz datoteke INF


Namestite izbirne izdelke - DriverDoc (Solvusoft) | | | |

Ta stran vsebuje informacije o namestitvi najnovejših prenosov gonilnikov INF z orodjem za posodobitev gonilnikov INF.

Gonilniki INF so majhni programi, ki vaši strojni opremi INF omogočajo komunikacijo s programsko opremo vašega operacijskega sistema. Vzdrževanje posodobljene programske opreme INF preprečuje zrušitve in povečuje zmogljivost strojne opreme in sistema. Uporaba zastarelih ali poškodovanih gonilnikov INF lahko povzroči sistemske napake, zrušitve in povzroči odpoved strojne opreme ali računalnika. Poleg tega lahko namestitev napačnih gonilnikov INF te težave še poslabša.

Nasvet:Če niste prepričani, kako ročno posodobiti gonilnike naprav INF, priporočamo, da prenesete pripomoček za gonilnik INF. To orodje bo samodejno preneslo in posodobilo pravilne različice gonilnikov INF in vam tako preprečilo namestitev napačnih gonilnikov INF.


O avtorju: Jay Geater je predsednik in glavni izvršni direktor Solvusoft Corporation, globalnega podjetja za programsko opremo, ki se osredotoča na ponudbo inovativnih storitev. Ima vseživljenjsko strast do računalnikov in obožuje vse, kar je povezano z računalniki, programsko opremo in novo tehnologijo.

Voznik je poseben nadzorni program, ki operacijskemu sistemu posreduje informacije o povezani opremi in zagotavlja mehanizme za njeno uporabo. Veliko takih programskih izdelkov vsebuje precej zapleteno funkcionalnost, ki obdeluje široko paleto informacij, ki prehajajo skozi opremo, ki se servisira. To so lahko avdio in video informacije, podatkovni tokovi strojev za skeniranje, tiskanje in omrežja, informacije o pritiskih tipk, premikih miške, interakciji s prenosnimi mediji, različnimi mobilnimi telefoni itd. itd.

Podatke o nameščeni strojni opremi najdete tako, da obiščete »Nadzorno ploščo«, izberete razdelek »Sistem« in kliknete povezavo ali gumb »Upravitelj naprav«.

Na drevesnem seznamu, ki se odpre, bodo vidne vse naprave, ki jih vidi operacijski sistem.

Kakšni so načini namestitve?

Če pri povezovanju nove opreme operacijski sistem ni mogel samodejno konfigurirati ustrezne programske opreme, lahko greste na dva načina:

1. Uporabite posebne programe za iskanje in samodejno namestitev.

2. Sami poiščite in namestite potrebno programsko opremo.

Obe metodi imata svoje prednosti in slabosti. Prva možnost je zagotovo bolj priročna in prihrani veliko časa. In pri uporabi standardne opreme bo ta pristop dal dobre rezultate - vsa strojna oprema bo delovala, kot bi morala, in brez napak. Poleg tega boste ob uporabi najnovejših različic tovrstnih programov za avtomatizacijo prejeli najnovejše različice datotek gonilnikov. Več o tej metodi si lahko preberete na tej strani našega spletnega mesta: .

Kljub precejšnjemu udobju se pogosto zgodi, da nadzornega programa ni mogoče samodejno namestiti, ker ga preprosto ni v bazi podatkov izbranega pripomočka. V tem primeru boste morali nastavitev izvesti ročno. Čeprav traja več časa, je ta pristop najbolj zanesljiv. Navsezadnje, ko ste prejeli krmilni program neposredno od proizvajalca opreme, hkrati prejmete jamstva za njegovo popolno združljivost z nameščeno napravo, ob upoštevanju vseh nians njegovega delovanja. Takšne nianse morda ne bodo upoštevane v univerzalnih zbirkah.

Kako do voznika?

Običajno je vsa potrebna programska oprema priložena kupljenemu izdelku na optičnem disku. V tem primeru je pogosto dovolj, da vstavite disk v pogon, zaženete aplikacijo in sledite pozivom med postopkom namestitve.

Če je disk izgubljen ali želite novejšo različico, lahko to storite na spletnem mestu proizvajalca opreme v ustreznem razdelku, ki se običajno imenuje "Storitev / Podpora".

Ko iščete potrebne datoteke, ne pozabite, za katero različico operacijskega sistema jih potrebujete. Ker aplikacije, razvite za Windows XP, najverjetneje ne bodo delovale normalno v novejših operacijskih sistemih, 32-bitna programska oprema pa lahko zavrne delovanje v 64-bitnem okolju. In obratno.

Lahko se zgodi, da boste imeli na koncu zastarelo opremo. In ne boste ga mogli kar tako zagnati v najnovejših različicah operacijskega sistema. V tem primeru ga lahko poskusite namestiti v združljivem načinu s starejšimi različicami sistema Windows. Na žalost to ne vodi vedno do uspešnega rezultata. In problem pomanjkanja običajne podpore za nove različice OS prisili uporabnike, da zavrnejo uporabo številnih popolnoma delujočih in uporabnih izdelkov.

Ročna namestitev gonilnika

Običajno nadzorne programe dobavijo proizvajalci kot namestitvene aplikacije. Po začetku namestitve uporabnik prejme pozive in brez težav sledi korakom namestitve, da se spopade s celotnim postopkom namestitve.

Toda dokaj pogosta situacija je, ko taka prijazna programska oprema ni na voljo. In mnogi uporabniki ne vedo, kaj storiti v tem primeru.

Postopek za reševanje takšne situacije je opisan spodaj na primeru MP3 predvajalnika iRiver IFP-700.

Če želite shraniti podatke, posnete na mikrofonu tega predvajalnika, morate namestiti njegov gonilnik in nato uporabiti poseben pripomoček iRiver Music Manager. Toda na uradni spletni strani iRiver žal ni mogoče prenesti potrebnih datotek. Poleg tega je iz vsebine strani na spletnem mestu razvidno, da je ta predvajalnik zasnovan za operacijski sistem, ki ni novejši od Windows XP.

V skladu s tem boste morali za zagotovitev uspeha ta predvajalnik namestiti v operacijski sistem Windows XP.

Po kratkem iskanju mi ​​je uspelo dobiti ta arhiv s potrebnimi datotekami:

Razpakiranje vsebine arhiva

in vidimo, da v njem ni datotek exe. Vendar obstaja, kar je opisano kot »Informacije o namestitvi«.

To datoteko (skupaj s sosednjimi iz te mape) potrebuje operacijski sistem za uspešno povezavo predvajalnika z vrati USB.

Predvajalnik s kablom povežemo z računalnikom in vidimo, da se pojavi naslednje tipično okno:

Če gremo na običajen način in izberemo samodejno zaustavitev, potem po dolgem prikazu takšnega okna

prikaže se sporočilo o napaki. Zato pritisnemo gumb »Nazaj«, da uberemo alternativno pot.

V tem oknu morate namesto samodejne metode izbrati možnost »Namesti z določene lokacije«.

Kliknite gumb za brskanje in izberite mapo, v katero smo razpakirali datoteke iz zip arhiva.

Posledično mora iskalni niz vsebovati pot do mape, v kateri se nahaja datoteka inf:

Ko je postopek končan, se prikaže okno o uspehu:

To lahko dodatno preverite tako, da obiščete upravitelja naprav in tam vidite prisotnost nameščenega predvajalnika:

Rezultati

Z metodami, navedenimi v tem članku, lahko uspešno namestite nadzorne programe za naprave, ki jih uporabljate. Če veste, kako ročno namestiti gonilnik z datoteko inf, boste lahko povečali število opreme, ki jo uporabljate, ne da bi pri tem sodelovali strokovnjaki tretjih oseb. Poleg tega bo uporaba uradne programske opreme s spletnih mest proizvajalcev naprav znatno povečala zanesljivost vašega računalnika.

Danes vas bomo naučili, kako namestiti gonilnike naprav iz datotek sys in inf.

Iskanje, namestitev in konfiguracija gonilnika naprave 200 drgnite.

Pri prenosu gonilnikov iz interneta za vaše naprave morda ne boste naleteli na namestitveni paket, ki ste ga vajeni, temveč na arhiv z datotekami sys in inf. Datoteke Sys so sistemske datoteke, datoteke inf pa so pogosto del gonilnika strojne opreme računalnika. Če vaš gonilnik vključuje samo sys in inf brez vašega običajnega namestitvenega programa, ne obupajte, to vrsto gonilnika je mogoče namestiti. V večini primerov se takšni gonilniki distribuirajo na spletnih mestih tretjih oseb, ne na spletnih mestih proizvajalcev. Zato bodite previdni in vsak preneseni gonilnik preverite s protivirusnim programom.

Namestitev gonilnika v obliki datotek sys in inf

1. Prva stvar, ki jo moramo storiti, je iti v upravitelja naprav. Kliknite start in z imenom “moj računalnik” z desnim klikom prikličite spustni meni in izberite lastnost s seznama. Odpre se novo okno, v katerem moramo iti v razdelek »upravitelj naprav«, ki se nahaja v levem stolpcu. Na seznamu, ki se odpre, poiščite opremo, ki je označena z rumenim klicajem, z desno miškino tipko kliknite napravo, za katero morate namestiti gonilnik in kliknite element - posodobite gonilnik. V naslednjem oknu se zažene čarovnik za namestitev in konfiguracijo nove opreme. Izberite možnost za ročno namestitev gonilnika naprave.

2. Nato bomo pozvani, da izberemo mapo, v kateri se nahajajo naši gonilniki, to so datoteke sys ali inf. Nato potrdite svojo izbiro za začetek namestitve gonilnika. Če ta gonilnik ni združljiv z napravo ali če ima naprava že novejšo različico gonilnika, boste pozvani, da izberete drugo datoteko za pravilno konfiguracijo naprave.

3. Če v prenesenem arhivu najdete samo eno sys datoteko brez inf, jih čarovnik za namestitev gonilnikov naprave ne bo mogel namestiti. Da se gonilnik pravilno namesti in deluje, morate kopirati datoteko .sys v windows->System32->drivers. Ko naš gonilnik kopiramo v sistemsko mapo, zaženemo namestitev in samodejno poiščemo gonilnik. Pri nameščanju takšnih datotek priporočamo, da jih preverite s protivirusnim programom, saj nekateri napadalci vdelajo zlonamerno kodo v datoteke gonilnikov, najbolje je tudi, da gonilnike prenesete z uradne spletne strani.

Tudi, če imate težave pri posodabljanju gonilnikov sami, bodo naši tehniki z veseljem opravili to delo.

Strokovni obisk in diagnostika0 drgnite.

Očitno mora vsak uporabnik osebnega računalnika od časa do časa priključiti kakšno napravo na svojo postajo. Razlog, zakaj se to zgodi, nas zdaj ne zanima preveč, lahko je nadgradnja, ki je mnogim dobro znana (z namenom povečanja zmogljivosti posameznih vozlišč in posledično celotne zmogljivosti sistema), lahko tudi preprosto dodajanje nove opreme za razširitev funkcionalnosti obstoječe konfiguracije, kot je na primer v primeru priključitve novega igralnega krmilnika to lahko tudi potreba po uporabi podatkov iz bliskovnega pogona. Ne glede na to, kako natančno povežemo novo napravo, se mora operacijski sistem Windows odzvati na pojav nove opreme z izvajanjem določenih manipulacij, da zagotovi podporo novi opremi na ravni programske opreme. Mnogi operacijski sistemi uporabljajo vmesnik med strojno in programsko plastjo, imenovan gonilnik, za zagotavljanje interakcije programske opreme z napravami.

Gonilnik je programska oprema, s katero operacijski sistem in programski moduli, ki se izvajajo v njem, pridobijo dostop do strojne opreme ali logičnih naprav.

Zato poskuša operacijski sistem z vsemi sredstvi, ki so mu na voljo, zagotoviti delovanje naprave v svojem okolju, za to se poskuša namestiti ustrezen gonilnik za novo priključeno napravo, da bi s tem zagotovil funkcije nove naprave za dostop do programov uporabniškega načina in kode načina jedra, saj brez tega razvpitega gonilnika oprema v sistemu preprosto ne bo mogla delovati.
Ni naključje, da sem v definiciji omenil logične naprave, saj obstaja ločena kategorija gonilnikov, ki ne vzdržujejo strojne opreme, ampak so integrirani za razširitev izvedbe (razširitev, dodajanje) funkcionalnih lastnosti različnih sistemskih modulov. Toda koga lahko zdaj preseneti namestitev gonilnikov? Ta postopek je že tako poznan vsem uporabnikom osebnih računalnikov iz dolgoletne prakse, da nekateri, sem prepričan, to lahko počnejo z zaprtimi očmi :) Toda ali smo razmišljali o podrobnostih tega procesa, ali smo kdaj razmišljali o algoritem namestitve gonilnika? Ste se kdaj vprašali, kakšna dejanja izvede operacijski sistem, ko poveže novo napravo in namesti gonilnike?

Strinjam se, da je z vidika uporabnika postopek namestitve gonilnika v sistemu Windows v večini primerov videti precej prozaičen. V sistemski vrstici se prikaže običajna animirana ikona čarovnika za namestitev in čez nekaj časa lahko sistem izda poročilo o uspešnem ali neuspešnem zaključku namestitvenega postopka za nov gonilnik naprave v sistemu. Poleg tega pogosto čarovnik za namestitev, razen te ikone v pladnju, ne nudi nobene vizualne potrditve poskusov namestitve nove naprave, medtem ko »tiho« dodaja novo opremo na seznam naprav in jo (če je neuspešno) označi z posebna ikona v upravitelju naprav, ki nakazuje, da lahko uporabnik nadaljuje z ročnim konfiguriranjem opreme. Vsi ti zunanji procesi, ki jih tako vam kot meni že dobro poznamo, so v takšni ali drugačni obliki prisotni v vseh različicah operacijskega sistema Windows že skoraj od nastanka tega operacijskega sistema in se med seboj nekoliko razlikujejo le v podrobnostih. Postale so tako domače in običajne, da sploh nisem pomislil, kaj se dogaja »na drugi strani ekrana«, v globinah operacijskega sistema, kaj se skriva pod to namišljeno preprostostjo? Kot boste videli spodaj, namestitev gonilnika Windows za fizično ali logično napravo skriva precej zapletene in izjemno zanimive procese. Algoritem namestitve gonilnika v sistemu Windows lahko razdelimo na naslednje ključne globalne naloge:

  • Kopiranje binarne datoteke gonilnika v ustrezen imenik v sistemu;
  • Registracija gonilnika v sistemu Windows z navedbo načina zagona;
  • Dodajanje potrebnih informacij v sistemski register;
  • Kopirajte/namestite povezane podporne komponente iz paketa gonilnikov;

Poleg glavnih nalog, ki se izvajajo kot del algoritma za namestitev gonilnika v sistemu Windows, bi bilo lepo razvrstiti pogoje, pod katerimi se začne postopek namestitve gonilnika za Windows:

  • Uporabnik namesti novo napravo v izklopljen računalnik. V tem primeru se postopek zaznavanja nove naprave in namestitve gonilnika začne že v fazi nalaganja operacijskega sistema.
  • Uporabnik z lokalnimi skrbniškimi pravicami z uporabo snap-ina Device Manager sproži namestitev ali posodobitev gonilnika za že nameščeno napravo.
  • Uporabnik »na poti« poveže novo napravo z delujočim računalnikom. V tem primeru govorimo o določeni kategoriji naprav, ki jih je možno povezovati sproti, kot so naprave z zunanjim vmesnikom eSata, USB ipd. Konec koncev ne boste namestili notranje grafične kartice, ko je napajanje dobavljeno v reže PCIe? Osebno tega še nisem naredil :)
  • Uporabnik samostojno zažene program za namestitev paketa gonilnikov iz računa z lokalnimi administratorskimi pravicami. To metodo je mogoče uporabiti tako za namestitev gonilnikov za fizične naprave, ki podpirajo standard Plug and Play, kot za namestitev gonilnikov, ki niso PnP (legacy), gonilnikov logičnih naprav, ki jih sistem ne more samodejno zaznati in jih ni mogoče ročno namestiti drugače. način. Tipičen primer bi bili antivirusi ali virtualni stroji, ki namestijo svoje gonilnike (logične naprave) v sistem.
  • Uporabnik z desno tipko miške klikne datoteko .inf v imeniku gonilnika in izbere Namesti iz računa z lokalnimi skrbniškimi pravicami.

Kaj pa je sam paket gonilnikov? Konec koncev, kot smo videli več kot enkrat, je to cel niz datotek s popolnoma različnimi, na prvi pogled, nameni. Brez poglobljenega pregleda strukture namestitvenega paketa gonilnika bomo težko razumeli sam algoritem namestitve gonilnika, zato bomo predstavili splošne komponente:

  • Datoteke .inf. Ključna komponenta namestitvenega paketa gonilnika je datoteka, ki opisuje postopek namestitve gonilnika. Datoteka inf je razdeljena na razdelke in je sestavljena iz navodil, ki sistemu natančno povedo, kako je nameščen gonilnik: opisujejo napravo, ki se namešča, izvorno in ciljno lokacijo vseh komponent gonilnika, različne spremembe, ki jih je treba narediti v registru, ko namestitev gonilnika za Windows, gonilnikov za informacije o odvisnosti in tako naprej. Datoteke .inf povezujejo fizično napravo z gonilnikom, ki nadzoruje to napravo.
  • Binarne datoteke gonilnika. Paket mora vsebovati vsaj datoteko .sys ali .dll za jedro gonilnika. Pravzaprav je mogoče eno samo datoteko .sys (v skrajnem primeru) namestiti (s pridržki) ročno z urejanjem registra.
  • Namestitvene izvedljive datoteke. Običajno so to že dobro znani namestitveni pripomočki, ki imajo imena setup.exe, install.exe in še nekatera druga.
  • Izvršljive datoteke za odstranitev. To so običajno pripomočki za odstranitev, ki se imenujejo uninstall.exe.
  • Datoteka(e) dodatnih postopkov in knjižnic. Ponavadi so to pomožne knjižnice v formatu .dll, sonamestitveni programi.
  • .cat datoteke. Digitalno podpisana kataloška datoteka. Te datoteke vsebujejo podpise digitalnega imenika in delujejo kot podpis za datoteke paketov, s katerimi lahko uporabnik ugotovi izvor paketa in preveri celovitost datotek paketa gonilnika. Zahtevano v 64-bitnih različicah sistema Windows, začenši z Vista in novejšimi, in priporočljivo za vse ostale.
  • Nadzorni moduli uporabniškega načina. Običajno so to različni ukazni programčki, ki delujejo v uporabniškem načinu, na primer ATI Catalist Control Center, VIA HD Audio Desk, Realtek HD Audio Control Panel in podobno.
  • Datoteke pomoči. Kje bi bili brez njih?

Izrazi in definicije

V tem članku bom opisal samo en način namestitve, ki v vsakem primeru opisuje skoraj vse stopnje algoritma za namestitev gonilnika v sistemu Windows, ki se uporabljajo tudi za druge metode. In zdaj bomo govorili o situaciji, ko uporabnik vstavi novo opremo, na primer video kartico, v notranji priključek izklopljenega računalnika. Najprej pa predstavimo nekaj definicij, ki jih potrebujemo v procesu preučevanja algoritma za namestitev gonilnika.
Upravitelj (dispečer) Plug and Play (PnP Manager, PnP Manager)- oblak jedrnega načina in kode uporabniškega načina, odgovoren za dodajanje, prepoznavanje, odstranjevanje naprav v sistemu. Blok načina jedra medsebojno deluje s preostalimi sistemskimi komponentami med prenosom/namestitvijo programske opreme, potrebne za servisiranje naprav, prisotnih v sistemu. Blok uporabniškega načina ( %Windir%\System32\umpnpmgr.dll, teče v okviru glavnega sistemskega procesa svchost.exe) je odgovoren za interakcijo uporabnika v situacijah, ki zahtevajo namestitev novih gonilnikov ali prilagajanje parametrov delovanja v že nameščenih. Odgovoren za dodelitev in poznejšo dodelitev virov strojne opreme, kot so prekinitve (IRQ), V/I vrata, kanali za neposredni dostop do pomnilnika (DMA) in pomnilniški naslovi. Ima funkcijo določanja gonilnika, ki je potreben za podporo določene naprave, in funkcijo prenosa/namestitve tega gonilnika. Sposoben prepoznati nove naprave, se odzvati na njihovo priključitev in odklop. Je del kode izvršnega podsistema Windows.

Naštevanje naprav

Celotne stopnje nalaganja nima smisla opisovati od samega začetka, zato bomo začeli le s fazo, ki nas zanima, na kateri modul Winload(.efi) naloži jedro operacijskega sistema Windows 7 iz datoteke ntoskrnl. exe. Jedro zažene upravitelj PnP, ki je del izvršilnega podsistema. Upravitelj PnP začne postopek oštevilčevanja naprav iz korenske naprave, virtualnega gonilnika vodila, imenovanega ROOT, ki predstavlja celoten sistem in je gonilnik vodila za vse naprave PnP in naprave, ki niso PnP, ter HAL (abstrakcije ravni strojne opreme) . HAL na tej stopnji deluje kot gonilnik vodila, ki našteje naprave, ki so neposredno povezane z matično ploščo. Vendar se HAL, namesto da bi ga dejansko navedel, opira na opis strojne opreme, ki je že prisoten v registru. Namen HAL na tej stopnji je odkriti primarna vodila, kot je PCI. Primarni gonilnik vodila PCI nato izpiše seznam naprav, povezanih s tem vodilom, in poišče druga vodila, za katera upravitelj PnP takoj naloži gonilnike. Ti vozniki avtobusov pa zaznajo naprave na svojih avtobusih. Ta rekurzivni proces oštevilčenja, nalaganja gonilnikov in nato oštevanja se nadaljuje, dokler niso odkrite in konfigurirane vse naprave v sistemu. Med postopkom oštevilčenja upravitelj PnP zgradi drevo naprav, ki enolično opisuje razmerja med vsemi napravami v sistemu. Vozlišča v tem drevesu, imenovana devnodes (okrajšava za vozlišča naprave), vsebujejo informacije o objektu naprave, ki nato podrobno opisuje napravo.
Zapisi vseh naprav, ki so bile zaznane od namestitve sistema, so shranjeni v panju registra HKLM\SYSTEM\CurrentControlSet\Enum. Podključi tega panja opisujejo naprave v naslednji obliki:

HKLM\SYSTEM\CurrentControlSet\Enum\Enumerator\DeviceID\InstanceID

HKLM\SYSTEM\CurrentControlSet\Enum\

  • Poštevalec - ime voznika avtobusa. Lahko sprejme vrednosti: ACPI, DISPLAY, HDAUDIO, HID, HDTREE, IDE, PCI, PCIIDE, Root, STORAGE, SW, UMB, USB, USBSTOR in druge;
  • DeviceID - edinstven identifikator za to vrsto naprave;
  • InstanceID - enolični identifikator za različne primerke iste naprave.

Dejstvo je, da gonilnik vodila, na katerega je naprava povezana, od naprave zahteva različne parametre (proizvajalec, naprava, revizija itd. identifikator) in ustvari tako imenovani identifikator strojne opreme (HardwareID), ki enolično opisuje naprava in je niz parametrov, ločenih z znaki & in sestavljen iz naslednjih delov:

  • Predpona, ki opisuje vodilo, na katerega je naprava povezana.
  • ID naprave. Sestavljen je iz več delov, kot so identifikator proizvajalca, identifikator izdelka (modela), revizija naprave.

HardwareID je identifikacijski niz, ki je odvisen od parametrov naprave (proizvajalec, model, revizija, različica itd.), ki jih Windows uporablja za ujemanje naprave z datoteko .inf gonilnika.

Tipična struktura HardwareID:

PCI\VEN_10DE&DEV_1341&SUBSYS_2281103C&REV_A2

Poleg HardwareID-a so napravi dodeljeni parametri CompatibleID, ki imajo podobno obliko, vendar vsebujejo samo splošnejše vrednosti, ki ne vsebujejo parametrov, specifičnih za napravo (nekaterih identifikatorjev naprave) in so potrebni za inicializacijo več združljivih naprav.

HardwareID in CompatibleID uporablja izvršna koda Windows za iskanje gonilnika naprave.

Zaznavanje voznika

Če v fazi popisovanja naprav in nalaganja gonilnikov funkcionalni gonilnik vodila, na katerega je povezana nova naprava, obvesti upravitelja PnP o spremembah povezanih podrejenih naprav. Upravljalnik PnP v načinu jedra preveri, ali je gonilnik povezan z napravo, tako da poizveduje po gonilniku vodila, na katerega je povezana nova naprava, in pridobi HardwareID in, po izbiri, CompatibleID naprave. Upravljalnik PnP načina jedra s posebnim dogodkom obvesti upravitelja PnP uporabniškega načina, da ta naprava zahteva namestitev, in ji posreduje prejete identifikatorje. Upravitelj PnP v uporabniškem načinu najprej poskuša samodejno namestiti napravo brez posredovanja uporabnika. Da bi to naredil, upravljalnik PnP v uporabniškem načinu zažene pripomoček rundll32.exe za zagon čarovnika za namestitev gonilnika naprave (%Windir%\System32\Newdev.dll).

Čarovnik za namestitev gonilnika naprave začne iskanje ustreznega gonilnika za napravo z uporabo informacij iz vseh sistemskih datotek inf, ki se nahajajo na naslednjih zaupanja vrednih sistemskih lokacijah:

  • Repozitorij gonilnikov;
  • Windows Update;
  • Sistemski imenik datotek INF;

Za zgornje namene iskanja in namestitve gonilnika se uporabljajo funkcije knjižnic setupapi.dll (podporne funkcije za namestitev) in cfgmgr32.dll (upravljalnik konfiguracije). Postopek iskanja uporablja trenutno pridobljena identifikatorja HardwareID in (izbirno) CompatibleID, katerih vrednosti opisujejo vse možne možnosti za prepoznavanje strojne opreme v namestitveni datoteki gonilnika, to je datoteki inf. Vrednosti identifikatorja nameščene naprave se primerjajo s tistimi, ki so opisane v razdelkih Modeli datotek inf, registriranih v sistemu. Seznami identifikatorjev so urejeni tako, da so bolj specifični deskriptorji strojne opreme predstavljeni prvi na seznamih. Če so bila ujemanja ID-jev najdena v več datotekah inf, se bolj natančno ujemanje šteje za prednostno pred manj natančnim, podpisane datoteke inf imajo prednost pred nepodpisanimi datotekami inf in pozneje podpisane datoteke inf imajo prednost pred predhodno podpisanimi datotekami inf. Če ujemanje na podlagi HardwareID ni najdeno, se uporabi CompatibleID, če je seveda na voljo. Če ujemanje ni najdeno na podlagi CompatibleID, vas lahko čarovnik za dodajanje strojne opreme pozove, da poiščete najnovejši gonilnik strojne opreme. Oglejmo si podrobneje vse te vire informacij o voznikih.

Repozitorij gonilnikov

Čarovnik za namestitev gonilnikov poskuša najti ustrezno datoteko inf v shrambi sistemskih gonilnikov, ki se nahaja v imeniku %Windir%\System32\DriverStore, kjer so brez izjeme vsi sistemski gonilniki, vključeni v distribucijo Windows, pridobljeni prek »Windows Update«. " storitev ali pa jo v sistem namesti uporabnik.

Repozitorij gonilnikov je varna sistemska lokacija, imenik, zasnovan za shranjevanje vseh paketov gonilnikov, ki so bili kdaj nameščeni v sistemu.

Driver Store je bil prvič predstavljen v sistemu Windows Vista. Pred namestitvijo katerega koli gonilnika v sistem specializirana koda najprej preveri digitalni podpis gonilnika, nato sintakso inf datotek gonilnika, nato privilegije trenutnega uporabnika in šele nato postavi vse komponente gonilnika v sistemsko shrambo gonilnikov. Potem pa lahko gonilnik, ki se nahaja v repozitoriju gonilnikov, uporabite za namestitev naprav v sistem. Ker je postopek za namestitev gonilnika v repozitorij precej prefinjen, je repozitorij gonilnikov najbolj zaupanja vreden vir informacij o gonilnikih.

Sistemski imenik datotek INF

Vzporedno sistem išče gonilnik na sistemski lokaciji, ki jo opisuje vrednost parametra DevicePath v veji registra HKLM\Programska oprema\Microsoft\Windows\CurrentVersion. Običajno je vrednost %SystemRoot%\inf, kar je v večini sistemov enakovredno lokaciji C:\Windows\inf.

INF datoteko

Rad bi naredil majhno digresijo in ločeno spregovoril o informacijskih datotekah paketa gonilnikov. inf je ena ključnih komponent gonilnika. Shranjuje zaporedje operacij za namestitev in odstranitev gonilnika, opisano s posebnimi direktivami, ki označujejo lokacijo funkcionalnih datotek gonilnika. Datoteka vsebuje ukaze, ki dodajajo informacije v register, ki je odgovoren za prikaz (Enum) gonilnika in njegovega razreda (Class), in lahko vsebuje navodila za čarovnika za namestitev strojne opreme za zagon tako imenovanih glavnih namestitvenih programov (Class Installer) in dodatnih namestitvenih programov ( CoInstaller , Co-installer) za razred naprave in samo napravo. Poleg tega datoteka inf določa vrsto, proizvajalca, model naprave, razred gonilnika, potrebne datoteke in vire.

Co-installer (strukturno običajni DLL) je dodatni namestitveni program, ki se prikliče v fazi namestitve in izvaja namestitvene korake, specifične za podrazred ali napravo, kot je priprava infrastrukture za gonilnik za delo v sistemu (na primer namestitev NET .Framework package), ki prikazuje konfiguracijska pogovorna okna, ki uporabniku omogočajo, da določi nastavitve za določeno napravo.

Pomembna lastnost sonameščalcev je, da po potrebi povežejo primerke nove naprave s protokoli, potrebnimi za delovanje. To na primer lahko velja za različne vrste komunikacijskih naprav, ki za delovanje zahtevajo različne protokole in prenose, kot so ndis, pppoe, tcpip, tcpip6, smb, netbt.
Datoteka .inf dodatno opisuje operacije razpakiranja, kopiranja, zagona, preimenovanja datotek, dodajanja in brisanja ključev v registru in še veliko več.
Vendar se vrnimo k glavnemu algoritmu za namestitev gonilnika v sistemu Windows. Če namestitveni program gonilnika naprave ne najde ustreznih gonilnikov na zgoraj navedenih mestih, sistem označi napravo kot neznano.

V tem primeru je uporabnik pozvan, naj nadaljuje namestitev naprave prek programčka. upravitelja naprav. Ko uporabnik samostojno izbere napravo in navede lokacijo datotek gonilnika, algoritem za namestitev gonilnika nadaljuje svoje delo in naslednji korak je preverjanje digitalnega podpisa gonilnika.

Preverjanje digitalnega podpisa voznika

Dejstvo je, da je gonilnik kot del kode načina jedra precej kritična komponenta operacijskega sistema in morebitne napake, ki jih naredi razvijalec v kodi gonilnika, lahko zlahka povzročijo resne okvare (BSOD) v sistemu. Microsoft je že nekaj časa precej občutljiv na kakovost kode gonilnikov in v zvezi s tem so bili v operacijske sisteme Windows uvedeni mehanizmi, kot sta digitalni podpis gonilnikov in sistemska politika podpisa gonilnikov.

Digitalni podpis gonilnika je niz podatkov spremenljive dolžine, ki daje določeno zagotovilo, da je kodo gonilnika ustvaril zaupanja vreden vir in ni bila predmet nepooblaščenih sprememb.

Naslednji korak je del kode upravitelja PnP v uporabniškem načinu, ki preverja politiko podpisovanja sistemskega gonilnika. Če sistemska politika naroči kodi jedra, naj blokira ali opozori na namestitev nepodpisanih gonilnikov, potem upravitelj PnP razčleni datoteko inf gonilnika glede prisotnosti direktive CatalogFile, ki kaže na kataloško datoteko (datoteko s pripono .cat), ki vsebuje digitalni podpis paketa gonilnikov.

Datoteka kataloga (.cat) je posebna datoteka, ki deluje kot digitalni podpis za celoten paket gonilnikov, ker vsaka datoteka, vključena v paket gonilnikov, ni ločeno podpisana. Edina izjema so binarne datoteke gonilnika jedra v fazi zagona, vendar jih preveri ločena koda jedra.

Za testiranje gonilnikov in njihovo podpisovanje je bil ustanovljen Microsoft Windows Hardware Quality Lab (WHQL), ki temeljito testira gonilnike, ki so priloženi distribucijam Windows, kot tudi gonilnike večjih dobaviteljev strojne opreme. Za vse druge razvijalce gonilnikov so zagotovljeni postopki za pridobitev možnosti samostojnega plačljivega podpisovanja gonilnikov. Ko gonilnik opravi vse teste WHQL, postane "podpisan". To pomeni, da WHQL ustvari zgoščeno vrednost ali edinstven podpis za gonilnik, ki enolično identificira datoteke gonilnika, in ga nato podpiše s pomočjo kriptografskih algoritmov s posebnim Microsoftovim zasebnim ključem, ki se uporablja za podpisovanje gonilnikov. Podpisani hash je postavljen v datoteko imenika (.cat datoteka), ki je neposredno v imeniku paketa gonilnika.
Med postopkom namestitve gonilnika upravljalnik PnP v uporabniškem načinu izvleče podpis gonilnika iz datoteke .cat, dešifrira podpis z Microsoftovim javnim ključem in primerja dobljeno zgoščeno vrednost z zgoščeno vrednostjo nameščene datoteke gonilnika. Če se zgoščene vrednosti ujemajo, je gonilnik označen, da je opravil testiranje WHQL. Če podpisa ni mogoče preveriti, upravitelj PnP deluje v skladu z nastavitvami pravilnika o podpisovanju sistemskega gonilnika, bodisi prepove namestitev gonilnika ali pa še vedno dovoli namestitev gonilnika.

Ustvarjanje varnostne kopije

Precej dobra strategija sistema Windows je ustvariti obnovitveno točko, preden v sistem dodate nove gonilnike naprav. To je predvsem posledica dejstva, da lahko gonilnik načina jedra, ki vsebuje napako, povzroči, da sistem postane popolnoma nedelujoč, in kaj naj potem storimo s tem sistemom? Kljub vsem podpisom in preverjanjem bi moral imeti uporabnik možnost povrniti konfiguracijo, če mu na primer po namestitvi nekaj ni bilo všeč.

Namestitev gonilnika

Na tej točki je paket gonilnikov drugega proizvajalca nameščen v shrambo sistemskih gonilnikov. Nato sistem izvede dejansko namestitev gonilnika iz shrambe gonilnikov, kar se izvede s pripomočkom %Windir%\System32\drvinst.exe. Na tej stopnji se zgodijo naslednji dogodki:

  • inf datoteka gonilnika se prekopira v specializirano mapo %Windir%/inf. Za gonilnike drugih proizvajalcev je običajno preimenovati datoteko v OEMx.inf, kjer je x serijska številka datoteke inf v imeniku.
  • Koda operacijskega sistema zabeleži dejstvo namestitve datoteke inf v register.
  • Vozlišče naprave (devnode) se ustvari v registru vzdolž poti HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ \\ , ki vsebuje podrobne informacije o napravi.
  • Binarne datoteke gonilnika se prekopirajo v ciljno mapo %Windir%\System32\DRIVERS in po možnosti v druge ciljne mape. Registrski ključi so posodobljeni.
  • Ustvari se registrski ključ, ki ustreza gonilniku: HKLM\SYSTEM\CurrentControlSet\Services\ime_gonilnika. Ključni parametri so ustvarjeni.
  • Ustvari se registrski ključ, ki je odgovoren za beleženje dogodkov gonilnika in se nahaja v veji HKLM\SYSTEM\CurrentControlSet\Services\EventLog\System\ime_gonilnika.
  • Upravljalnik PnP pokliče proceduro DriverEntry za vsak na novo nameščen gonilnik. Upravljalnik PnP v načinu jedra nato poskuša "zagnati" gonilnik tako, da ga naloži v pomnilnik in pokliče gonilnikovo rutino AddDevice, da gonilnik sam obvesti o prisotnosti naprave, za katero je bil naložen.

Lokacija informacij o vozniku

Poleg opisa samega algoritma namestitve gonilnika v sistemu Windows bi rad izpostavil ločen razdelek in ga posvetil opisu možnih lokacij za namestitev informacij o gonilnikih v datotečni sistem in register. S praktičnega vidika so te informacije namenjene poenostavitvi ročnega urejanja v primeru morebitnih usodnih napak. Sledi mesta, kjer lahko opazite sledi informacij o vozniku.

Splošni dnevniki voznikov

V sistemu je veliko dnevnikov, ki lahko pomagajo pri različnih težavah z gonilniki.

  • %Windir%\setupact.log -- vsebuje sporočila o odpravljanju napak iz namestitvenega programa za gonilnik načina jedra, ki je DLL Win32, ki spremlja postopek namestitve naprave;
  • %Windir%\inf\setupapi.app.log -- vsebuje sporočila iz postopka namestitve aplikacije;
  • %Windir%\inf\setupapi.dev.log -- vsebuje sporočila iz postopka namestitve naprave;

Dnevnik voznika

Če uporabljate upravitelja paketov (pkgmgr) za namestitev/odstranitev paketa, ki (posledično) namesti, posodobi ali odstrani gonilnik, potem imate možnost omogočiti (za namene odpravljanja napak) ustvarjanje posebnih gonilnikov dnevniške datoteke .log , ki bo vseboval le napake, specifične za gonilnik. Če želite ustvariti ta dnevnik, ustvarite/nastavite naslednji registrski ključ in nato znova zaženite pkgmgr. Po tem bo ustvarjena datoteka drivers.log v imeniku, iz katerega je bil zagnan pkgmgr.
podružnica: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Device Installer
Ključ: DebugPkgMgr
Vrsta: DWord
Vrednost: 1

%Windir%\inf

Vse datoteke inf so shranjene v tem imeniku. Kot je navedeno zgoraj, se po namestitvi gonilnika drugega proizvajalca v sistem njegova datoteka inf preimenuje v OEMx.inf, tako da lahko v imeniku vidite celo vrsto podobnih datotek. Koda operacijskega sistema si zapomni dejstvo, da je bila datoteka inf nameščena v registru.

%Windir%\System32\DRIVERS

To je imenik v datotečnem sistemu Windows, kjer se nahajajo datoteke gonilnika. V sodobnih operacijskih sistemih, zdaj govorim o Windows Vista in novejših, ima velika večina gonilnikov v tem imeniku končnice .sys, datoteke dll so manj pogoste, vendar to ne spremeni splošnega pomena, saj ne glede na končnico, so vse po strukturi enake datotekam .dll. V prejšnjih operacijskih sistemih so se pojavljali formati, kot sta .drv in .vxd.

%Windir%\System32\DriverStore

Sistemska zbirka gonilnikov, ki naj bi vsebovala vsak gonilnik, ki je šel skozi vaš sistem. Uporablja se od sistema Windows Vista. Pred namestitvijo katerega koli gonilnika v operacijski sistem specializirana koda najprej preveri podpis gonilnika, nato sintakso inf datotek gonilnika, nato privilegije trenutnega uporabnika in šele nato doda vse komponente gonilnika v sistemsko zbirko. In šele po tem se gonilnik lahko uporablja v sistemu za namestitev naprav brez kakršnega koli posredovanja uporabnika.

HKLM\SYSTEM\CurrentControlSet\Enum

Panj registra, ki vsebuje informacije o napravah, prisotnih v sistemu. Upravitelj PnP tukaj ustvari ključ za vsako napravo v formatu HKLM\SYSTEM\CurrentControlSet\Enum\Enumerator\deviceID. kjer je Enumerator identifikator vodila, opisan zgoraj v članku, pridobljen na stopnji oštevilčenja naprave, deviceid je identifikator vrste naprave. Ključ vsebuje naslednje informacije: opis naprave, identifikatorje strojne opreme (Hardware ID), združljive identifikatorje naprav (Compatible ID) in zahteve glede virov. Panj je rezerviran za uporabo izključno s kodo operacijskega sistema, zato se uporabniškim aplikacijam in gonilnikom odsvetuje neposredna interakcija z njim in se jih spodbuja k uporabi dokumentiranih sistemskih funkcij.

HKLM\SYSTEM\CurrentControlSet\Control

Panj registra, ki vsebuje informacije o različnih konfiguracijskih parametrih gonilnika med zagonom operacijskega sistema. Vsebuje tako pomembne ključe, kot so:

  • Razred vsebuje informacije o razredih namestitve naprav, ki se uporabljajo za združevanje naprav, ki so konfigurirane in nameščene na podoben način. Za vsak namestitveni razred ta ključ vsebuje ključ, katerega ime se ujema z imenom GUID ustreznega namestitvenega razreda.
  • CoDeviceInstallers vsebuje informacije o sonameščalnikih razreda
  • DeviceClasses vsebuje informacije o vmesnikih naprav, registriranih v sistemu. vsak gonilnik, ki želi komunicirati s programi uporabniškega načina v sistemu, mora zagotoviti vmesnik. Razred vmesnika naprave izpostavlja funkcionalnost naprave in njenega gonilnika drugim komponentam sistema in aplikacijam uporabniškega načina.

HKLM\SYSTEM\CurrentControlSet\Services

Panj registra, ki se uporablja za namestitev informacij o vseh storitvah (gonilnikih) v sistemu. Vsak sistemski gonilnik postavi precej pomembne globalne informacije o sebi v povezave obrazca HKLM\SYSTEM\CurrentControlSet\Services\<Имя_драйвера> , ki ga gonilnik uporablja med postopkom inicializacije v fazi zagona sistema. Panj aktivno uporablja upravitelj PnP za posredovanje parametrov pri klicu postopka inicializacije gonilnika.
Ta grm vsebuje naslednje elemente:

  • ImagePath - vsebuje celotno pot do binarne datoteke gonilnika (slike). namestitveni program zapolni to vrednost na podlagi podatkov iz datoteke inf paketa gonilnikov;
  • Parametri - shrani posamezne informacije o gonilniku, izpolnjene na podlagi podatkov, ki so v datoteki inf paketa gonilnikov;
  • Učinkovitost - informacije za spremljanje delovanja naprave, ki jo upravlja voznik. Podaja ime DLL za spremljanje zmogljivosti in imena funkcij, ki jih izvozi ta DLL. Izpolnjeno na podlagi podatkov pridobljenih iz inf datoteke;

HKLM\SYSTEM\CurrentControlSet\HardwareProfiles

Registrski panj, ki vsebuje informacije o sistemskih profilih strojne opreme in je zasnovan tako, da podpira to tehnologijo. Profil strojne opreme je samo nabor sprememb standardne konfiguracije strojne opreme in konfiguracije storitve (izvirna konfiguracija), ki se naloži ob zagonu sistema. Vsebuje posebne spremembe izvirnega glavnega profila strojne opreme, konfiguriranega v dveh registrskih ključih: HKLM\SOFTWARE in HKLM\SYSTEM. V sistemu Windows 7 se ne uporablja, čeprav registrski ključi ostanejo, verjetno zaradi združljivosti.

Publikacija je namenjena uporabnikom, ki že nekoliko poznajo računalnike in se želijo naučiti samostojne namestitve in konfiguracije operacijskega sistema. Dostopen jezik gradiva in veliko število vizualnih ilustracij vam bodo pomagali pravilno namestiti Windows 7 in konfigurirati računalnik za doseganje optimalne zmogljivosti. Poleg tega so v knjigi podrobno opisani osnovni principi obnovitve operacijskega sistema.

Vse pravice pridržane. Nobenega dela te knjige ni dovoljeno reproducirati v nobeni obliki brez pisnega dovoljenja imetnikov avtorskih pravic.

Informacije v tej knjigi so bile pridobljene iz virov, ki jih založnik šteje za zanesljive. Ob upoštevanju morebitnih človeških ali tehničnih napak pa založnik ne more jamčiti za absolutno točnost in popolnost navedenih podatkov in ne odgovarja za morebitne napake, povezane z uporabo knjige.

knjiga:

Oglejmo si situacijo, ko se za namestitev opreme uporablja niz datotek INF.

Odprto Nadzorna plošča in zaženite mehanizem upravitelja naprav. Posledično se odpre okno, v katerem si lahko ogledate seznam vseh naprav, ki jih je zaznal operacijski sistem v računalniku (slika 16.1).

Večino sestavljajo naprave, ki se nahajajo na matični plošči, le nekaj vnosov pa označuje naprave, ki so nameščene v obliki razširitvene kartice ali povezane z zunanjimi vrati.

Naša naloga je namestiti gonilnik za napravo, ki je operacijski sistem ne zazna. Če vaša naprava še ni povezana z računalnikom, je zdaj pravi čas, da to storite.

Če je naprava že povezana z računalnikom, z desno miškino tipko kliknite ime računalnika na samem vrhu seznama in v meniju, ki se prikaže, izberite Namesti staro napravo (slika 16.2). To bo zagnalo čarovnika za namestitev strojne opreme, ki vam bo pomagal in vodil vaša dejanja pri nameščanju opreme (slika 16.3).


riž. 16.1. Zaženite mehanizem upravitelja naprav


riž. 16.2. Izberite Namesti staro napravo

Po branju uvodnega nagovora in pripravi disketa z gonilniki, če je potrebno, kliknite gumb Nadalje, za začetek postopka namestitve naprave.


riž. 16.3.Čarovnik za namestitev strojne opreme

Čarovnik za namestitev ponuja izbiro dveh možnosti za nadaljnja dejanja: samodejno in ročno namestitev opreme (slika 16.4). Samodejna namestitev ne bo naredila ničesar, ker je operacijski sistem to že poskušal narediti med postopkom namestitve. Zaradi tega je treba takoj preiti na drugo možnost. Nastavite stikalo v položaj Namestitev ročno izbrane opreme s seznama in pritisnite gumb Nadalje.


riž. 16.4. Izbira možnosti dejanja

V naslednjem oknu boste videli seznam naprav različnih vrst, gonilniki za katere so na voljo v operacijskem sistemu (slika 16.5).


riž. 16.5. Določite vrsto naprave, ki jo je treba namestiti

Najprej razmislimo o možnosti, ko na seznamu proizvajalcev in gonilnikov najdete gonilnik, ki ga potrebujete. Ko ga označite, pritisnite gumb Nadalje, da nadaljujete z namestitvijo.

V naslednjem oknu bo čarovnik za namestitev strojne opreme prikazal seznam vseh gonilnikov, ki so na voljo v sistemu za izbrano vrsto naprave, razvrščenih po proizvajalcu strojne opreme. Če ste prepričani, da je eden od predlaganih gonilnikov primeren za vašo opremo, izberite želenega proizvajalca na levi strani okna in želenega gonilnika na desni. Po tem ga lahko poskusite namestiti s klikom na gumb Nadalje(slika 16.6). Prikaže se potrditveno okno, v katerem morate znova klikniti gumb Nadalje(slika 16.7).

Ko je namestitev gonilnika potrjena, čarovnik za dodajanje strojne opreme kopira potrebne gonilnike v sistem in poskuša inicializirati napravo. Če je bila inicializacija naprave uspešna, boste videli okno s sporočilom, ki nakazuje, da je bil gonilnik za napravo pravilno nameščen in je naprava pripravljena za uporabo. V nasprotnem primeru bo čarovnik sporočil, da namestitev ni uspela in naprave ni mogoče zagnati ali da obstajajo težave (slika 16.8).

riž. 16.6. Določite gonilnik za napravo


riž. 16.7. Potrdite namestitev gonilnika

Imate vprašanja?

Prijavite tipkarsko napako

Besedilo, ki bo poslano našemu uredniku: