Une mise à jour d'OS à 150 millions de kilomètres de distance

Guillaume Champeau - publié le Mardi 07 Août 2012 à 09h34 - posté dans High-Tech

Arrivé sur le sol de la planète Mars, le rover Curiosity doit désormais subir une mise à jour de son logiciel système. Une manoeuvre périlleuse réalisée à 150 millions de kilomètres de la Terre.

Avez-vous déjà ressenti ce petit stress qui précède le reboot d'un ordinateur après la mise à jour du système d'exploitation, lorsque l'on espère qu'aucune donnée n'a été perdue et que tout fonctionnera parfaitement ? Alors imaginez ce que doivent ressentir les ingénieurs de la NASA, qui ont expliqué lundi qu'ils doivent mettre à jour l'OS du rover Curiosity, débarqué avec succès ce week-end sur la planète Mars. 

Actuellement, les instruments du robot d'exploration martienne ne sont pas tous fonctionnels. Le rover doit subir au préalable plusieurs mises à jour, qui seront autant de risques pour son fonctionnement futur. L'opération se répartira sur plusieurs jours, avec des données qui devront faire un long voyage de près de 150 millions de kilomètres entre la Terre et Mars.

Concrètement, les données seront envoyées à travers le Réseau Spatial Profond (ou "Deep Space Network", DSN) de la NASA. Elles seront reçues par les sondes orbitales Mars Reconnaissance Orbiter et Mars Odissey, qui se chargeront de les relayer vers Curiosity par des ondes en bande ultra-haute fréquence (UHF), avec une bande passante de 2 à 256 kilobits par seconde (.pdf). "Utiliser les orbiters pour relayer des messages est bénéfique parce qu'ils sont plus proches du rover que les antennes sur terre du Deep Space Network (DSN), et ils ont la Terre dans leur champ de vision pendant des périodes de temps bien plus longues que le rover sur le terrain", explique la NASA.

Curiosity est équipé de deux ordinateurs identiques, dont l'un est mis en sommeil et ne sera activé qu'en cas de problème, pour servir d'ordinateur de secours. Conçus spécialement pour résister aux rayons cosmiques, ils utilisent un processeur RAD 750, et intègrent 256 Ko de mémoire EEPROM, 256 Mo de mémoire SDRAM et 2 Go de mémoire Flash avec détection et correction d'erreurs.

Publié par Guillaume Champeau, le 7 Août 2012 à 09h34
 
 
50
Commentaires à propos de «Une mise à jour d'OS à 150 millions de kilomètres de distance»
 
Inscrit le 04/05/2009
525 messages publiés
après la mise à jour du système d'exploitation,


Je dirais que c'est plus comme la mise a jour du BIOS sur un PC
Inscrit le 11/03/2009
3427 messages publiés
Guss_, le 07/08/2012 - 09:41
après la mise à jour du système d'exploitation,


Je dirais que c'est plus comme la mise a jour du BIOS sur un PC


+1 , ou comme au reboot d'un smartphone que t'espère ne pas avoir brické
Inscrit le 07/08/2012
1 messages publiés
"ils sont plus proches du rober" wokay
Inscrit le 05/10/2011
1843 messages publiés
Ce serait marrant, le premier kernel panic sur Mars.
Inscrit le 11/03/2009
3427 messages publiés
DRAM 2 Go ?? je connais EDO,SDRAM,DDR ,

DRAM : sorti apres EDO et avant SDRAM ??? il a quitté la terre il y a bien longtemps j'ai l'impression .

Espérons que tout se passe bien en tout cas .
Inscrit le 14/07/2004
6870 messages publiés
milord, le 07/08/2012 - 09:54
Ce serait marrant, le premier kernel panic sur Mars.

Ca serait ballot, pour une fois qu'ils réussissent à faire atterrir une sonde sur mars la faire planter quelques jours après... :-/
Inscrit le 05/10/2011
1843 messages publiés
flob, le 07/08/2012 - 10:03

milord, le 07/08/2012 - 09:54
Ce serait marrant, le premier kernel panic sur Mars.


Ca serait ballot, pour une fois qu'ils réussissent à faire atterrir une sonde sur mars la faire planter quelques jours après... :-/

Pas grave, ils ont qu'à envoyer quelqu'un pour appuyer sur le bouton "reset".
Inscrit le 11/03/2009
1455 messages publiés
Gné ? Pourquoi ils ont envoyé une sonde dont tout les instruments n'étaient pas utilisable au lancement ?
Je suis perplexe
Inscrit le 11/03/2009
3427 messages publiés
Par contre une chose que je ne comprends pas , pourquoi prendre un tel risque ?
je veux dire au concept de la mission .

Un update comme tentative du dernier espoir
OK , mais là ils ont planifié cet update de fou avant meme le lancement .

Une histoire de fenetre de lancement favorable par rapport à mars
, impossible d'attendre et donc cet update
????
[message édité par speed le 07/08/2012 à 10:20 ]
Inscrit le 28/01/2006
17 messages publiés
Je suis perplexe aussi, çà manque d'infos sur le pourquoi de la mise à jour.

Si c'est pour corriger un bug qui expliquerait pourquoi certains modules ne sont pas fonctionnels, c'est quand même surprenant.

