1

Таким образом, мой вопрос касается The end of time (Unix), произойдет ли это на 64-битной ОС Windows 7, которая виртуализирует 32-битную версию Windows XP?

3 ответа3

2

Windows не хранит время так же, как системы Unix, и проблема Y2038 не повлияет на Windows XP или Windows 7.

2

Начиная с Windows 2000, все операционные системы Windows использовали Win32Time, на который не распространяются те же ограничения, что и на время Unix.

Следовательно, нет, "Конец Времени" не произойдет ни на вашем 32-битном клиенте, ни на вашем 64-битном хосте.

2

Частично да. Я видел, что некоторые приложения ActivePerl не запускаются, если локальная дата - после 2038 года. Это потому, что они используют 32-битный time_t в стиле UNIX, и это не зависит от операционной системы хоста (64-битная или 32-битная Windows).

Последний Microsoft libc использует 64-битный time_t, но более старые приложения, скомпилированные с Visual Studio 6.0, зависят от 32-битного time_t, поэтому у них будут проблемы с переполнением даты в 2038 году. Это не влияет на приложения, использующие чистый Windows API (GetFileTime, GetSystemTimeAsFileTime и т.д.), Даже если они скомпилированы с Visual Studio 6.0.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .