La vie secrète de Windows : Des extraterrestres ont mangé mon logiciel

Des extraterrestres ont retardé la sortie de votre produit et autres réponses fantaisistes expliquant pourquoi votre produit a pris du retard.

Raymond Chen

Un de mes collègues a travaillé pour une entreprise qui a fabriqué des périphériques matériels. Il m'a dit que la libération d'un produit très attendu a été une fois retenue par un bogue dans sa partie du pilote de périphérique. Il semblait être une sorte de condition de course qui a donné lieu à la corruption de la mémoire. Mauvaises choses se produisent lorsque vous disposez de corruption de mémoire dans un pilote de périphérique.

Le développeur précédent pour cette partie du pilote a eu la gentillesse assez pour laisser un commentaire énigmatique dans le code : « Et puis les extra-terrestres viennent. » La haute direction est naturellement préoccupée par ce un bug qui a retardé la sortie de leur produit. Ils ne semblent pas trop préoccupés par les aliens de l'espace, juste le fait qu'ils ont été mettre en travers de la version du produit.

Comme les cadres supérieurs n'étaient pas celles faisant le bug étudier, ils l'ont fait que les cadres supérieurs plus feront lorsqu'ils ont besoin de quelque chose — ils ont gardé écoute la personne qui en fait le code de débogage. Après tout, tout le monde sait que les développeurs seront déboguer des problèmes plus rapidement si vous les BN pour les rapports de situation et se cachent ostensiblement à l'extérieur de leur bureau.

À un certain moment, les cadres supérieurs ont décidé de chercher des solutions créatives aux problèmes au lieu de tracasser le pauvre développeur qui tentait d'obtenir un handle sur le bug de corruption de mémoire insaisissable. Ils ont trouvé un.

Leur « solution » était de rampe jusqu'à la fabrication, malgré l'absence d'un pilote entièrement débogué. Les usines outre-mer devaient produire des boîtes entièrement emballés avec leurs nouveaux appareils, mais avec une prise peu. Les boîtes ne comprennent une disquette avec le pilote final (celle-ci étant l'époque lorsque les pilotes de périphériques est entrées sur les disquettes). Au lieu de cela, il y avait une petite fente sur le dessus. Les boîtes de produits presque finis seraient alors chargés sur des navires et transporté à travers la mer.

Il faut quelques semaines pour un navire de transport traverser l'océan. L'espoir était que notre héros le développeur de débogage serait identifier et corriger le bug, tandis que les appareils étaient encore en route. Si tout a fonctionné, les disquettes avec le pilote à jour serait fabriqués localement, chargés dans des camions et envoyés pour rencontrer le navire est arrivé sur la rive.

Lorsque les dispositifs ont été déchargées du navire, travailleurs seraient ouvrir les caisses, insérez une disquette dans chaque boîte par l'intermédiaire de la fente sur le dessus, puis sceller les caisses back up et envoient à chaque fois qu'ils devaient aller. Heureusement, le développeur de notre héros identifier le bogue. Il a réussi à fixer dans le temps, et le reste du plan a procédé sans plus tarder.

Matériel interrompu

Si vous êtes curieux au sujet de la nature de la bogue réel, voici ce qui est arrivé. Lorsque le fragment de code en question est exécuté, le dispositif déclenche parfois une interruption matérielle. Le gestionnaire d'interruption matériel avait un bug qui a provoqué son ne pas restaurer correctement les registres avant de retourner le code original de contrôle. Du point de vue du code interrompu, c'est en effet comme si les extra-terrestres étaient venu et endommagé les registres dans le processeur. Afin que le développeur initial n'était pas loin.

J'ai été dit du fabricant un ordinateur qui autrefois était considéré comme tirant sur une version plus extrême de ce truc, quand une nouvelle version de Windows a été prévue pour la libération. Afin d'obtenir leurs ordinateurs sur le marché rapidement, leur plan était de leur fabriquer une copie d'une version préliminaire et les charger sur les navires.

Au lieu de simplement rencontre les navires qu'ils sont arrivés sur la côte, leur idée était d'intercepter chaque navire qu'il traverse l'océan, tout comme dans les films d'espionnage. Ils seraient déployer une équipe de personnes qui ouvrent chaque boîte de l'ordinateur et mise à niveau de l'OS à la version finale de Windows juste là sur le navire.

Je ne sais pas comment sérieusement ils considéraient ce plan audacieux, mais il fut finalement abandonné. Ils ont décidé d'attendre la version finale a été libérée avant d'emballer les ordinateurs dans des boîtes. Qui vous donne juste une idée de la longueur à laquelle certains iront à accélérer obtenir leur produit là-bas à temps.

Raymond Chen

Raymond ChenWeb site, The Old New Thing et identiquement intitulé livre (Addison-Wesley, 2007) traitent de l'histoire Windows et programmation Win32. Ne dites pas n'importe qui, mais vous êtes son lecteur préféré.

Contenu associé