Après, c'est peut être pour une autre raison : ils ont récupéré des infos par les capteurs (genre par rapport à la position actuelle du robot, inclinaison du terrain, position par rapport aux waypoints qu'il doit atteindre, etc.), et ils ne font que reprogrammer sa configuration (auquel cas c'est à priori moins risqué qu'une mise à jour de l'OS, normalement ...).
Inscrit le 28/05/2009
19 messages publiés
C'est pour appliquer les mises à jour de sécurité of course ! :-p

Plus sérieusement, on peut supposer que ce qu'ils ne veulent pas dire clairement, parce que ça ne fait pas sérieux de ne pas avoir fait tous les tests nécessaires avant le lancement, c'est qu'ils ont trouvé des bugs dans leur OS, probablement pendant le trajet de la sonde, et qu'ils sont obligés de les corriger pour pouvoir continuer.
Inscrit le 14/07/2004
6870 messages publiés
numerologiste, le 07/08/2012 - 10:42
C'est pour appliquer les mises à jour de sécurité of course ! :-p

Plus sérieusement, on peut supposer que ce qu'ils ne veulent pas dire clairement, parce que ça ne fait pas sérieux de ne pas avoir fait tous les tests nécessaires avant le lancement, c'est qu'ils ont trouvé des bugs dans leur OS, probablement pendant le trajet de la sonde, et qu'ils sont obligés de les corriger pour pouvoir continuer.

+1
C'est surtout que vu le risque de l'opération, ils ont du s'assurer que la mise à jour soit réellement nécessaire
Inscrit le 07/08/2012
1 messages publiés
C'était le programme sur l'atterrissage qui était au sein de Curiosity vue qu'il prenait trop de place, et que Curiosity ne reviendra pas sur Terre, ils vont supprimer ce module et le remplacer par le module qui va permettre l'exploitation de chaque instrument du robot.
Inscrit le 05/05/2009
1191 messages publiés
toubib, le 07/08/2012 - 10:51
C'était le programme sur l'atterrissage qui était au sein de Curiosity vue qu'il prenait trop de place, et que Curiosity ne reviendra pas sur Terre, ils vont supprimer ce module et le remplacer par le module qui va permettre l'exploitation de chaque instrument du robot.


Tu as une source ou c'est une supposition?(si oui c'est vrai que c'est ce qu'il y a de plus vraisemblable)
[message édité par Trycer le 07/08/2012 à 11:14 ]
Inscrit le 10/01/2003
311 messages publiés
Tain un écran bleu sur Mars?
Inscrit le 10/04/2011
86 messages publiés
Lancement initialement prevu en octobre 2009.
Finalement lance en novembre 2011.
Prochaine fenetre de tir: compter 2 ans et 1-2 mois.
Je pense qu'un autre report aurait signifie la fin de la mission (la NASA est sous pression permanente quant a l'utilisation des ous qu'on lui donne).
Inscrit le 07/10/2011
1972 messages publiés
C'est carrément "beau" une mise à jour comme dans ce cas là.
"Beau" comme un plantage d'ordinateur sur la capsule d'alunissage Apollo11.

Les babas techno-phobes ne comprennent rien à ces belles choses.
Je me demande si il y a des amoureux de la nature + amoureux du net/technique ici.
Inscrit le 30/03/2010
888 messages publiés
Melpheos, le 07/08/2012 - 10:08
Gné ? Pourquoi ils ont envoyé une sonde dont tout les instruments n'étaient pas utilisable au lancement ?
Je suis perplexe


Parce que c'était pas fini, et que rater une fenetre de tir c'est autrement plus grave.

M'enfin faut pas croire que c'est une opération a risque, comme pour tout systeme temps réel critique il y a un sous systeme type chien de garde, qui doit etre réarmé régulierement par l'OS principal. Quand il est pas réarmé il reboot le systeme, et au bout de X reboot il charge un OS minimaliste qui permet de mettre a jour le systeme foireux. On est tres loin de la réinstall d'OS sur un PC...
Inscrit le 27/05/2009
378 messages publiés
Trycer, le 07/08/2012 - 11:14
toubib, le 07/08/2012 - 10:51
C'était le programme sur l'atterrissage qui était au sein de Curiosity vue qu'il prenait trop de place, et que Curiosity ne reviendra pas sur Terre, ils vont supprimer ce module et le remplacer par le module qui va permettre l'exploitation de chaque instrument du robot.


Tu as une source ou c'est une supposition?(si oui c'est vrai que c'est ce qu'il y a de plus vraisemblable)


C'est aussi ce que j'ai entendu (radio ou tv, je ne sais plus). Par contre, on ne parlait pas de la raison d'un choix à-priori aussi risqué.
Inscrit le 12/03/2009
267 messages publiés
DRAM 2 Go ?? je connais EDO,SDRAM,DDR ,

DRAM : sorti apres EDO et avant SDRAM ??? il a quitté la terre il y a bien longtemps j'ai l'impression .

Espérons que tout se passe bien en tout cas .


Dans l'espace tu as beaucoup d'interférences et tu n'utilises pas les composants lambda mais des circuits validés et testés.

Ensuite il faut des années pour concevoir ce genre de mission et le choix des composants est fixé tôt puis tout est validé et testé longtemps.

La taille de la mémoire est réduite et tout doit être codé soigneusement.

Enfin ce n'est pas la première fois que l'on met à jour les logiciels en cours de mission.
Inscrit le 03/10/2011
3125 messages publiés
ils utilisent un processeur RAD 750, et intègrent 256 Ko de mémoire EEPROM, 256 Mo de mémoire SDRAM et 2 Go de mémoire Flash
Comme quoi dès qu'on utilise pas un système d'exploitation PC, on n'a pas besoin de multicore, GHz, To.
Bref avec 2 Go de disque et 256Mo de mémoire, on est capable de gérer un robot semi-autonome à Pétaouchnock avec un processeur de 200 MHz. Et est-ce qu'on pourrait gérer un téléphone aussi.

