L'unique but, c'est le compatibilité, pour ne pas avoir à changer le software.
A ma connaissance, c'est IBM qui a commencé à faire des gammes de produits compatibles entre eux (genre à la préhistoire de l'informatique, si j'avais une appli pour une machine, écrite bien sur en assembleur, je veux développer mon activité, je suis obligé de changer de machine, manque de bol, pour la machine "haut de gamme", il faut tout recoder dans le nouveau jeu d'instruction).
Donc certe, ca fonctionne bien. Pour le client, c'est vraiment cool, pour le constructeur, c'est chiant, mais il fidélise le client à son architecture.
Donc, ca fonctionne, ca fonctionne même bien.
Seulement, on se rend compte que si on avait pris la décision de casser cette compatibilité (pas toutes les 5 minutes non plus hein). On aurait pu faire mieux, plus efficace, intégrer les nouveautés du moment, dédier des transistors à autre choses que la compatibilité. Et on se serait pas trainé des trucs des années 70 aussi longtemps.
Voir par exemple l'adressage mémoire sur http://fr.wikipedia.org/wiki/X86
En continuant longtemps comme ca, tu as des processeurs qui doivent avoir 40 comportements différents en même temps sans broncher (suivant si le mode protégé a été inventé avant ou après, que le code est 32 ou 64 bits ...).
Dés que tu veux "innover", tu a une problématique en plus :"faire du compatible", ce qui est forcément un frein. Donc on monte en fréquence, sans rien changer, on monte encore ...
Actuellement, avec les langages de haut niveau, pour passer d'une plateforme à une autre, changer le compilateur devrait suffir (à part si tu ne disposes pas du code source, que tu as des composants tiers ... ou que tu as une problématique d'optimisation du code) en grande partie. On a aussi inventé Java entre temps. Une machine virtuelle minimise le code à porter.
Les problèmes sont maintenant minime si l'on ne change pas de plateforme trop souvent, que l'on s'accorde toujours un minimum avant de changer (pour ne pas avoir 15 plateformes nouvelle tout les ans - ce qui ne risque pas d'arriver vu le nombre de constructeurs actuels) et que tout le monde suit (constructeur + éditeur logiciels) comme pour les Mac x86.
[^] # Re: C'est triste.
Posté par JereMe . En réponse au journal Au revoir PowerPC. Évalué à 8.
A ma connaissance, c'est IBM qui a commencé à faire des gammes de produits compatibles entre eux (genre à la préhistoire de l'informatique, si j'avais une appli pour une machine, écrite bien sur en assembleur, je veux développer mon activité, je suis obligé de changer de machine, manque de bol, pour la machine "haut de gamme", il faut tout recoder dans le nouveau jeu d'instruction).
Donc certe, ca fonctionne bien. Pour le client, c'est vraiment cool, pour le constructeur, c'est chiant, mais il fidélise le client à son architecture.
Donc, ca fonctionne, ca fonctionne même bien.
Seulement, on se rend compte que si on avait pris la décision de casser cette compatibilité (pas toutes les 5 minutes non plus hein). On aurait pu faire mieux, plus efficace, intégrer les nouveautés du moment, dédier des transistors à autre choses que la compatibilité. Et on se serait pas trainé des trucs des années 70 aussi longtemps.
Voir par exemple l'adressage mémoire sur http://fr.wikipedia.org/wiki/X86
En continuant longtemps comme ca, tu as des processeurs qui doivent avoir 40 comportements différents en même temps sans broncher (suivant si le mode protégé a été inventé avant ou après, que le code est 32 ou 64 bits ...).
Dés que tu veux "innover", tu a une problématique en plus :"faire du compatible", ce qui est forcément un frein. Donc on monte en fréquence, sans rien changer, on monte encore ...
Actuellement, avec les langages de haut niveau, pour passer d'une plateforme à une autre, changer le compilateur devrait suffir (à part si tu ne disposes pas du code source, que tu as des composants tiers ... ou que tu as une problématique d'optimisation du code) en grande partie. On a aussi inventé Java entre temps. Une machine virtuelle minimise le code à porter.
Les problèmes sont maintenant minime si l'on ne change pas de plateforme trop souvent, que l'on s'accorde toujours un minimum avant de changer (pour ne pas avoir 15 plateformes nouvelle tout les ans - ce qui ne risque pas d'arriver vu le nombre de constructeurs actuels) et que tout le monde suit (constructeur + éditeur logiciels) comme pour les Mac x86.