Waktu yang Berlalu Sejak Epoch
(aphyr.com)-
Detik sejak Epoch
-
Waktu POSIX, atau waktu Unix, diketahui berarti jumlah detik sejak 1 Januari 1970 00:00:00. Namun, ini tidak tepat. Sebagai contoh, waktu POSIX untuk 25 Desember 2024 18:54:53 UTC adalah 1735152686, yang sebenarnya 29 detik lebih rendah daripada 1735152715 detik yang benar-benar telah berlalu.
-
Waktu POSIX diturunkan dari Coordinated Universal Time (UTC) dalam IEEE 1003.1. Standar tersebut mengasumsikan bahwa setiap hari tepat 86.400 detik. Namun kenyataannya, panjang satu hari tidak selalu 86.400 detik dan berubah seiring waktu. Untuk menyesuaikan hal ini, para astronom secara berkala menetapkan detik kabisat ke UTC.
-
-
Arkeologi
-
Lampiran B dari IEEE 1003 memuat pembahasan menarik tentang detik kabisat. Saat standar itu diterbitkan, 14 detik kabisat telah ditambahkan sejak 1 Januari 1970. Detik-detik kabisat ini diabaikan agar selisih waktu dapat dihitung dengan mudah.
-
Sebagian besar sistem menganggap waktu sebagai nilai yang terus meningkat. Namun, kebanyakan sistem tidak melacak detik kabisat dan tidak disinkronkan ke referensi waktu standar. Karena itu, persyaratan bahwa detik sejak Epoch harus secara akurat merepresentasikan detik antara waktu yang dirujuk dan Epoch menjadi tidak tepat.
-
Interpretasi yang konsisten atas detik sejak Epoch dapat menjadi penting untuk jenis aplikasi terdistribusi tertentu. Akumulasi detik kabisat tidak dapat diprediksi, dan jumlah detik kabisat sejak Epoch kemungkinan akan terus bertambah.
-
-
Apa yang sebaiknya dilakukan
-
Untuk menghitung durasi antara dua peristiwa pada satu komputer, Anda sebaiknya menggunakan
CLOCK_MONOTONIC. Jika tidak perlu bertukar waktu POSIX dengan sistem lain, Anda dapat menggunakan TAI, GPS, atau LORAN. -
Jika diperlukan penyelarasan kasar dengan sistem stempel waktu POSIX, detik kabisat dapat disebarkan ke rentang waktu yang lebih panjang. Pustaka seperti
qntmt-a-imendukung konversi antara POSIX dan TAI. -
Upaya untuk menghapus detik kabisat sedang berlangsung, dan diharapkan selesai pada 2035. Ini akan memerlukan pekerjaan tambahan untuk membangun tabel konversi bagi semua hal yang menggunakan asumsi "86.400 detik per hari", tetapi akan membuat pertanyaan tentang jumlah detik antara dua waktu menjadi lebih sederhana. Setidaknya untuk waktu setelah 2035.
-
1 komentar
Komentar Hacker News
Saya pernah membaca buku fiksi ilmiah berjudul "A Deepness in the Sky". Di buku itu, penyebutan detik sejak epoch terasa menarik
Sedang ada upaya untuk menghapus leap second, dan semoga selesai pada 2035
"Epoch UTC" modern adalah 1 Januari 1972
Setiap kali membaca tentang pengukuran waktu, saya selalu belajar hal baru
Baru-baru ini saya mengerjakan kode untuk VAX, atau yang berjalan di atas OpenVMS, dan baru pertama kali melihat epoch 17 November 1858
Beberapa titik waktu tidak bisa direpresentasikan sebagai timestamp POSIX, dan beberapa timestamp POSIX tidak sesuai dengan waktu nyata
Saya rasa artikel ini merusak Natal saya
Saat menyimpan tanggal di database, saya selalu menyimpannya sebagai waktu Unix epoch, dan informasi zona waktu disimpan terpisah
Sekitar 10 tahun lalu di sebuah konferensi, saya mendengar bahwa Google tidak menggunakan leap second, melainkan menyebarkannya ke detik-detik biasa
Saya penasaran apakah ada metode pengukuran waktu yang tersinkronisasi dan meningkat secara monoton