Au fait, Guillaume, 150 millions de km, c'est la distance Terre-Soleil, t'es sûr que c'est effectivement la distance parcouru par la sonde, et que comme par hasard , ça correspondrait aussi à la distance terre-Mars d'aujourd'hui ?
Moi, ici , je lis que le voyage a été de 560 millions de km et que en ce moment, Mars est à 248 millions de km de la Terre.
Inscrit le 08/12/2010
198 messages publiés
Juste : C'est une image d'illustration votre truc où ils vont vraiment utiliser WinXP pour compiler et envoyer la MAJ ?
Inscrit le 04/09/2002
1960 messages publiés
mif92, le 07/08/2012 - 11:36
Lancement initialement prevu en octobre 2009.
Finalement lance en novembre 2011.
Prochaine fenetre de tir: compter 2 ans et 1-2 mois.
Je pense qu'un autre report aurait signifie la fin de la mission (la NASA est sous pression permanente quant a l'utilisation des ous qu'on lui donne).

avec les chinois qui s'excitent dans le domaine spatial, c'est moins vrai aujourd'hui: le congrès américain débloque de nouveau de l'argent, car il est impensable pour eux de perdre leur avance.
Inscrit le 05/10/2011
1843 messages publiés
Centaurien, le 07/08/2012 - 12:29

ils utilisent un processeur RAD 750, et intègrent 256 Ko de mémoire EEPROM, 256 Mo de mémoire SDRAM et 2 Go de mémoire Flash

Comme quoi dès qu'on utilise pas un système d'exploitation PC, on n'a pas besoin de multicore, GHz, To.

Et donc ? Il ne faut plus utiliser d'OS ?
Inscrit le 21/01/2009
4464 messages publiés
milord, le 07/08/2012 - 14:13
Centaurien, le 07/08/2012 - 12:29

ils utilisent un processeur RAD 750, et intègrent 256 Ko de mémoire EEPROM, 256 Mo de mémoire SDRAM et 2 Go de mémoire Flash

Comme quoi dès qu'on utilise pas un système d'exploitation PC, on n'a pas besoin de multicore, GHz, To.

Et donc ? Il ne faut plus utiliser d'OS ?

Si, xubuntu par exemple : http://doc.ubuntu-fr...xubuntu_lubuntu
Inscrit le 05/10/2011
1843 messages publiés
tass_, le 07/08/2012 - 14:20

milord, le 07/08/2012 - 14:13

Centaurien, le 07/08/2012 - 12:29

ils utilisent un processeur RAD 750, et intègrent 256 Ko de mémoire EEPROM, 256 Mo de mémoire SDRAM et 2 Go de mémoire Flash


Comme quoi dès qu'on utilise pas un système d'exploitation PC, on n'a pas besoin de multicore, GHz, To.


Et donc ? Il ne faut plus utiliser d'OS ?


Si, xubuntu par exemple : http://doc.ubuntu-fr...xubuntu_lubuntu

Xubuntu ça sucks
Inscrit le 21/01/2009
4464 messages publiés
milord, le 07/08/2012 - 14:23
tass_, le 07/08/2012 - 14:20

milord, le 07/08/2012 - 14:13

Centaurien, le 07/08/2012 - 12:29

ils utilisent un processeur RAD 750, et intègrent 256 Ko de mémoire EEPROM, 256 Mo de mémoire SDRAM et 2 Go de mémoire Flash


Comme quoi dès qu'on utilise pas un système d'exploitation PC, on n'a pas besoin de multicore, GHz, To.


Et donc ? Il ne faut plus utiliser d'OS ?


Si, xubuntu par exemple : http://doc.ubuntu-fr...xubuntu_lubuntu

Xubuntu ça sucks

Si t'es vraiment barbu du openbsd ou du solaris ça doit tourner sur des vieilleries
Inscrit le 03/10/2011
3125 messages publiés
milord, le 07/08/2012 - 14:13

Centaurien, le 07/08/2012 - 12:29

ils utilisent un processeur RAD 750, et intègrent 256 Ko de mémoire EEPROM, 256 Mo de mémoire SDRAM et 2 Go de mémoire Flash


Comme quoi dès qu'on utilise pas un système d'exploitation PC, on n'a pas besoin de multicore, GHz, To.


Et donc ? Il ne faut plus utiliser d'OS ?

Ben, tu fais comme tu veux, je dis juste qu'on est pas obligé d'avoir une calculatrice qui soit un programme de 2 Go, qui nécessite 4 cores et 5 Go pour faire une addition.
Donc le jour où les sociétés arrêteront d'utiliser des librairies de merde juste parce qu'on développe plus vite avec, on aura enfin un retour à des systèmes performants.
Et pour Xubuntu, la conf, c'est 500MHz et 5Go, donc t'es juste 4 fois au dessus du petit robot martien.
Sinon, effectivement, y en a qui ont fait tourner Linux sur un machine des années 80 et ça fonctionnait, mais il me semble que c'était de l'ordre de 6h pour démarrer, pas sûr que le petit robot ait le temps d'éviter le rocher qui est à 2 mètres devant lui.
Inscrit le 21/01/2009
4464 messages publiés
Centaurien, le 07/08/2012 - 14:55

Et pour Xubuntu, la conf, c'est 500MHz et 5Go, donc t'es juste 4 fois au dessus du petit robot martien.
Sinon, effectivement, y en a qui ont fait tourner Linux sur un machine des années 80 et ça fonctionnait, mais il me semble que c'était de l'ordre de 6h pour démarrer, pas sûr que le petit robot ait le temps d'éviter le rocher qui est à 2 mètres devant lui.

