Confira !!
A GNU C Library (Glibc) viu outro lote de preparações do ano 2038 "Y2038" na terça-feira para o carimbo de data / hora Unix para quando o tempo desde 1 de janeiro de 1970 não pode mais ser armazenado em um inteiro assinado de 32 bits.
Havia vários patches Y2038 a serem mesclados ao Glibc no dia anterior, mas no final das contas o principal destaque é o suporte para tempo de 64 bits com os ABIs legados.
Conforme explicado por Adhemerval Zanella da Linaro, " Um novo sinalizador de compilação, _TIME_BITS, permite o uso da versão de 64 bits mais recente
símbolos de tempo para ABI legado (onde time_t de 32 bits é o padrão). O suporte de tempo de 64 bits só é habilitado se LFS (_FILE_OFFSET_BITS = 64) também for usado. Diferente do suporte LFS, os símbolos y2038 são adicionados apenas para os ABIs necessários (armhf, csky, hppa, i386, m68k, microblaze, mips32, mips64-n32, nios2, powerpc32, sparc32, s390-32 e sh). Os ABIs com suporte de tempo de 64 bits permanecem inalterados, tanto para o redirecionamento de símbolos quanto para os tipos. No Linux, o suporte de tempo total de 64 bits requer, no mínimo, a versão v5.1 do kernel. Caso contrário, os fallbacks de 32 bits são usados e podem resultar em erro com o código de retorno de estouro (EOVERFLOW). "
Os redirecionamentos para lidar com o tempo de 64 bits são adicionados para fstat, gettimeofday, mktime, nanosleep, select, stat, time, utime e muitas outras chamadas libc, bem como para librt e libanl.
Com as versões recentes do kernel do Linux e outros componentes de software do espaço do usuário chave, o manuseio do ano 2038 está relativamente bom e agora este trabalho Glibc para manuseio adequado com os ABIs legados agora o controla de forma mais completa. Ainda faltam dezessete anos para o "Epochalypse", mas particularmente na frente embarcada, resta saber quantos sistemas / hardware serão atualizados pelo fornecedor para mitigar o problema.
Até a próxima !!
Nenhum comentário:
Postar um comentário