Artikel top billede

(Foto: Computerworld)

Kør Windows fra en usb-nøgle

Brug Windows til at lave en version af dit foretrukne operativsystem, som kan indlæses på enhver pc.

Af Redaktionen, Alt om Data

Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.

Fremkomsten af usb-nøgler med stor kapacitet har fået nysgerrige folk til at stille spørgsmålet: Kan jeg køre Windows fra en hurtig hardwareenhed? Fordelene ville være kolossale. Tænk blot på hastighed og bekvemmelighed.

Det er stadig lovligt at få Windows til at boote fra en usb-2.0-enhed med Windows XP Embedded (XPE) – som er operativsystem og udviklingsplatform, der er delt op i komponenter. For nyligt er der også kommet en Windows Embedded Standard 7, baseret på Windows 7. Begge versioner kan hentes på Microsofts hjemmeside.

Der er imidlertid en begrænsning – man kan bruge XPE, så længe man ikke bruger det i en almindelig computer. Så længe vi kører operativsystemet XPE på en specialiseret enhed er alt vel. Og det kan man gøre gratis takket være den fri evalueringslicens, der gælder for XPE-værktøjerne.

Selve XPE-installationerne udløber mellem 90 og 180 dage fra den første boot, men værktøjerne udløber aldrig. Det vil sige, at man simpelthen kan forny sine OS-images, når de udløber.

Vigtige regler

Selv om usb-lagerenheder er udbredte, afhænger deres ydelse udelukkende af værtens usb-controllere. BIOS-understøttelse til usb 2.0 gør det muligt at boote ved usb 1.1-hastigheder.

Så snart operativsystemet er indlæst, kan flere drivere lokke usb 2.0-funktionaliteten frem. Sådan er det for mange maskiner. Hvis man vil boote fra usb 2.0 og få de fulde fordele af de hurtigste sticks, skal bundkortets BIOS understøtte highspeed-usb 2.0, før operativsystemet går i gang.

Lad os finde på nogle særlige enheder, vi kan have lyst til at lave. Det kunne være en stilfærdig videooptager, en digital fotoramme med meget høj opløsning eller et IP-webcam, der bruger et gammelt laptopbundkort og webcam. Der er tonsvis af scenarier, hvor hobbybrugeren kan køre Windows XPE fra en usb-nøgle.

I denne artikel skal vi lave et XPE-image, der booter fra usb og udgør en enkel PVR (personal video recorder) ved hjælp af Hauppauge USB Nova-T. En Toshiba bærbar, der har tilstrækkelig med usb 2.0 booting-support bliver vores »udviklingssystem«.

Vælg det foretrukne operativsystem

Når man har lavet et velfungerende XP Embedded-image, skal man skræddersy det, så det passer til vores enhed. Vores image har en størrelse på 592MB.

Det omfatter de fleste af de typiske XP-funktioner – login, Windows-shell, applikationer osv. Bortset fra evalueringsbeskeden på skærmen og navnet Windows XP Embedded, virker det helt om XP Pro.

Alle PVR-driverne og supportfilerne skal føjes til Target Designer-specifikationen, hvis PVR-operativsystemet skal virke.

De basale Hauppauge-drivere har INF-scripts. Man skal gøre dem til en komponentdefinition ved hjælp af Component Designer – det kan opbruge INF-filen, bearbejde dens dependencies og danne en SLD-komponentdefinitionsfil.

Specifikke driverfiler bliver føjet til en lagermappe, og den bliver også optaget i SLD-filen, før den bliver importeret i komponentdatabasen. Nu kan man føje Hauppauge-komponenten til operativsystemspecifikationen i Target Designer.

Hauppauge-applikationerne til tv, planlægning, optagning og codecs bliver alle leveret som eksekverbare Wise-installationsfiler. Der er tre måder at gribe det an på: Brug et værktøj som Inctrl5 til at tage et snapshot af maskinen, før du installerer applikationerne (Inctrl5 finder du her, sammen med flere andre værktøjer til XPE).

Gennemgå derefter installationsprocessen og brug Inctrl5 til at »diff’e« udviklingsmaskinen. Det giver en liste over de filer og registreringsoplysninger, der er blevet oprettet under installationen af applikationen/codec’en – derefter kan man lave en komponent på baggrund af filerne og oplysningerne i registreringsdatabasen.