Tu sais ton petit robot c'est de l'embarqué, donc de l'ultra spécifique, par exemple aucun affichage écran n'est nécessaire, l'ordi de bord ne peut pas être comparé à un PC.

Dans le spécifique il est normal d'avoir besoin de bien moins de capacités de calcul, traitement et cie.

Ton petit robot par exemple il ne saura pas lire un mp3, ou afficher du html.
Inscrit le 05/10/2011
1843 messages publiés
Centaurien, le 07/08/2012 - 14:55

Et pour Xubuntu, la conf, c'est 500MHz et 5Go, donc t'es juste 4 fois au dessus du petit robot martien.


Yup. Par contre, un PC avec cette configuration vaut juste 100.000 fois moins que le joujou de la NASA.


Centaurien, le 07/08/2012 - 14:55


Donc le jour où les sociétés arrêteront d'utiliser des librairies de merde juste parce qu'on développe plus vite avec, on aura enfin un retour à des systèmes performants.

C'est quoi performant ? C'est un truc qui tourne bien sur les machines qu'on faisait il y a 30 ans, ou qui tourne bien sur une machine actuelle ?
Centaurien, le 07/08/2012 - 14:55


Sinon, effectivement, y en a qui ont fait tourner Linux sur un machine des années 80 et ça fonctionnait, mais il me semble que c'était de l'ordre de 6h pour démarrer, pas sûr que le petit robot ait le temps d'éviter le rocher qui est à 2 mètres devant lui.

Comment on peut comparer de l'embarqué du niveau des appareils de la NASA avec un PC Oo.
Inscrit le 07/10/2011
1972 messages publiés
"Comment on peut comparer de l'embarqué du niveau des appareils de la NASA avec un PC Oo."

C'est sûr...
Ce robot, il est quasi-autonome. C'est de l'IA dedans.
Inscrit le 21/01/2009
4464 messages publiés
Amicalement, le 07/08/2012 - 15:41
"Comment on peut comparer de l'embarqué du niveau des appareils de la NASA avec un PC Oo."

C'est sûr...
Ce robot, il est quasi-autonome. C'est de l'IA dedans.

C'est surtout que le robot c'est de l'embarqué : il est spécifique à sa tâche, il ne sait fait que ce pourquoi il a été conçu, un pc par essence est bien plus généraliste, logique qu'à équipement égal il soit bien moins performant.

