Τι είναι η Διάρκεια;

Διάρκεια είναι ο χρόνος που απαιτείται για την ολοκλήρωση μιας διαδικασίας. Για να χρησιμοποιήσετε ένα πραγματικό παράδειγμα: αν κοιτάξετε ένα ρολόι και σημειώστε το χρόνο, τότε βγείτε για μια βόλτα, στη συνέχεια επιστρέψτε και δείτε ότι έχουν περάσει δεκαπέντε λεπτά, η διάρκεια της βόλτας σας ήταν δεκαπέντε λεπτά.

Οι υπολογιστές περιέχουν ειδικό υλικό για τη μέτρηση του χρόνου και τα λειτουργικά συστήματα περιλαμβάνουν εντολές που μπορείτε να χρησιμοποιήσετε για να μετρήσετε πόσο χρόνο ένα πρόγραμμα χρειάζεται να εκτελεστεί.

Στους σύγχρονους υπολογιστές, ο χρόνος μπορεί να μετρηθεί με διαφορετικά ρολόγια.

  • Το ΡΤΚ (ρολόι πραγματικού χρόνου) χρησιμοποιεί ένα κρύσταλλο χαλαζία που δονείται με σταθερή συχνότητα για να παρακολουθεί τον «ανθρώπινο χρόνο»: χρόνια, μήνες, ημέρες, ώρες, λεπτά και δευτερόλεπτα. Ωστόσο, η συχνότητά του (32768 Hz) είναι πολύ αργή για να μετρήσει τα κλάσματα του χρόνου μικρότερα του 1/32768 του δευτερολέπτου. Οι σύγχρονες CPU μπορούν να ολοκληρώσουν μια λειτουργία πολύ πιο γρήγορα από αυτό, έτσι ώστε το RTC δεν μπορεί να μετρήσει με ακρίβεια τη διάρκεια μιας διαδικασίας υπολογιστή.
  • Ένα PIT (προγραμματιζόμενο χρονόμετρο διαστήματος) είναι ένας μετρητής υλικού ο οποίος μπορεί να ενεργοποιήσει μια διακοπή όταν επιτευχθεί ένα ορισμένο σύνολο μετρήσεων. Ένα κοινό PIT είναι το ολοκληρωμένο κύκλωμα Intel 8253, αρχικά σχεδιασμένο για χρήση με τον επεξεργαστή Intel 8080. Λειτουργεί με συχνότητα 1, 193182 MHz. Χρησιμοποιείται ως ρολόι συστήματος από πολλά λειτουργικά συστήματα, συμπεριλαμβανομένων των Windows και του Linux.
  • Ένας TSC (timestamp counter) είναι ένας καταχωρητής 64 bit που βρίσκεται σε όλες τις σύγχρονες CPU x86. Μετράει μεμονωμένους κύκλους ρολογιών CPU και εισήχθη για πρώτη φορά με τη σειρά Pentium των επεξεργαστών Intel. Αρχικά, ήταν χρήσιμο να παρέχει ένα ρολόι που θα μπορούσε να μετρήσει μικρότερα κλάσματα του χρόνου από ένα RTC ή PIT. Ωστόσο, απαιτείται η λειτουργία της CPU με σταθερή ταχύτητα ώστε να επιτευχθεί ακριβής μέτρηση. Οι νεώτερες CPU μπορούν να αλλάξουν συχνότητα (όπως είσοδος σε λειτουργία "turbo" για να κερδίσουμε προσωρινές αυξήσεις ταχύτητας ή να χαμηλώσουμε σε χαμηλότερη ταχύτητα όταν αδράνουμε για εξοικονόμηση ενέργειας). Επομένως, το TSC, ενώ εξακολουθεί να είναι χρήσιμο για άλλους σκοπούς, δεν είναι πλέον αξιόπιστο για τη μέτρηση του σταθερού χρόνου.
  • Ο HPET (χρονοδιακόπτης συμβάντος υψηλής ακρίβειας) είναι ένας χρονοδιακόπτης υλικού, που αναπτύχθηκε από κοινού από την Intel και τη Microsoft, η οποία είναι διαθέσιμη σε υπολογιστές που έχουν κατασκευαστεί μετά το 2005. Στο CPU chipset στη μητρική πλακέτα, το HPET βρίσκεται συνήθως στη νότια γέφυρα. Μετρηθεί ο χρόνος σε 64 μπιτ τουλάχιστον 10 MHz και απασχολεί τρεις μετρητές "σύγκρισης" (είτε 32-bit είτε 64-bit) για να επιτευχθεί μια πολύ ακριβής μέτρηση του χρόνου. Το HPET χρησιμοποιείται για πολλούς σκοπούς στον υπολογιστή σας, όπως ο συγχρονισμός της ροής ήχου κατά την αναπαραγωγή ενός βίντεο.

Η πιο ακριβής από αυτές τις μεθόδους χρονισμού είναι η HPET .

