Elle allait pour rire mais s’en abstint en remarquant la gravité de son collègue. Lorsqu’elle revint avec l’appareil quelques minutes plus tard, le Dr Takagishi lui révéla la raison de sa demande.
— Cet après-midi, j’ai ressenti deux douleurs violentes dans la poitrine. C’était au cours de ces moments d’effervescence, après que Wilson eut chargé les biotes, quand j’ai compris que…
Il n’acheva pas sa phrase.
Elle hocha la tête et utilisa le scanner.
Ils n’échangèrent pas une parole pendant les trois minutes suivantes. Nicole consulta des fichiers et fit apparaître des courbes et des graphiques sur le petit moniteur. Lorsqu’elle eut terminé, elle se tourna vers son patient, la bouche incurvée par un sourire sans joie.
— Vous avez subi une crise cardiaque bénigne, lui dit-elle. Peut-être deux, à brefs intervalles. Et votre cœur bat irrégulièrement depuis.
Elle put constater qu’il n’en était pas surpris.
— Je suis désolée. J’ai ici quelques médicaments que je peux vous prescrire, mais à titre provisoire seulement. Nous devrons retourner à bord de Newton pour traiter efficacement le problème.
Il sourit à son tour, tout aussi tristement.
— Eh bien, si nos prédictions sont correctes le jour se lèvera dans une douzaine d’heures. Je suppose que nous pourrons alors rentrer à bord.
— Je vais aller de ce pas en parler à Brown et à Heilmann. Nous partirons dès l’aube.
Il se pencha et prit sa main.
— Merci, Nicole.
Elle se détourna. Ses yeux étaient humides de larmes, pour la deuxième fois en moins d’une heure. Nicole sortit de la hutte de Takagishi et se dirigea vers celle de David Brown afin de l’informer de l’évolution de la situation.
* * *
— Ah, c’est vous ! entendit-elle. Elle reconnut la voix de Wakefield.
— Je vous croyais endormie. J’ai des révélations à vous faire.
— Salut, Richard, dit-elle à la silhouette qui émergeait des ténèbres avec une lampe torche.
— Je ne pouvais dormir. J’étais harcelé par un trop grand nombre d’images macabres et j’ai décidé d’occuper mon esprit en me penchant sur votre problème, expliqua-t-il avant de sourire. Trouver la solution a été encore plus facile que je ne le pensais. Pouvez-vous venir dans ma hutte, pour écouter mes explications ?
Nicole était déconcertée. Elle pensait toujours à ce qu’elle dirait à Brown et Heilmann au sujet de Takagishi.
— Vous n’avez pas oublié, j’espère ? Je parle de la défaillance de RoChir.
— Vous voulez dire que vous avez étudié la question ? Ici ?
— Bien sûr. Je n’ai eu qu’à demander à O’Toole de me communiquer les données nécessaires. Venez, que je vous montre.
Elle estima que son entretien avec le Dr Brown pouvait attendre et suivit Richard. En chemin, il alla frapper à la porte d’une autre hutte.
— Eh, Tabori, devinez qui j’ai croisé dans les ténèbres ? Notre charmante doctoresse, sortie prendre un bol d’air. Souhaitez-vous vous joindre à nous ?
Il se tourna vers Nicole, pour préciser :
— Je lui en ai déjà touché deux mots. Tout était éteint, chez vous, et je vous ai crue endormie.
Janos sortit moins d’une minute plus tard. Sa démarche manquait d’assurance mais il sourit à Nicole.
— Entendu, Wakefield, dit-il. Mais ne perdons pas de temps. J’étais sur le point de m’assoupir.
Une fois dans sa hutte l’ingénieur britannique expliqua avec une autosatisfaction évidente ce qui était arrivé au robot-chirurgien quand le module Newton avait été soumis à cet effet de couple inattendu.
— Vous aviez raison, Nicole. RoChir a bien reçu des ordres manuels qui ont rendu inopérants les algorithmes de protection. Mais ils n’ont pas été donnés avant la manœuvre de Rama.
Il sourit et la dévisagea pour s’assurer qu’elle assimilait ses propos.
— Quand Janos est tombé et a heurté le boîtier de commande, trois instructions ont été enregistrées. RoChir les a assimilés à des ordres. Il a été informé qu’il y avait des instructions manuelles dans la file d’attente. Elles étaient naturellement sans queue ni tête mais il n’avait pas la possibilité de s’en rendre compte.
« Voilà qui devrait vous permettre de mieux comprendre quels cauchemars troublent le sommeil des concepteurs de logiciels. Il est impossible de prévoir tous les cas de figure. Les auteurs de celui-ci ont mis en place des protections contre une instruction incohérente entrée par inadvertance – au cas où quelqu’un effleurerait le boîtier en cours d’intervention, par exemple – mais pas plusieurs. La commande manuelle ne doit servir qu’en cas d’urgence et elle a donc un statut prioritaire. Elle provoque une interruption dans l’exécution du programme. Comme le risque d’erreur est évident, le système peut rejeter tout ce qui lui semble « absurde » et passer à la suite.
— Désolée, mais je ne vous suis pas, avoua Nicole. Comment a-t-on pu structurer ce logiciel pour qu’il rejette une commande douteuse mais pas plusieurs ? Je croyais que ces microprocesseurs fonctionnaient en mode sériel.
Richard alluma son ordinateur de poche et utilisa ses notes. Des nombres s’alignèrent en rangées et colonnes sur l’écran.
— Voilà les opérations effectuées par RoChir après l’enregistrement des ordres manuels dans le tampon d’entrée.
— Elles se répètent à sept instructions d’intervalle, remarqua aussitôt Janos.
— Absolument, confirma Richard. RoChir a essayé trois fois d’exécuter la première. Il n’y est pas parvenu et est passé à la suivante, comme l’ont souhaité les concepteurs de ce logiciel…
— Mais pourquoi est-il revenu ensuite au début ? voulut savoir Tabori.
— Parce que les auteurs de ce programme n’ont pas envisagé qu’il pourrait y avoir plusieurs ordres erronés en attente dans le tampon d’entrée. Ou tout au moins n’ont-ils pas jugé utile d’installer des protections en prévision d’une telle éventualité. Après l’exécution ou le rejet d’une instruction, le système s’assure qu’il n’y a plus rien dans la mémoire tampon. Si elle est vide, le programme reprend à l’interruption. S’il y a quelque chose, l’instruction douteuse est mise en attente pendant que la suivante est traitée. En cas d’annulations successives, une sous-routine de protection contre les pannes matérielles commute le système sur des microprocesseurs de secours qui prennent la relève pour essayer d’exécuter ces ordres manuels. C’est très simple. Prenons le cas d’un…
Nicole écouta Richard et Janos parler de redondances, de stockage d’instructions et de files d’attente. Ses connaissances en informatique ne lui permettaient pas de suivre leurs explications.
— Un instant, intervint-elle, je me sens à nouveau perdue. Vous semblez oublier que je ne suis pas une technicienne. Ne pourriez-vous pas vous exprimer en termes compréhensibles par les profanes ?
— Excusez-moi, Nicole, dit Wakefield. Savez-vous ce qu’est un système informatique à priorité d’interruption ?
Elle hocha la tête.
— Et savez-vous comment sont établies ces dernières ? Alors, c’est parfait. L’explication est très simple. L’horloge qui gère les protections contre les problèmes signalés par l’accéléromètre et le scanner stéréoscopique a une priorité inférieure à celle qui transmet les ordres manuels tels que ceux que Janos a accidentellement saisis en tombant. Le programme s’est retrouvé coincé dans une boucle et n’a pu être interrompu par les sous-systèmes de sécurité. C’est pour cela que le scalpel ne s’est pas arrêté.
Читать дальше