Le spécifique (donc ici l'embarqué) demande bien moins de ressources.
Inscrit le 07/10/2011
1972 messages publiés
tass_, le 07/08/2012 - 15:50
Amicalement, le 07/08/2012 - 15:41
"Comment on peut comparer de l'embarqué du niveau des appareils de la NASA avec un PC Oo."

C'est sûr...
Ce robot, il est quasi-autonome. C'est de l'IA dedans.

C'est surtout que le robot c'est de l'embarqué : il est spécifique à sa tâche, il ne sait fait que ce pourquoi il a été conçu, un pc par essence est bien plus généraliste, logique qu'à équipement égal il soit bien moins performant.

Le spécifique (donc ici l'embarqué) demande bien moins de ressources.


Ecoute, je ne suis ingé à la Nasa, mais à mon avis ce sympathique robot qui va devoir explorer Mars pendant 2 ans de manière quasi-autonome et prendre toutes sortes de décisions (avancer, tourner, reculer, repérer les endroits "intéressants", forer, ramasser, photographier, etc) et faire des tas de choses étonnantes (analyser échantillons, communiquer résultats),
il doit être sacrément "performant".
Inscrit le 06/11/2005
358 messages publiés
Amicalement, le 07/08/2012 - 16:21
tass_, le 07/08/2012 - 15:50
Amicalement, le 07/08/2012 - 15:41
"Comment on peut comparer de l'embarqué du niveau des appareils de la NASA avec un PC Oo."

C'est sûr...
Ce robot, il est quasi-autonome. C'est de l'IA dedans.

C'est surtout que le robot c'est de l'embarqué : il est spécifique à sa tâche, il ne sait fait que ce pourquoi il a été conçu, un pc par essence est bien plus généraliste, logique qu'à équipement égal il soit bien moins performant.

Le spécifique (donc ici l'embarqué) demande bien moins de ressources.


Ecoute, je ne suis ingé à la Nasa, mais à mon avis ce sympathique robot qui va devoir explorer Mars pendant 2 ans de manière quasi-autonome et prendre toutes sortes de décisions (avancer, tourner, reculer, repérer les endroits "intéressants", forer, ramasser, photographier, etc) et faire des tas de choses étonnantes (analyser échantillons, communiquer résultats),
il doit être sacrément "performant".


pourquoi le robot irait analyser des échantillons ? si tu veux mon avis ça serait plus logique d'envoyer vers la terre directement les données brutes en provenance des capteurs et d'étudier tout ça avec les supercalculateurs de la nasa
Inscrit le 07/10/2011
1972 messages publiés
Je crois qu'il les "analyse" au sens où il spectre différentes caractéristiques physico chimiques des échantillons avant d'envoyer les raw data vers Terre, effectivement.
Inscrit le 03/10/2011
3125 messages publiés
tass_, le 07/08/2012 - 15:28

Tu sais ton petit robot c'est de l'embarqué, donc de l'ultra spécifique, par exemple aucun affichage écran n'est nécessaire, l'ordi de bord ne peut pas être comparé à un PC.

Un ordinateur, c'est un ordinateur, on s'en fout de quoi il est capable, si tu lui demandes d'afficher une photo, et qu'il n'a pas de carte graphique, au pire, ça plantera, mais logiquement tu n'as pas besoin d'afficher de photo.
Tu dois utiliser tous les jours des sites en PHP, MySQL, et il n'y a pas une instruction pour afficher un truc dedans.
Dans le spécifique il est normal d'avoir besoin de bien moins de capacités de calcul, traitement et cie.
Bien sûr que non, c'est un robot semi-autonome, il doit analyser sa vue, ses capteurs, se déplacer, réagir et travailler (c'est pas Paulo à la NASA qui tient une télécommande susceptible de réagir entre 3 et 20 minutes après avoir reçu les informations, en supposant que Mars ne soit pas en opposition).
Ton petit robot par exemple il ne saura pas lire un mp3, ou afficher du html.

Et
ton PC, il n'est pas capable d'avancer tout seul.
Mon PC, il ne sait pas lire du MP3, si je n'ai pas de programme pour décoder un fichier MP3 et l'envoyer vers ma carte son, ce n'est pas l'ordinateur qui sait faire des trucs, ce sont les programmes. L'ordi, il sait juste qu'il a de la mémoire, un disque, une CPU, une carte graphique, ... le boulot du système d'exploitation, c'est de permettre aux programmes d'utiliser ces trucs, ... le boulot des programmes, c'est de commander l'utilisation de ces trucs si nécessaire.
milord, le 07/08/2012 - 15:31

Yup. Par contre, un PC avec cette configuration vaut juste 100.000 fois moins que le joujou de la NASA.

C'est sûr, et le transport est plus rapide. Mais je ne vois pas le rapport entre le prix du matériel et la capacité de programmer correctement une machine.
C'est quoi performant ? C'est un truc qui tourne bien sur les machines qu'on faisait il y a 30 ans, ou qui tourne bien sur une machine actuelle ?
Pourquoi pas ? Si ça tourne bien sur un machine d'hier, ça doit tourner encore mieux sur une machine d'aujourd'hui, et pas moins bien. Ce n'est pas parce que ta machine a 4 cores à 3 GHz que chaque programme que tu fais, doit utiliser 100% de la machine. Si tu prend l'exemple de @tass, lire un MP3, ça demande pas des GHz à la pelle, ni des tonnes de mémoire, mais tu peux programmer comme un porc et faire en sorte de les utiliser.
Comment on peut comparer de l'embarqué du niveau des appareils de la NASA avec un PC Oo.
If ... then ... else ...
Je ne vois pas la différence entre programmer une cafetière et un serveur. Une CPU, c'est très con, ça sait juste lire ou écrire en mémoire, tester des conditions, effectuer des opérations simples, gérer des piles et faire des sauts d'instructions ; et un ordinateur, c'est juste du courant qui passe ou non par des portes.
Inscrit le 07/10/2011
1972 messages publiés
Centaurien, ce qu'il y a probablement dans ce joli robot au niveau de l'équivalent kernell dépasse à mon avis de très loin les portes Oui ou-exclusif Non.

Sinon, ok avec ce que tu dis.
Inscrit le 05/10/2011
1843 messages publiés
Centaurien, le 07/08/2012 - 19:30


C'est sûr, et le transport est plus rapide. Mais je ne vois pas le rapport entre le prix du matériel et la capacité de programmer correctement une machine.

Ben tu compares juste des trucs incomparables : le développement d'une machine qui a coûté des millions (milliards) de dollars, avec des logiciels classiques, pour lesquels il y a beaucoup moins de moyens, et pas de clients pour payer ces logiciels une fortune.
Centaurien, le 07/08/2012 - 19:30

Pourquoi pas ? Si ça tourne bien sur un machine d'hier, ça doit tourner encore mieux sur une machine d'aujourd'hui, et pas moins bien. Ce n'est pas parce que ta machine a 4 cores à 3 GHz que chaque programme que tu fais, doit utiliser 100% de la machine. Si tu prend l'exemple de @tass, lire un MP3, ça demande pas des GHz à la pelle, ni des tonnes de mémoire, mais tu peux programmer comme un porc et faire en sorte de les utiliser.


... Et tu vois pas de juste milieu entre programmer en se contraignant à fond juste pour te faire plaisir (quoi d'autre ?) et utiliser toutes les ressources machine juste pour le fun ?
Plus tu mets de contraintes, plus le logiciel est cher... et la performance extrême est une très grosse contrainte...
Centaurien, le 07/08/2012 - 19:30
If ... then ... else ...
Je ne vois pas la différence entre programmer une cafetière et un serveur. Une CPU, c'est très con, ça sait juste lire ou écrire en mémoire, tester des conditions, effectuer des opérations simples, gérer des piles et faire des sauts d'instructions ; et un ordinateur, c'est juste du courant qui passe ou non par des portes.

Ouais, bon, tu racontes n'importe quoi en fait...
Inscrit le 07/10/2011
1972 messages publiés
coooool...
ce projet martien est si beau, respectons le mes enfants

Inscrit le 07/08/2012
120 messages publiés
tass_, le 07/08/2012 - 15:28

Tu sais ton petit robot c'est de l'embarqué, donc de l'ultra spécifique, par exemple aucun affichage écran n'est nécessaire, l'ordi de bord ne peut pas être comparé à un PC.

Un ordinateur, c'est un ordinateur, on s'en fout de quoi il est capable, si tu lui demandes d'afficher une photo, et qu'il n'a pas de carte graphique, au pire, ça plantera, mais logiquement tu n'as pas besoin d'afficher de photo.
Tu dois utiliser tous les jours des sites en PHP, MySQL, et il n'y a pas une instruction pour afficher un truc dedans.
Dans le spécifique il est normal d'avoir besoin de bien moins de capacités de calcul, traitement et cie.
Bien sûr que non, c'est un robot semi-autonome, il doit analyser sa vue, ses capteurs, se déplacer, réagir et travailler (c'est pas Paulo à la NASA qui tient une télécommande susceptible de réagir entre 3 et 20 minutes après avoir reçu les informations, en supposant que Mars ne soit pas en opposition).
Ton petit robot par exemple il ne saura pas lire un mp3, ou afficher du html.

Et
ton PC, il n'est pas capable d'avancer tout seul.
Mon PC, il ne sait pas lire du MP3, si je n'ai pas de programme pour décoder un fichier MP3 et l'envoyer vers ma carte son, ce n'est pas l'ordinateur qui sait faire des trucs, ce sont les programmes. L'ordi, il sait juste qu'il a de la mémoire, un disque, une CPU, une carte graphique, ... le boulot du système d'exploitation, c'est de permettre aux programmes d'utiliser ces trucs, ... le boulot des programmes, c'est de commander l'utilisation de ces trucs si nécessaire.
milord, le 07/08/2012 - 15:31

Yup. Par contre, un PC avec cette configuration vaut juste 100.000 fois moins que le joujou de la NASA.

C'est sûr, et le transport est plus rapide. Mais je ne vois pas le rapport entre le prix du matériel et la capacité de programmer correctement une machine.
C'est quoi performant ? C'est un truc qui tourne bien sur les machines qu'on faisait il y a 30 ans, ou qui tourne bien sur une machine actuelle ?
Pourquoi pas ? Si ça tourne bien sur un machine d'hier, ça doit tourner encore mieux sur une machine d'aujourd'hui, et pas moins bien. Ce n'est pas parce que ta machine a 4 cores à 3 GHz que chaque programme que tu fais, doit utiliser 100% de la machine. Si tu prend l'exemple de @tass, lire un MP3, ça demande pas des GHz à la pelle, ni des tonnes de mémoire, mais tu peux programmer comme un porc et faire en sorte de les utiliser.
Comment on peut comparer de l'embarqué du niveau des appareils de la NASA avec un PC Oo.
If ... then ... else ...
Je ne vois pas la différence entre programmer une cafetière et un serveur. Une CPU, c'est très con, ça sait juste lire ou écrire en mémoire, tester des conditions, effectuer des opérations simples, gérer des piles et faire des sauts d'instructions ; et un ordinateur, c'est juste du courant qui passe ou non par des portes.


Tu excusera les pauvres programmeurs de ne pas écrire leurs programmes au compas sur leur disque dur et de ne pas développer en binaire ou avec des cartes à trou pour le plaisir que tu retire a exécuter un calculatrice ultra performance sur un ordinateur qui utilisera 0,05% de ses capacités au lieu de 0,25%.
Tu a pas 36 choix, soit tu développe pour une boite qui t'impose généralement des délais serrés. Soit tu développe pour toi et tu fait ce que tu veux (y compris développer un logiciel en assembleur pour le plaisir de l'optimiser). Soit tu développe pour tes utilisateurs qui seront pas intéressés par le pacman que tu a mis 10 ans a développer pour concurrencer le nouveau Call Of Duty: The Return of the CyberModern Warfare 12 qui fait chauffer les ventilos et qui prends 5 minutes à se lancer...
Inscrit le 21/04/2011
2 messages publiés
Moi je suis perplexe pour une autre raison... ils sont inquiets de faire une mise à jour à 150 millions de kilomètres alors que nous ne captons même pas le réseau edge ou 3G à 5km de l'antenne relais ...
Inscrit le 03/10/2011
3125 messages publiés
Ce n'est pas de la complexité des programmes dont je parle, c'est du choix des librairies (est-ce que tu as besoin de MySQL ou d'un parseur XML pour stocker une dizaine de données ?), des interfaces graphiques (est-ce que tu as réellement besoin d'afficher ta fenêtre dans un espace en 3D avec une opacité variable ?)
et de la façon de programmer (si tu veux utiliser une jauge pour présenter l'état d'avancement d'un processus long, t'es pas obligé de la mettre à jour à chaque itération de ta boucle, tu peux simplement regarder si ton pourcentage a suffisamment avancé pour qu'un update de ta jauge soit nécessaire. Ce simple if (ancien nouveau) ne fait pas une différence de 0.005% mais plutôt de 50%, et c'est encore mieux, si quand la fenêtre est réduite, tu ne fais pas la mise à jour du tout), et virez moi ce .NET de merde (function quiFaitToutPlusLentementQueLesAutres_EtQuiEstBuguee()).
On est jamais obligé de repartir de zéro, surtout avec toutes les librairies qui existent en ligne, mais on peut choisir la bonne et pas juste la quejeconnais.lib.
Inscrit le 17/03/2006
653 messages publiés
Centaurien, le 07/08/2012 - 12:29

Sinon, effectivement, y en a qui ont fait tourner Linux sur un machine des années 80 et ça fonctionnait, mais il me semble que c'était de l'ordre de 6h pour démarrer, pas sûr que le petit robot ait le temps d'éviter le rocher qui est à 2 mètres devant lui.

Pour info, linux à la base ça peut tourner sur un 8086 et ca peut tenir sur une disquette... évidement on parle pas d'Ubuntu, là !

Sinon j'espère que la sonde tourne pas sou windows sinon ils sont pas dans le caca !
Inscrit le 21/01/2009
4464 messages publiés
Centaurien, le 07/08/2012 - 19:30

Un ordinateur, c'est un ordinateur, on s'en fout de quoi il est capable, si tu lui demandes d'afficher une photo, et qu'il n'a pas de carte graphique, au pire, ça plantera, mais logiquement tu n'as pas besoin d'afficher de photo.

C'est pas là le problème. Le problème c'est qu'un PC peut éventuellement servir à faire tout un tas de choses bien différentes, alors que ton robot il est entièrement dévoué à une seule chose : la mission pour laquelle on l'a envoyé.
Donc toute sa conception, matérielle et logicielle, a été réalisée de manière à servir cette mission et SEULEMENT cette mission.
Il n'a donc que des composants (matériels et logiciels) nécessaires à sa mission alors que ton PC aura tout un tas de composants génériques pour pouvoir fonctionner pour des utilisations possiblement très différentes.

Je suis sûr que dans le kernel par exemple seuls les modules strictement nécessaires ont été installés, compilés et chargés. Ce qui demande donc évidemment bien moins de puissance pour faire tourner tout cela. C'est de la logique pure : le spécifique (ie qui ne sert qu'à un seul type d'utilisation) est toujours moins gourmand que le générique.

Centaurien, le 07/08/2012 - 19:30

Tu dois utiliser tous les jours des sites en PHP, MySQL, et il n'y a pas une instruction pour afficher un truc dedans.

J'en programme même, mais quand je browse un site en PHP j'ai Xorg lancé, possiblement un mp3 qui tourne en fond, ou alors une vidéo HD sur l'autre écran, possiblement un code entrain de compiler dans un coin, une conversation skype... tout un tas d'autres instructions en même temps.

Centaurien, le 07/08/2012 - 19:30
Bien sûr que non, c'est un robot semi-autonome, il doit analyser sa vue, ses capteurs, se déplacer, réagir et travailler (c'est pas Paulo à la NASA qui tient une télécommande susceptible de réagir entre 3 et 20 minutes après avoir reçu les informations, en supposant que Mars ne soit pas en opposition).

