UNIX: Diferenzas entre revisións

Contido eliminado Contido engadido
m →‎O problema do ano 2038: Ano (astronomía)
m "A partir de" loc. prep. Tomando como punto de partida [aquilo que se di]
Liña 119:
=== O problema do [[Ano (astronomía)|ano]] 2038 ===
 
UNIX conta o valor do [[tempo]] do sistema como o número de [[segundo]]s a partir da media noite do [[1 de xaneiro]] de [[1970]] (a "UNIX Epoch"). Este valor de tempo é almacenado en variables de tipo <code>[[time t]]</code>, que se definiu como "enteiro con signo, de 32 [[bit]]s". O [[19 de xaneiro]] de [[2038]], este valor de tempo acadará o valor binario de un [[un|1]] seguido de 31 [[cero]]s (<code>10000000000000000000000000000000</code>), o que implicará o reseteo do tempo ao ano 1901 ou ao 1970, dependendo de como trate a implementación o bit de signo (o 1 máis á esquerda). Xa que moitas aplicacións utilizan as bibliotecas do sistema operativo para o cálculo de [[data]]s futuras, o impacto disto pódese notar moito máis cedo que 2038; así, existe o risco de que as [[hipoteca]]s a 30 anos se calculen de forma incorrecta a partirespartir do ano [[2008]].
 
Posto que as datas anteriores a 1970 moi raramente se representan en tempo UNIX, unha posible solución que é compatible co formato de 32 bits existente sería redefinir o <code>time_t</code> como "enteiro '''sen''' signo, de 32 [[bit]]s", aínda que isto soamente pospoñería o problema ata o [[7 de febreiro]] do [[2106]], e implicaría a revisión de todas as implementacións do tratamento de valores de time_t.