Hva er varighet?

Varighet er den tid det tar for en prosess å fullføre. For å bruke et eksempel på ekte verden: Hvis du ser på en klokke og legger merke til tiden, går du ut en tur, så kom tilbake og se at femten minutter er gått, varigheten av turen var femten minutter.

Datamaskiner inneholder spesiell maskinvare for å måle tid, og operativsystemer inkluderer kommandoer du kan bruke til å måle hvor lenge et program tar for å kjøre.

I moderne datamaskiner kan tiden måles med forskjellige klokker.

  • RTC (sanntidsklokke) bruker en kvartskrystall som vibrerer med konstant frekvens for å holde oversikt over "menneskelig tid": år, måneder, dager, timer, minutter og sekunder. Imidlertid er frekvensen (32768 Hz) for langsom for å måle fraksjoner av tid mindre enn 1/32768 av et sekund. Moderne CPUer kan fullføre en operasjon mye raskere enn dette, så RTC kan ikke nøyaktig måle varigheten av en datamaskinprosess.
  • En PIT (programmerbar intervalltimer) er en maskinvare teller som kan utløse en avbrudd når en viss telle total er nådd. En vanlig PIT er Intel 8253 integrert krets, opprinnelig utviklet for å bli brukt sammen med Intel 8080 prosessoren. Den opererer med en frekvens på 1, 193182 MHz. Den brukes som systemur av mange operativsystemer, inkludert Windows og Linux.
  • En TSC (tidsstempel teller) er et 64-biters register som er plassert på alle moderne x86-CPUer. Det teller individuelle CPU-klokke-sykluser, og ble først introdusert med Pentium-linjen av Intel-CPUer. I begynnelsen var det nyttig å gi en klokke som kunne måle mindre brøkdeler av tid enn en RTC eller PIT. Det krever imidlertid at CPUen opererer med konstant hastighet for å oppnå en nøyaktig måling. Nyere CPUer kan endre frekvens (for eksempel å skrive inn en "turbo" -modus for å få midlertidige hastighetsforsterkninger, eller å spole ned til lavere hastighet når det går tom for å spare strøm). Så TSC, men fortsatt nyttig for andre formål, er ikke lenger pålitelig for måling av konstant tid.
  • HPET (High Precision Event Timer) er en maskinvare timer, utviklet i fellesskap av Intel og Microsoft, som er tilgjengelig på datamaskiner produsert etter 2005. I CPU-brikkesettet på hovedkortet er HPET vanligvis plassert på Southbridge. Det teller tid i 64 bits på minst 10 MHz, og bruker tre "comparator" tellere (enten 32-bit eller 64-bit) for å komme fram til en svært presis tidsmåling. HPET brukes til mange formål i datamaskinen, for eksempel å synkronisere lydstrømmen når du spiller av en video.

Den mest nøyaktige av disse timingmetodene er HPET .

Hvordan klare en prosess på datamaskinen din

Det er flere måter å finne ut hvor lang tid en prosess tar for å fullføre på datamaskinen.

I Windows Command Prompt

I Windows Command Prompt er det ingen innebygd måte å kommandoen på. Det er imidlertid minst en enkel måte å finne ut når kommandoen startet og stoppet. Du kan opprette en batchfil som bruker miljøvariabelen % time% . For eksempel, hvis du lager en batchfil kalt mytime.bat, og gi den disse linjene:

 @echo av sett timestart =% time%% * ekko Start:% timestart% echo Fullfør:% time% 

Variabelen % time% er gjeldende tid, og % * er alt etter kommandoenavnet. Så for å tømme kommandoen dir, for eksempel:

 min tid dir c: \ 
 Volum i stasjon C er Windows10 Volum Serienummer er 5CB6-BCD6 Katalog over c: \ [ katalogoppføring ... ] 28 Fil (er) 4.500.506 byte 12 Dir (er) 23, 807, 946, 752 byte gratis Start: 19: 31: 18.87 Fullfør: 19 : 31: 18, 89 

Merk: Denne metoden er ikke presis. Det måler ikke CPU-tid, bare "veggur" -tid. Så andre programmer som kjører på datamaskinen din, vil påvirke de viste tider. Også varigheten må beregnes manuelt, ved å trekke "start" tiden fra "slutt" tiden.

I Windows PowerShell

I Windows PowerShell kan du finne ut hvor lenge et program tar for å kjøre ved å starte det med cmdlet -målet-kommandoen . Generelt brukes den slik:

 Mål-kommando { kommando } 

Kommandoen vil løpe, men noen utdata vil ikke bli vist. I stedet vil utgangen vise informasjon om hvor lang tid det tok for kommandoen å fullføre. For eksempel:

 Mål-kommando {dir} 
 Dager: 0 Timer: 0 Minutter: 0 Sekunder: 0 Millisekunder: 14 Ticks: 142200 TotalDays: 1.64583333333333E-07 TotalTimer: 3.95E-06 TotalMinutes: 0.000237 TotalSekunder: 0.01422 TotalMillisekunder: 14.22 

I Linux

I Linux kan du prefikse en kommandoen shell med tidskommandoen for å måle varigheten. Følgende kommando vil for eksempel finne noen filer i eller under den nåværende katalogen som inneholder ordet håp, og rapporterer hvor lang tid det tok å finne dem:

 tid finn / hjem / myuser -iname '* håp *' 
 /home/myuser/files/computer-hope.jpg /home/myuser/backup/hope-backup.zip real 0m0.298s bruker 0m0.164s sys 0m0.088s 

I motsetning til mål-kommando viser Linux- tiden all utdata fra kommandoen som er tidsbestemt. Deretter rapporteres det tre ganger: brukstid (hvor mye tid kommandoen faktisk brukte å kjøre), sys tid (hvor mye tid som ble brukt av kjernen som utfører nødvendige systemoppgaver) og sanntid (total tid utløpt).

  • Slik setter du inn eller endrer datamaskinens dato og klokkeslett.

Maskinvarebetingelser, Programvarebetingelser