Mais ton robot il ne saura pas par exemple rouler sur terre, cueillir une fleur, ou serrer la main. Il est SPEFICIQUE, je pense que t'as du mal à comprendre : quand une machine n'est programmé que pour UN SEUL usage déterminé on peut automatiser une grande partie de sa conception, alors que si ta machine est faite pour possiblement avoir des usages très différent il faut tout prévoir, et ça c'est mauvais pour les performances.
Centaurien, le 07/08/2012 - 19:30

Et
ton PC, il n'est pas capable d'avancer tout seul.
Mon PC, il ne sait pas lire du MP3, si je n'ai pas de programme pour décoder un fichier MP3 et l'envoyer vers ma carte son, ce n'est pas l'ordinateur qui sait faire des trucs, ce sont les programmes. L'ordi, il sait juste qu'il a de la mémoire, un disque, une CPU, une carte graphique, ... le boulot du système d'exploitation, c'est de permettre aux programmes d'utiliser ces trucs, ... le boulot des programmes, c'est de commander l'utilisation de ces trucs si nécessaire.

Mais mon PC a été fabriqué et son OS installé de manière à ce qu'il puisse lire un mp3, compiler du code, et même commander à distance un robot comme celui de la NASA.
Alors que ton robot a été fabriqué et son OS installé de manière à ce qu'il puisse ne faire QUE sa mission.