Πώς να προγραμματίσετε μια διαδικασία στον υπολογιστή σας

Υπάρχουν διάφοροι τρόποι για να μάθετε πόσο χρόνο χρειάζεται μια διαδικασία για να ολοκληρωθεί στον υπολογιστή σας.

Στη γραμμή εντολών των Windows

Στη Γραμμή εντολών των Windows, δεν υπάρχει κανένας ενσωματωμένος τρόπος εκτέλεσης μιας εντολής. Ωστόσο, υπάρχει τουλάχιστον ένας απλός τρόπος για να μάθετε πότε άρχισε και σταμάτησε η εντολή σας. Μπορείτε να δημιουργήσετε ένα αρχείο δέσμης που χρησιμοποιεί τη μεταβλητή περιβάλλοντος % time% . Για παράδειγμα, εάν δημιουργήσετε ένα αρχείο παρτίδας που ονομάζεται mytime.bat και δώστε τις παρακάτω γραμμές:

 @echo off set timestart =% ώρα%% * echo Έναρξη:% timestart% echo Τερματισμός:% time% 

Η μεταβλητή % time% είναι η τρέχουσα ώρα και το % * είναι όλα μετά το όνομα της εντολής. Επομένως, η εντολή dir, για παράδειγμα:

 mytime dir c: \ 
 Ο όγκος στη μονάδα δίσκου C είναι Windows10 Ο αριθμός σειριακού τόμου είναι 5CB6-BCD6 Κατάλογος του c: \ [ κατάλογος λίστας ... ] 28 Αρχεία 4, 500, 506 bytes 12 Διεύθυνση 23, 807, 946, 752 bytes free Start: 19: 31: 18.87 Φινίρισμα: 19 : 31: 18.89 

Σημείωση: Αυτή η μέθοδος δεν είναι ακριβής. Δεν μετράει χρόνο CPU, μόνο χρόνο "ρολόι τοίχου". Επομένως, άλλα προγράμματα που εκτελούνται στον υπολογιστή σας θα επηρεάσουν τους χρόνους που εμφανίζονται. Επίσης, η διάρκεια πρέπει να υπολογίζεται με το χέρι, αφαιρώντας τον χρόνο "εκκίνησης" από το χρόνο "τερματισμού".

Στο Windows PowerShell

Στο Windows PowerShell, μπορείτε να μάθετε πόσο χρόνο χρειάζεται ένα πρόγραμμα για εκτέλεση, ξεκινώντας από το cmdlet Μέτρου-Εντολής . Γενικά, χρησιμοποιείται ως εξής:

 Μέτρο-Εντολή { εντολή } 

Η εντολή θα τρέξει, αλλά οποιαδήποτε έξοδος δεν θα εμφανιστεί. Αντ 'αυτού, η έξοδος θα εμφανίσει πληροφορίες σχετικά με το χρόνο που χρειάστηκε η ολοκλήρωση της εντολής . Για παράδειγμα:

 Μέτρο-Εντολή {dir} 
 Ημέρες: 0 Ώρες: 0 Λεπτά: 0 Δευτερόλεπτα: 0 Μίλιες δευτερόλεπτα: 14 Κλειδιά: 142200 Σύνολο ημερών: 1.64583333333333E-07 Σύνολο: 3.95Ε-06 Σύνολο: 0.000237 Σύνολο δευτερολέπτων: 0.01422 Σύνολο Μήληςδευτερόλεπτα: 14.22 

Στο Linux

Στο Linux, μπορείτε να προθέσετε οποιαδήποτε εντολή κελύφους με την εντολή χρόνου για να μετρήσετε τη διάρκειά της. Για παράδειγμα, η ακόλουθη εντολή θα εντοπίσει όλα τα αρχεία μέσα ή κάτω από τον τρέχοντα κατάλογο που περιέχουν τη λέξη ελπίδα και θα αναφέρει το χρόνο που χρειάστηκε για να τα βρείτε:

 time find / home / myuser - όνομα '* ελπίδα *' 
 /home/myuser/files/computer-hope.jpg /home/myuser/backup/hope-backup.zip πραγματικό 0m0.298s χρήστης 0m0.164s sys 0m0.088s 

Σε αντίθεση με το Measure-Command, ο χρόνος του Linux εμφανίζει όλη την έξοδο από τη χρονική στιγμή της εντολής. Έπειτα, αναφέρει τρεις φορές: χρόνος χρήστη (πόση ώρα έχει ξοδέψει η εντολή), sys time (πόσο χρόνο δαπανά ο πυρήνας για την εκτέλεση των απαιτούμενων λειτουργιών του συστήματος) και πραγματικό χρόνο (ο συνολικός χρόνος που έχει παρέλθει).

  • Πώς να ορίσετε ή να αλλάξετε την ημερομηνία και την ώρα ενός υπολογιστή.

Όροι υλικού, όροι λογισμικού