Føj komponenterne til operativsystemet, så installationsprocedurerne kan køre på XPE-operativsystemets image. Hvis man booter til en tilpasset shell, skal man give plads til en »administratorfunktion«, der fører en ud til en kommandoprompt, så man kan køre installationsprocedurerne. Knyt installationsprocedurerne til »run once«-tasten, så de bliver installeret ved den første genstart.

Vores OS-image bruger Windows EX Explorer User Interface-shell, for det giver os mulighed for at bruge funktion 2. Hvis vi skulle opbygge et mere skræddersyet OS-image, ville vi være nødt til at forsøge med funktionerne 1 og 2. Hauppauges applikationssoftware bruger en MDB-databasefil til at lagre kanaldata, og vi skal derfor også tilføje installationen Microsoft Data Access Component til vores image. Den kan man finde på www.microsoft.com.

Nu er vores PVR-OS-image færdigt, og man kan bygge det ved at trykke [F7] i Target Designer. Nu bliver der sammensat et komplet OS-image i C:Windows Embedded images-mappen. Indholdet af denne mappe kan man kopiere over på den boot-forberedte usb-nøgle. Til dette PVR-projekt bruger vi en stor og hurtig usb-nøgle på 32GB.

Første gang man booter det nyoprettede image, skal operativsystemet konfigurere sig selv ved hjælp af »First Boot Agent«. Det tager et stykke tid. Bagefter svarer boottiderne til det, man kender fra XP.

Når MDAC- Og Hauppauge-applikationerne er blevet installeret, kan vi konfigurere dem, så de kan se og optage tv. Det tager 40 sekunder for systemet at boote. Billedstørrelsen er 682MB.

Nu har vi lavet et specifikt Windows XP Embedded OS-image, der kan give en speciel enhed med Windows-funktionalitet. Det hele foregår via en usb-nøgle.

Det virker fint, især med -nøgler, der har en god ydelse. Men det er en forudsætning, at bundkortets bios understøtter boot af enheder ved høj usb 2.0-hastighed, hvis det skal fungere.

Lav et Windows EX Embedded-operativsystem

Når du har downloadet og installeret Windows XP Embedded-værktøjerne, skal du følge disse enkle trin for at lave et OS-image. Der er mere detaljeret hjælp på Microsoft Embedded-hjemmesiden.

Tag værktøjet TAP.exe fra værktøjsmappen og kør det i Windows på den valgte hardwareplatform med det formål at lave en PMQ-fil. Hvis du bruger et embedded kort, er der måske allerede leveret en PMQ-fil fra kortproducenten (VIA’s PMQ’er findes på www.tinyurl.com/yqtmna).

Importer PMQ’en fra værktøjet »Component Designer«. Gem resultatet af importen som SLD-fil. Importer SLD-filen i komponentdatabasen ved hjælp af Component Database Manager. Med værktøjet »Target Designer« laver du et nyt projekt. Føj den nye komponent, du lige har lavet, til specifikationen.

Brug Dependency Checker [F5] til at tilføje alle de hardwareunderstøttende komponenter til målplatformen. Løs eventuelle problemer, der er fremkommet ved dependency check’et.

Tilføj de følgende ekstra komponenter for at muliggøre usb-boot og en enkel Windowsbrugergrænseflade. Disse elementer kan man finde ved hjælp af Search-funktionen: USB Boot, FAT, FAT Format, NTLOADER og Windows XP Explorer User Interface. Opbyg dit OS-image [F7]. Løs eventuelle dependencyproblemer og bliv ved, indtil der ikke er flere. Dit image ligger i
C:Windows Embedded Images.

Når man vil gøre sin usb-nøgle bootbar på en Windows XP-maskine, skal man bruge applikationen UFDPREP fra værktøjsmappen. Hvis E: er en usb-nøgle, er det altså UFDPREP E:. Bemærk, at UFDPREP formaterer nøglen, og alle data på den går derfor tabt.I tilfælde af bootproblemer kan man gå til www.msdn2.microsoft.com/en-us/library/aa940876.aspx.

Når man vil boote fra usb-nøglen, skal man sikre sig, at al usb-understøttelse er slået til i bios, og at en usb-harddisk er valgt som den primære bootenhed.

Hvis man kører Windows Vista, kan man bruge den nye DISKPART-applikation, der følger med Vista. Der er flere detaljer på www.tinyurl.com/2bybpt.

[themepacific_accordion]
[themepacific_accordion_section title="Fakta"]
[/themepacific_accordion_section]
[/themepacific_accordion]