Je me répète mais bon t'as toujours pas l'air de comprendre la différence entre spécifique et généraliste.
Inscrit le 08/08/2012
1295 messages publiés
Personne sur Mars, mais on a déjà installé le wifi !
Univers de geeks !
Inscrit le 14/07/2004
6870 messages publiés
Samuel_Vimaire, le 08/08/2012 - 09:45
Personne sur Mars, mais on a déjà installé le wifi !
Univers de geeks !

Pour faire une Lan entre les deux planètes, il va falloir améliorer le ping, parce que là
Inscrit le 08/08/2012
1295 messages publiés
On peut à la limite faire des jeux en playbymail comme Civ 2 !
[message édité par Samuel_Vimaire le 08/08/2012 à 09:56 ]
Inscrit le 04/10/2010
24 messages publiés
En même temps au moins il est puissant, au moins il consomme d'énergie. A mon avis, ça peut que être bénéfique.
Inscrit le 28/11/2008
7 messages publiés
de benco67...validés ...testés...il faut des années pour concevoir ce genre de mission et le choix des composants est fixé tôt puis tout est validé et testé longtemps...

...ne pouvons nous pas craindre le pireâ??
â? je ne suis pas le seul à posséder un "machin" qui a été... élaboré... validé et â?testé...pendant des annéesâ?â?â?

Récapitulons, ils validentâ? puis testent sur le client, pardon le cochon payeurâ?â?â?.

Maintenant je comprendsâ?de mieux en mieuxâ?les déboires des possesseurs de véhicules HDI 2L et d'autres où l'électroniqueâ?nique toutes les validations, le compte en banque, la patience, les nerfs du possesseur et ceux du mécano qui avec la fameuse "valise" en main se doit de réparer les sautes d'humeur d'une électronique durementâ? validée

J'espère que l'électroniqueâ?niqueâ?nique de Rover Curiosity à l'inverse des HDIâ?sera en phase avec la "valise" validée des ingénieurs validés de la NASAâ?

Une pensée aux malheureux électro-niqués

Jean-Luc LUMEN
Inscrit le 03/10/2011
3125 messages publiés
tass_, le 08/08/2012 - 09:27

Je me répète mais bon t'as toujours pas l'air de comprendre la différence entre spécifique et généraliste.

