¿Qué es la marca de tiempo Unix?
La marca de tiempo Unix (también conocida como tiempo POSIX o tiempo Epoch) es un sistema para rastrear el tiempo como un total de segundos en ejecución. Este recuento comienza en la 'Época Unix'. Es el formato de tiempo estándar utilizado por la mayoría de los sistemas informáticos, servidores y bases de datos de todo el mundo.
La Época Unix
El punto de partida se define como 00:00:00 UTC del 1 de enero de 1970. Las fechas anteriores a este momento se representan como números negativos.
Conversiones comunes de tiempo a segundos
| Tiempo legible por humanos | Segundos |
|---|---|
| 1 hora | 3,600 Segundos |
| 1 día | 86,400 Segundos |
| 1 semana | 604,800 Segundos |
| 1 mes (30.44 días) | 2,629,743 Segundos |
| 1 año (365.24 días) | 31,556,926 Segundos |
El problema del año 2038
Similar al error Y2K, se espera que el 'problema del año 2038' ocurra el 19 de enero de 2038. En este momento, el tiempo Unix excederá el valor máximo de un entero de 32 bits con signo. Los sistemas heredados de 32 bits pueden interpretar esta fecha como 1901, causando errores críticos.
Casos de uso comunes
Bases de datos
Almacenar el tiempo como enteros (INT) ahorra espacio y mejora significativamente el rendimiento de las consultas/ordenación.
Sistemas de archivos y registros
Nombrar archivos de copia de seguridad o registros del sistema para garantizar la unicidad y una fácil clasificación cronológica.
APIs y Tokens
Se utiliza en JWTs (JSON Web Tokens) para definir tiempos de expiración (reclamación exp) y períodos de validez.