Ifølge Microsoft er det ikke lett å forstå hvordan Windows fungerer. Hvis du er en vanlig hjemme bruker, betyr det at du ikke trenger å bekymre deg for det lille, små hodet om slike tekniske egenskaper. Gå tilbake til å spille spill og surfe på nettet: la de klare tingene til oss.

Selvfølgelig er dette ikke helt sant. Jo, folk flest vil ikke få noe fra å studere datastrukturene som omgiver en Windows-prosess, for eksempel. Imidlertid kan læring bare noen få grunnleggende hjelpe deg med å forbedre ytelsen til din PC, feilsøke problemer og diagnostisere - eller forhindre - systemkrasj. Og du trenger ikke en grad i datavitenskap for å forstå disse ideene, heller.

Trådtelling

Trykk [CTRL] + [Shift] + [ESC] for å starte Oppgavebehandling, klikk på Prosesser-fanen, og du vil se en lang liste over programmer som kjører på systemet. Klikk "Vis prosesser fra alle brukere" (på Vista), og du vil legge til enda mer, totalt over 60 på vår test-PC. Det er et travelt oppsett, men virkeligheten for prosessoren din kan bli enda verre.

Faktum er at en Windows-prosess ikke "kjører" noe i det hele tatt. Det er bare en samling av data knyttet til et program. Hver prosess inneholder minst en tråd, og det er dette som utfører programkode. Klikk på "Vis | Velg kolonner ', finn og sjekk Tråder-boksen, klikk' OK 'og du vil se at nesten alle prosessene dine har mer enn én tråd. Og mange har betydelig mer: tall på 10, 20 eller 30 er på ingen måte uvanlig. Vårt testsystem hadde over 600 tråder oppført, uten å åpne en enkelt applikasjon.

Dette betyr ikke at alle 600 tråder vil kjøre samtidig, og Task Manager kan også avsløre dette. Klikk på "Vis | Velg kolonner, velg 'CPU Time' og klikk 'OK': du vil se at de fleste prosesser har svært liten eller ingen registrert CPU-bruk i det hele tatt. Disse er som Windows Services, satt opp og klar til å kjøre, men bruker ikke noen CPU-tid til du trenger dem for noe.

Likevel, selv om noen tråder er sovende, vil det ofte være mer å kjøre enn CPUen kan håndtere samtidig. Så hvordan bestemmer systemet hvilken tråd som får mest oppmerksomhet?

Planleggingsproblemer

Windows tilordner hver tråden en "quantum", som er en lengre tid som det er lov å kjøre før en annen tråd kan få en sving på CPUen din. Forbrukerutgaver av Windows bruker en kort kvantum, kanskje 20 millisekunder, noe som betyr at ingen oppgave burde kunne gripe prosessoren i svært lang tid.

Systemet tredobles også kvantet av forgrunnsapplikasjonen, slik at trådene får 300 prosent mer CPU-tid enn konkurransen. Det er en god måte å sikre at hvilket program du jobber med, holder deg rolig og lydhør, men det er en pris å betale.

Hver gang CPUen bytter tråder, må den også utføre en kontekstbryter, der den lagrer tilstanden til en tråd og deretter gjenkjenner tilstanden til den neste. Og dette tar en kort - men likevel målbar - tid. En kort kvantum gir et responsivt grensesnitt, da, men øker også overhead for CPU. Det tilbringer mye tid bare å administrere systemet i stedet for å fortsette å løpe trådene dine.

Som et resultat av dette problemet bruker Microsoft Server-produkter en lang kvantum, seks ganger lengre enn forbruker Windows, og det gjør langt mer effektiv bruk av CPU. Høres nyttig ut? Det er enkelt å prøve dette selv. Åpne System-applet i Kontrollpanel, klikk på Avansert (deretter 'Prestasjonsinnstillinger | Avansert i Vista') og sett 'Juster for best ytelse av' til 'Bakgrunnstjenester'. Windows vil nå sette PCen din til å bruke et langt kvantum uten forgrunnsforsterkning. Dette betyr redusert CPU-kostnader og bedre ytelse, spesielt på systemer som driver mange programmer.