Si, je comprend. Je comprend que pour toi, sur une machine spécifique, on doit programmer correctement, et que sur une machine générique, on peut programmer comme un porc.
Mon boulot, c'est le debug et l'optimisation, et quand je permet à un processus de gagner 1 milliseconde, le client est vachement content parce que ce processus tourne environ 1 millions de fois par jour et que ce quart d'heure gagné ici, permet de faire des choses en plus.
Gagner en performance, c'est souvent une remise en question des choses qu'on apprend couramment aujourd'hui dans les écoles.
- En programmation objet, par exemple, classiquement, on spécifie que les attributs d'une classe devraient être privé, et qu'on doit programmer des méthodes pour accéder ou modifier ces attributs. Sauf que, si tu as déjà regardé le code assembleur d'un programme, tu as dû voir l'énorme différence qu'il y a entre obj.valeur et obj.get_valeur(), on est proche du facteur 100 en temps machine, multiplié par le nombre de variables, d'objets et d'attributs, on atteint des temps cosmiques perdus sur toutes les machines de la planète (et donc des ressources) pour un principe qui est en fait lié à l'héritage d'objet dans des librairies. Alors, à partir du moment où un objet est destiné à un truc spécifique et non à faire parti d'une librairie qui pourrait le voir évoluer, toutes ces méthodes qui ne servent à rien sont à virer.
- Sur les bases de données, combien de fois je vois des tables avec des clés BigInt autoincrement et des colonnes qui sont quasiment toutes des colonnes à taille variable. Je ne sais pas qui à déterminer qu'une colonne qui pouvait prendre la valeur oui/non devait être stocké dans un type text, ou d'avoir une clé bigint qu'on utilise jamais. Je ne sais pas, c'est du BA.B.A. de savoir qu'un SQL traite beaucoup plus lentement les colonnes variables que fixe, qu'il existe des types ENUM ou SET ; qu'avoir une clé qu'on utilise pas, c'est juste débile. L'autre jour je suis encore tombé sur un projet opensource avec une table des pays ISO-3166-1 dont la clé était un BIGINT, et le code ISO-3166-1 alpha 3 était dans une colonne de type TEXT, le projet n'utilise que le code alpha-3 dans les
where et jamais la clé, et le code alpha-3 n'est même pas dans un index qui pourrait, entre autre, permettre l'unicité, quand je vois des trucs comme ça, ça me colle de l'urticaire de même que des select * pour utiliser que 2 colonnes sur les 50 qui sont envoyées. Evidemment, pour stocker 50 occurrences, ça ne change pas grand chose, mais quand on travaille sur des environnement avec plus de 2000 tables dont certaines contiennent près de 6 milliards d'occurrences, rien que de mettre un entier dans une colonne Numeric, c'est débile. Maintenant, pour stocker 50 occurrences, il y a d'autres systèmes plus adaptés qu'un SGDR.
- Sur l'usage de librairie, il y a essentiellement 2 questions à se poser quand on utilise un objet ou une fonction particulière, c'est, "si je devais coder moi-même cette fonction, qu'est-ce qu'il faudrait que je fasse pour que ça marche", et "n'y a t-il pas une autre fonction plus simple qui pourrait faire la même chose". ça permet d'éviter d'utiliser un truc lourd, pour faire ce qu'on veut quand même. Pourquoi utiliser un objet capable d'afficher toutes les formes possibles alors qu'on ne veut afficher que des cercles ? Que faut-il faire pour mettre à jour un fichier XML ? Il y a la part des choses à faire avant d'utiliser une librairie, un type de fichier, de données, même si les librairies actuelles sont super faciles à utiliser, l'usage de cette librairie n'est peut-être pas adaptée au projet en cours (ou comment planter un ordinateur avec un fichier XML de 2Go).
- Réutiliser un truc qui a été réalisé spécifiquement pour quelque chose de différent, n'est pas forcément ce qu'il y a de mieux. Si des mecs ont fait de l'algorithmique pour traiter tel cas, utiliser cet algo pour un autre cas, peut conduire à des performances catastrophiques. C'est typiquement un genre de cas qu'il m'est arrivé de rencontrer parce qu'un mec avait repris mon algo de Hash pour gérer sa table, sauf que mon algo, je l'avais testé pour avoir le minimum de collision sur les clés de la table en question, et que pour sa table, c'est un peu comme si il n'y avait que 2 valeurs de hash pour un millier de postes.
Donc, ouais, sur ta petite machine, tu t'en fous de perde 1 seconde quand tu utilises la fonction bidule du programme machin, mais multipliée par toutes les fonctions qui te font perdre du temps, et par toutes les personnes qui les utilisent aussi, ça en fait de l'électricité perdue, sans compter qu'à chaque changement de version, t'as juste l'impression qu'il faut que tu changes ton proc. Personnellement, je ne vois pas de fonction utile en plus entre word 2010 et word 97 ( pour moi ! je ne fais pas de secrétariat toutes la journée, non plus), par contre, je vois bien qu'il est beaucoup plus lent, quel est donc l'intérêt pour moi d'acheter la nouvelle version ? parce qu'il est plus beau ? qu'est-ce que j'en ai à foutre.
Envoyer

Tous les champs doivent être remplis.

Tous les champs doivent être remplis.

Tous les champs doivent être remplis.

Télécharger
Delete Doctor
Nettoyeurs - Supprimer les fichiers résistants
 
iPod Access
Encoder ou convertir - Récupérer les fichiers d'un iPod
 
OrangeCD Player
Lecteur audio et vidéo - Lecteur CD avec base de données
 
Weezo
P2P Privé (entre amis) - Partager vos fichiers personnels
 
Glaxium
Jeu d'action - shoot'em-up spatial
 
Août 2012
 
Lu Ma Me Je Ve Sa Di
30 31 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2
3 4 5 6 7 8 9
Matoumba
EntrepreNantes
Numerama est un site du réseau PressTIC