Apple addict (3)
Par RCerise le dimanche, avril 9 2006, 03:53 - Egosphérique - Lien permanent
Mac OSX est en fait basé sur le système d'exploitation de NeXt, entreprise créée par Steve Jobs après son éviction d'Apple. De ce que je sais, c'est un système hybride, à mis chemin entre le système à micro noyau GNU Hurd (qui ne marche pas vraiment) et les systèmes monolithiques type Windows ou Linux. C'est cette filiation qui a permit à Apple de faire sa transition du powerPC à Intel X86 si rapidement: NeXt était un OS fonctionnant sur X86, qui a été adapté pour les PowerPC d'Apple. Et, par sécurité, Steve Jobs a demandé que chacune des versions de mac OSX existe pour powerPC et X86. C'est son fameux "just in case".
Bien entendu, l'OS NeXt n'était pas seul: il comportait des programmes, et un environnement de développement de programme. Surtout, il comportait ce que NeXt appelait la Yellow Box. Il s'agissait d'un environnement permettant de développer des logiciels, de telle sorte qu'ils fonctionnent nativement sur NeXt ou windows. Jusqu'aux pré-versions de mac OSX (nommées Rhapsody), cette Yellow Box a existé et fonctionné. Elle a ensuite disparu de la circulation et Apple n'a pas donné de nouvelles. A la place est apparue Xcode et son environnement de développement, Cocoa, pour mac OSX. Pendant plusieurs années, Apple à poussé son XCode, incitant les développeurs à abandonner les anciens outils hérités de mac OS9 (et notamment code warrior). Aujourd'hui, tous les logiciels pour mac OSX en universal binary, c'est a dire fonctionnant aussi bien sur powerPC que sur Intel, sont des logiciels XCode issus de cocoa.
Avec XCode, Apple propose donc de créer des logiciels indépendants du processeur.
Une fois la barrière de la différence de processeur tombée, il ne reste plus que la barrière du système d'exploitation. Hors, en 2000, Apple savait comment la franchir, et comment la faire franchir à tous les programmeurs utilisant son environnement.
A présent, imaginons: Sachant que Jobs a cru sage de dépenser de l'argent pour maintenir son OS aussi bien sur powerPC que sur Intel, ne paraitrait-il pas logique qu'il ait aussi veillé à faire en sorte que cette fameuse Yellow Box, continue de fonctionner, au moins sur la version intel? Il garde ainsi sous le coude une arme intéressante: la possibilité de faire fonctionner les logiciels mac OSX sur windows, sans perte de performance. Maintenant qu'il utilise les mêmes processeurs que Windows, il est sous la menace de voir apparaître des solutions permettant de faire fonctionner les logiciels windows sur mac. Pourquoi ne prendrait il pas de l'avance, en proposant l'inverse: utilisez mon système, et vos créations fonctionneront partout. Même sur windows.
Depuis l'annonce du passage à Intel, Apple pousse les feux de la transition. La transition matérielle sera complète avant 2007, avec 1 an d'avance. Les versions de Mac OS 10.4 tiger se succèdent à une cadence effréné. Au rythme actuel, Apple proposera une nouvelle version majeure, la 10.5 Leopard, fin 2006, début 2007. En parfait synchronisme avec microsoft, qui présentera windows Vista. Comme par hasard. Et comme par hasard, Apple a retardé son congrès annuel des dévelopeurs, la WWDC 2006, l'organisant en Août, et non en Juin, comme les années précédentes. Apple aurait elle des surprises à leur annoncer? En 2005, Jobs leur annonçait que leurs logiciels allaient maintenant tourner sur Intel. En 2006, va il leur annoncer que leurs logiciels tourneront désormais "aussi" sur windows?
Commentaires
Petite correction : dans le monde des noyaux, nous avons les monolithiques (Linux, FreeBSD, NTOS Kernel...), les micro kernels (Mach, BeOS Kernel, HURD...), et les autres (XNU, autres ?). HURD est un microkernel, mais il n'est pas à la base de XNU, c'est Mach qui a été utilisé.
Pour Yellowbox, une chose est sûre, Apple est capable avec QuickTime et iTunes de développer de front des versions Mac et PC d'un même logiciel, avec très peu de temps entre les releases pour les deux OS. Ont-ils encore un équivalent de la YellowBox sous la main, ou est-ce que le processus est plus manuel ?
t'as fini de me narguer oui???
Damien>> Merci de la précision! :fleur:
Lo>> www.apple.com/fr/imac/ :blehe:
Bon bah Damien a fait le principal du travail de correction.
Juste rajouter que les microkernels sont de type Minix (les autres viennent après), et d'ailleurs citer le Hurd est plutôt drôle (parce que pour l'instant, il faut faire un package avec tous les modules, donc statique ^^) ; ensuite, Linux est tout de même modulaire, ne l'oublions pas, on peut fort bien rajouter un module sans tout recompiler, et modprobe/rmmod sont nos amis.
Ensuite, "binaire indépendant de la famille de CPU", ça n'existe pas (par définition, d'ailleurs, et même de i686 vers i386, c'est mort, il manque des registres) ; les solutions de type .Net ou Java (idée issue de la machine virtuelle SmallTalk par Xérox fin des années 70...) fonctionnent sur le principe d'un arbre préfabriqué et stocké en "binaire" (ou plutôt, non ascii, bref pas exécutable du tout en l'état). Sinon, il faut recompiler le code source, et si l'on suit les spécifications POSIX (ce qui ne me semble pas être le cas de Mac OS, à peu de choses près, certes), ça se fait les doigts dans le nez.
Je rappelle donc au passage que Linux tourne sur absolument tous les CPU au moins 32 bits du monde ; ça en fait plus de 70 (beaucoup moins en comptant les grandes familles, évidemment, mais après il faut optimiser), ce qui rend la migration de Mac OS de PPC vers x86, comment dire... ridicule :D
Huhu! Je savais que Palpatine allait prendre part à cette conversation! :fleur:
Bon, bien sur, je n'ai pas pigé grand chose à son propos (j'ai sorti à peu près toute ma science pour faire ces 2 billets), mais les lecteurs plus compétents seront surement enchantés de ses précisions! Je savais aussi qu'il allait nous faire un ch'tit paragraphe sur vive linux! :pom:
Mode troll: ON
Linux c'est nul c'est pas ergonomique!! :beuark:
Mode troll: OFF
(je suis content, ca fait longtemps que je voulais le caser, ce smiley)
hé hé ^^. Je sais, je sais, en plus ça tombait pile poil bien, je viens de rattraper le retard de lecture de la semaine, donc je pouvais commenter :p. Sinon, pour l'ergonomie, dès que tu es de retour en France, je te montrerai une p'tite SuSE
(et avec un peu de chance, y'aura la 10.1 avec du Xgl, sait-on jamais
). Wait and See ! :fleur: (je précise que ce que j'ai dit peut en grande partie s'appliquer aux *BSD, d'ailleurs, et surtout NetBSD pour la portabilité ; mais à part Linux et Solaris, c'est pas préemptif tout ça, et les différence d'ordononçabilité, de gestion mémoire, et de FS font largement le reste de la différence :D )
Pourquoi je n'y comprends rien? Serait-ce du chinois? :ù!$`:
Palpatine>> C'est pas préemptif, macOS X? Xgl, c'est le truc ou j'ai vu la video de Novel? le truc qui permet de faire comme exposé? Bon, alors, OK, c'est pas mal. C'est un peu comme le corevideo d'OSX, mais c'est bien... :party:
Guillaume>> Promis, bientôt, je reprend des posts moins geek, comme ca, on comprendra mieux!
Non, MacOS X n'est absolument pas préemptif au sein de son kernel, juste dans son ordonnonceur de tâches (comme quasiment tout le monde, en fait). Pour être totalement préemptif, il faut soit le faire depuis le tout début du codage (c'est le cas des OS temps réel, mais faut voir le peu de choses que ça fait...), soit réécrire une bonne partie du code et rajouter des points de préemptivité, c'est ce qui est fait sous Solaris et Linux 2.6 ; d'où le temps énorme écoulé entre la branche 2.4 et la 2.6 d'ailleurs. Niveau perf (vitesse, stabilité et solidité), ça n'a ensuite strictement rien à voir. C'est pour ça que *BSD se fait laminer dans l'embarqué, alors même que sa licence serait plus propice à l'industrie.
Pour Xgl, c'est en effet le truc avec 20 millions d'effets (pas que exposé-like, loin s'en faut) ; couplés à compiz, (mais aussi bientôt fusionné à la solution Agl de Fedora), je pense que le Mac sera envoyé aux oubliettes, parce que c'est quelque chose de modulaire (2.7 mo de package) qui s'ajoute à X11 (Quartz est à 20 millions d'année lumière de ce que sait faire X, même si peu de personnes savent utiliser autant de puissance), et que pour ce que j'en ai vu, ça fait un poil plus de choses (mais à ce niveau-là, il me faut l'avis d'un expert Mac, j'avoue ; ais pour avoir tâté du mac de temps à autre, y'avait pas autant). Dans tous les cas, ça marche sur des config ridiculement petites (même avec le chipset graphique embarqué intel), nul besoin de se cantonner à un matériel très spécifique... :D
D'acc avec Guillaume c'est l'arrivée du printemps en Chine qui t'agite les neurones au lieu ou en plus ???de la testérone :p
Alain>> Non, non, en fait c'est juste que je suis comme ca. Sauf que sur le blog, je le montre rarement, que je suis toujours plus ou moins à la recherche d'information. Je suis un boulimique de l'information, surtout lorsqu'elle a trait à la technologie, un fan d'histoire (pour remettre dans le contexte) et j'adore connaitre au moins les principes généraux des choses, de toutes les choes. Si Cossaw n'avait pas adopté la formule, je me l'occtroierai bien: Spécialiste en rien.
Nan mais c'est pas que je veux insister mais c'est quoi un mac?
Kitt>> Le supplice de la roue!! Ecartellez le!! :slurp:
Sinon pour ta question initiale, la Boule de Feu qui Ose a répondu : daringfireball.net/2006/0... . Pour résumer, selon lui la YellowBox ne ressortira pas, parce que ça n'aidera pas Apple à vendre du matériel, ie à faire de la marge.