Μετατροπέας Unix Timestamp
Χρονική σήμανση σε Ημερομηνία
Δευτερόλεπτα ή χιλιοστά του δευτερολέπτου ανιχνεύονται αυτόματα.
Ημερομηνία σε Χρονική Σήμανση
Επιλέξτε μια ημερομηνία και ώρα για να το μετατρέψετε σε Unix timestamp.
Δευτερόλεπτα από την Unix Epoch (00:00:00 UTC στις 1 Ιανουαρίου 1970)
Δευτερόλεπτα ή χιλιοστά του δευτερολέπτου ανιχνεύονται αυτόματα.
Επιλέξτε μια ημερομηνία και ώρα για να το μετατρέψετε σε Unix timestamp.
Η ίδια τρέχουσα χρονική στιγμή εκφρασμένη σε διάφορες κοινές μορφές, ζωντανή ενημέρωση:
| Μορφή | Τρέχουσα Τιμή |
|---|---|
| Unix χρονική σφραγίδα (δευτερόλεπτα) | — |
| Unix timestamp (χιλιοστά του δευτερολέπτου) | — |
| ISO 8601 (UTC) | — |
| RFC 2822 (UTC) | — |
Unix time (επίσης γνωστό ως Epoch time, POSIX time ή Unix timestamp) είναι ένα σύστημα για την περιγραφή μιας χρονικής στιγμής. Είναι ο αριθμός των δευτερολέπτων που έχουν περάσει από την Unix Epoch, η οποία ορίζεται ως 00:00:00 UTC την Πέμπτη, 1 Ιανουαρίου 1970. Χρησιμοποιείται ευρέως σε λειτουργικά συστήματα τύπου Unix και σε πολλά άλλα συστήματα υπολογιστών.
Το βασικό πλεονέκτημα του Unix time είναι η απλότητά του. Αντιπροσωπεύει τον χρόνο ως έναν ενιαίο, καθολικά κατανοητό ακέραιο που αυξάνεται συνεχώς. Αυτό το καθιστά εξαιρετικά εύκολο στην αποθήκευση, σύγκριση και εκτέλεση υπολογισμών με χρονικές σημάνσεις χωρίς να ανησυχείτε για ζώνες ώρας, θερινή ώρα ή διαφορετικά ημερολογιακά συστήματα. Για παράδειγμα, για να βρείτε τη διάρκεια μεταξύ δύο γεγονότων, απλώς αφαιρείτε τις Unix χρονικές σημάνσεις τους.
Ενώ αυτός ο ακατέργαστος αριθμός είναι ιδανικός για υπολογιστές, δεν είναι πολύ φιλικός για τους ανθρώπους. Για να γεφυρώσουν αυτό το χάσμα, προγραμματιστές και τεχνολογικοί ενθουσιώτες χρησιμοποιούν ένα εργαλείο που ονομάζεται μετατροπέας epoch. Μπορείτε να το χρησιμοποιήσετε για να μετατρέψετε άμεσα οποιαδήποτε χρονική σήμανση σε μια ανθρώπινα κατανοητή ημερομηνία, ή να κάνετε το αντίστροφο βρίσκοντας τη χρονική σήμανση για μια συγκεκριμένη ημερομηνία.
Ένα γνωστό ζήτημα που σχετίζεται με το Unix time είναι το "Πρόβλημα του Έτους 2038." Είναι παρόμοιο με το πρόβλημα Y2K. Πολλά παλιά συστήματα υπολογιστών σχεδιάστηκαν να αποθηκεύουν τη χρονική σήμανση Unix ως ένα υπογεγραμμένο 32-bit ακέραιο. Ένας υπογεγραμμένος 32-bit ακέραιος μπορεί να αντιπροσωπεύσει τιμές από -2.147.483.648 έως 2.147.483.647.
Η μέγιστη τιμή, 2.147.483.647, θα φτάσει στις 03:14:07 UTC στις 19 Ιανουαρίου 2038. Στην επόμενη δευτερόλεπτο, ο ακέραιος θα υπερχείλιση και θα τυλίξει γύρω στην πιο αρνητική του τιμή, η οποία θα ερμηνευθεί από τα συστήματα ως μια ημερομηνία το 1901. Αυτό θα μπορούσε να προκαλέσει ευρείες αποτυχίες σε παλαιότερο λογισμικό που βασίζεται σε 32-bit αναπαραστάσεις χρόνου.
Η λύση είναι η χρήση ενός 64-bit ακέραιου για την αποθήκευση της χρονικής σήμανσης. Ένας 64-bit ακέραιος έχει μια μέγιστη τιμή τόσο μεγάλη που δεν θα υπερχείλιση για περίπου 292 δισεκατομμύρια χρόνια, επιλύοντας αποτελεσματικά το πρόβλημα για το άμεσο μέλλον. Τα περισσότερα σύγχρονα λειτουργικά συστήματα και λογισμικό έχουν ήδη μεταβεί σε 64-bit αναπαραστάσεις χρόνου.
Ένα σημαντικό τεχνικό στοιχείο είναι ότι το Unix time δεν λαμβάνει υπόψη τα άλμα δευτερόλεπτα. Ενώ το UTC (Συντονισμένος Παγκόσμιος Χρόνος) προσθέτει περιστασιακά ένα άλμα δευτερόλεπτο για να διατηρεί τους ρολογιακούς μας συγχρονισμένους με την περιστροφή της Γης, το Unix timestamp απλώς το αγνοεί και συνεχίζει να μετρά γραμμικά.
Αυτό σημαίνει ότι το Unix time δεν αποτελεί μια αληθινή αναπαράσταση του UTC. Αντίθετα, περιγράφεται πιο ακριβώς ως μια γραμμική καταμέτρηση δευτερολέπτων. Όταν συμβαίνει ένα άλμα δευτερόλεπτο, το Unix time μερικές φορές επαναλαμβάνει ένα δευτερόλεπτο για να παραμείνει συγχρονισμένο. Αυτή η λεπτομέρεια είναι κρίσιμη για επιστημονικές και εφαρμογές υψηλής ακρίβειας, αλλά για τις περισσότερες γενικές εφαρμογές υπολογιστών, η διαφορά είναι αμελητέα.
created_at, updated_at).
Η εποχή Unix είναι η στιγμή που ξεκινά ο χρόνος για τα συστήματα Unix: 00:00:00 UTC την 1η Ιανουαρίου 1970. Μια χρονική σήμανση Unix είναι απλώς ο αριθμός των δευτερολέπτων που έχουν περάσει από εκείνη τη στιγμή.
Η ημερομηνία επιλέχθηκε από τους πρώιμους προγραμματιστές του Unix ως ένα βολικό, στρογγυλό σημείο εκκίνησης κοντά στο χρονικό σημείο δημιουργίας του συστήματος στις αρχές της δεκαετίας του 1970. Έκτοτε αποτελεί το πρότυπο σημείο αναφοράς.
Ο χρόνος Unix μετράται από μια εποχή που ορίζεται σε UTC και είναι ανεξάρτητος από ζώνη ώρας, επομένως η ίδια χρονική σφραγίδα σημαίνει την ίδια στιγμή παντού. Επειδή αγνοεί τα δίσεκτα δευτερόλεπτα, περιγράφεται καλύτερα ως γραμμική μέτρηση δευτερολέπτων παρά ως τέλεια αναπαράσταση της UTC.
Μια τυπική χρονική σφραγίδα Unix μετράει ολόκληρα δευτερόλεπτα από την αρχή της εποχής, που είναι 10 ψηφία για τις τρέχουσες ημερομηνίες. Πολλά συστήματα, συμπεριλαμβανομένης της JavaScript, μετράνε χιλιοστά του δευτερολέπτου, παράγοντας μια τιμή 1.000 φορές μεγαλύτερη με 13 ψηφία.
Τα συστήματα που αποθηκεύουν τη χρονική σφραγίδα σε έναν 32-bit signed ακέραιο μπορούν να μετρήσουν μόνο μέχρι τις 03:14:07 UTC της 19ης Ιανουαρίου 2038, μετά από το οποίο η τιμή υπερχειλίζει και διαβάζεται εσφαλμένα ως ημερομηνία του 1901. Η λύση είναι να αποθηκεύεται η χρονική σφραγίδα σε έναν 64-bit ακέραιο.