- No se está diciendo que UTC (Tiempo Universal Coordinado) sea malo
- La Conferencia General de Pesas y Medidas eliminará los segundos intercalares de UTC después de 2035
- Los segundos intercalares están relacionados con la rotación de la Tierra, que ha sido irregular e impredecible
- Además de UTC, otro estándar de tiempo importante es TAI (Tiempo Atómico Internacional), que no tiene segundos intercalares
- Como UTC no se usa principalmente para ingeniería, puede tener segundos intercalares, pero la hora Unix dejó de ser lineal por culpa de ellos y eso ha causado mucha confusión
Hora Unix TAI
- La hora Unix TAI, que comienza el 1 de enero de 1970 a las 00:00:10, aumenta linealmente y tiene propiedades matemáticas útiles, pero no es popular
- Es diferente de la hora Unix y no es un sustituto directo
- En comparación con la hora Unix
- Como es lineal, es muy fácil calcular cuándo son t + 1 segundo o t + 100000000 segundos. Con la hora Unix no se puede calcular, solo estimar, porque no se sabe cuándo ocurrirán los futuros segundos intercalares
- Es fácil calcular la diferencia entre dos marcas de tiempo
- Calcular una fecha o una hora es difícil. Normalmente queremos saber la hora UTC, no la hora TAI, así que hay que reflejar los segundos intercalares
- No es ambiguo y solo devuelve valores válidos
Cambiar a la hora Unix TAI sin grandes problemas
- Se propone que el estándar POSIX divida el tiempo en tres tipos: hora Unix, hora Unix TAI+C y hora Unix heredada
- La hora Unix heredada devolvería la hora Unix existente antes de cierto momento y, después de ese punto, devolvería la hora Unix TAI+C
- Como los segundos intercalares dependen de recursos en línea, tiene sentido hacer la transición en 2035, cuando serán eliminados
4 comentarios
Pensé que debería leerlo con un poco más de detalle, así que hice una traducción rápida.
https://weblog2.wafe.kr/posts/translation-unix-time-bad/
¿Se refiere simplemente al tiempo Unix que se usa comúnmente, es decir, al
unix timestamp?Como es algo que usamos siempre, nunca lo pensé mucho, pero entonces eso significa que los sistemas operativos como Linux entregan timestamps reflejando los segundos intercalares pasados, ¿no? Vaya, eso era algo enorme...
Es al revés. Como el segundo intercalar se parece más a convertir 1 segundo real en un tiempo que no existió, en un OS ajustado a UTC, si simplemente calculas con la marca de tiempo obtienes tiempo Unix, y a la inversa, hay que sumar el segundo intercalar que sí existió para obtener el valor TAI.