13 votes

Les GameCube, Wii et Wii U sont-ils vulnérables au problème de l'année 2038?

Le problème de l'an 2038 est une chose qui touche de nombreux systèmes embarqués qui utilisent un entier 232 pour suivre les secondes. Fondamentalement, une fois que le 19 janvier 2038 arrivera, un dépassement fera revenir le "temps actuel" supposé au 13 décembre 1901.

Je me demande si la GameCube est vulnérable à ce problème, et si c'est le cas, si la Wii et la Wii U le sont également (puisqu'elles utilisent en grande partie le même matériel). J'aurais posé la question pour "toutes les consoles Nintendo" mais c'est trop vague.

10voto

Florian Bach Points 375

Le "Problème de l'An 2038" est lié au fait que la plupart des systèmes Unix / Linux stockent les horodatages comme le nombre de secondes depuis 1970. De cette manière, une valeur signée 32 bits débordera en 2038.

À la fois la Gamecube et la Wii (je ne suis pas sûr pour la WiiU mais je soupçonne que ce sera pareil) stockent leur temps en tant qu'entier non signé avec les secondes depuis 2000 ([1]), donc il débordera en 2136. Certains horodatages sur la Wii utilisent une valeur 64 bits pour les millisecondes depuis 2000; cela déborderait encore plus tard. ([2])

Le menu système de la Wii ne vous permet pas de définir une date ultérieure à 2050, donc vous pourriez rencontrer des problèmes à ce moment-là. Mais la Wii et la Gamecube ne sont pas vraiment des systèmes qui dépendent du temps système correct. Si en 2050 il y a des problèmes avec la console en raison de l'heure, vous pourriez simplement régler la date à nouveau sur 2000 et vivre avec le fait que la date affichée sur le menu principal de la console est fausse. Mis à part cela, avoir une mauvaise date ne causera aucun problème.

Quant à des jeux comme Animal Crossing qui dépendent du temps système, la seule chose sur laquelle ce jeu repose est le fait que le temps avance. Vous pouvez régler l'heure en arrière de quelques années et le jeu continuera de fonctionner.

Les services en ligne personnalisés comme Wiimmfi imposent actuellement que l'heure définie sur la console soit correcte, mais c'est quelque chose qui est fait côté serveur et ne sera plus appliqué si Wiimmfi existe toujours en 2050.

Sources:

[1] Code source de l'émulateur Dolphin EXI_DeviceIPL.cpp et EXI_DeviceIPL.h où se fait la conversion entre Unixtime et l'heure Wii et vice versa

[2] Exemple de Mario Kart Wii où des horodatages 64 bits pour les millisecondes sont utilisés, également basés sur 2000-01-01 : MKWii Network Protocol - SELECT.

1voto

user163757 Points 1728

D'après ce que je comprends, tout système 32 bits rencontrera ce problème. En examinant la page Wiki de chacune des trois consoles que vous avez étiquetées, elles utilisent toutes un processeur 32 bits. En tant que tel, ils exécutent des systèmes 32 bits et peuvent rencontrer ce problème.

Cependant, je pense qu'ils ne rencontreront un problème que s'ils utilisent le système Unix Time pour suivre le temps. Je pense que si vous réglez manuellement l'heure quelque part entre 00:00:00 UTC le 1er janvier 1970 et 03:14:07 UTC le 19 janvier 2038, le système pourrait fonctionner correctement, même après l'année 2038 (je ne suis pas sûr si les consoles vous permettront de régler l'heure à de tels extrêmes). Je sais que récemment, vous auriez pu bloquer un iPhone si vous régliez la date du téléphone sur le 1er janvier 1970 à 00:00:00 UTC. En utilisant ceci comme exemple, si vous gardiez l'horloge de vos consoles réglée manuellement à un endroit "sûr", je pense qu'elles devraient toujours fonctionner.

-2voto

blokeley Points 1543

Je ne suis pas sûr si cela est lié, je sais que ce message date de plusieurs années à ce stade, mais je viens de remarquer quelque chose. J'ai sorti ma vieille Gamecube aujourd'hui pour la première fois depuis de nombreuses années, je l'ai branchée et elle a dû refaire la configuration initiale. Après cela, j'ai vérifié la date et l'heure et j'ai remarqué que la date était réglée sur le 7 février de l'année 2136. C'est particulièrement étrange car l'année maximale à laquelle vous pouvez régler la date dans les paramètres du système est 2099.

Je suppose que cela est dû à la pile à l'intérieur de la Gamecube qui s'est épuisée au fil des années, ce qui expliquerait qu'elle ait bouclé comme l'a mentionné Florian précédemment. Je ne suis pas sûr si quelqu'un d'autre a déjà rencontré ce problème, mais je pensais que cela valait la peine d'être noté.

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X