Il y a quelques mois, l'information selon laquelle les nouveaux ordinateurs Apple basés sur des processeurs Intel pourraient fonctionner sous Windows a été confirmée. Or c'est bien mardi que les premiers ordinateurs « MacIntel », à savoir les
iMac et les
MacBook Pro ont été dévoilés.
Ces nouvelles machines sont livrées avec une nouvelle forme de BIOS, les nouveaux EFI (pour Extensible Firmware Interface - voir
notre brève à ce sujet). Malheureusement, Windows XP ne gère pas cette évolution du BIOS, pour le moment, chez Microsoft, seul Windows Vista est prévu pour supporter les BIOS EFI. Cette information a été confirmée par Phil Schiller (le « Senior vice president monde » chez Apple) lors d'une interview :
« Nous ne vendrons pas et nous ne proposeront pas de support technique pour Windows. Mais nous n'avons pas l'intention de bloquer le chargement de Windows sur nos machines [...] Nous sommes satisfait de cela. Si des utilisateurs adorent nos machines, mais qu'ils ont vraiment besoin du monde Windows alors ils seront heureux de profiter de cette possibilité. Ca ne nous pose pas de problème ».
Il faudra donc attendre Windows Vista (prévu pour cette année) pour réussir à faire fonctionner un MacIntel sous Windows, à moins que Microsoft propose rapidement une mise à jour pour Windows XP. Chose peu probable dans la mesure où pour l'instant aucun PC n'utilise l'EFI (ce qui est logique puisque la plupart des fabricants ont prévu d'attendre la sortie de Vista pour basculer progressivement vers ce BIOS remis au goût du jour). A noter que l'installation des prochaines versions de Linux devraient également prendre en charge les nouveaux « MacIntel ». A terme on peut très bien imaginer l'arrivée d'ordinateurs « MacIntel » chez les particuliers composés d'un « tri-boot » : Mac OS, Windows et Linux. Quant à la possibilité de faire fonctionner Mac OS sur un PC, Apple continue de s'y opposer, même si quelques bidouilleurs en herbe ont déjà commencé à plancher sur le projet... Qu'on se le dise, le bras de fer à ce propos, ne fait que commencer !
Godzil
: Non actuellement c'est PPC32+PPC64+x86 ^^ (du moins pour les appli qui on vraiment besoin du PPC64 ^^
et sinon (bis) heureusment qu'il utilisent EFI plutot qu'un bios classique sinon le passage OpenFirmware -> BIOS aurait été un grand (vraiment tres grand) retour en arriere (l'OF est capable de faire tout ce que fait EFI, l'interface graphique en moins et encore) (d'ailleurs ne me demande a quoi ressemble EFI...)
Pollux
:Godzil
: Non actuellement c'est PPC32+PPC64+x86 ^^ (du moins pour les appli qui on vraiment besoin du PPC64 ^^
Donc c'est ce que je disais, ils vont devoir faire une nouvelle transition pour x86-64 ^^
et sinon (bis) heureusment qu'il utilisent EFI plutot qu'un bios classique sinon le passage OpenFirmware -> BIOS aurait été un grand (vraiment tres grand) retour en arriere (l'OF est capable de faire tout ce que fait EFI, l'interface graphique en moins et encore) (d'ailleurs ne me demande a quoi ressemble EFI...)
Et c'est quoi les fameux avantages d'OpenFirmware ?
EFI est une couche supplémentaire ajoutée par dessus le BIOS ou le firmware du matériel. Il se présente sous forme de couche d'abstraction pour l'OS. Ce dernier n'est pas obligé de l'utiliser pour accéder au matériel mais peut directement faire appel au BIOS/firmware. Grâce à EFI, les BIOS peuvent être réduits au minimum. Sa conception est modulaire et extensible. Il est écrit en langage C. Il est donc facile à maintenir et les fabricants peuvent l'enrichir à volonté par des modules tout en respectant des spécifications claires disponibles sur le site d'Intel. Ses caractéristiques sont assez proches de ce qu'offre OpenFirmware, bien qu'il soit beaucoup plus complet. Il se présente d'ailleurs de la même manière : sous la forme d'un shell.
Pour booter Windows XP et antérieur sur plateforme IA32, un BIOS est nécessaire. Or il est probable qu'Apple n'ait pas considéré utile d'en fournir un compatible avec son matériel. Il faudra donc que Microsoft en distribue un. Celui-ci pourrait soit remplacer celui d'Apple (très peu probable) soit être directement exécuté par EFI.
Les fonctionnalités offertes par EFI sont nombreuses. Il y a tout d'abord l'initialisation des chipsets, des bus, ... qui est en général effectuée en début de séquence de boot. Comme OpenFirmware, EFI permet de localiser les bootloaders et de les exécuter en leur offrant des primitives. Mais il offre en plus des routines à l'OS pour accéder au matériel. Il peut même gérer le gestionnaire mémoire et le réseau.
Puisqu'EFI est une couche d'abstraction, les drivers au niveau de l'OS seront plus facilement écrits et en particulier pour nous sur Mac ! En effet, un driver devra être écrit au niveau d'EFI lui-même. Celui-ci pourra être utilisé aussi bien sur Linux que sur Mac ou Windows. Il offrira à l'OS et à ses drivers une interface qui permettra d'"utiliser" le matériel. C'est un véritable progrès pour les développeurs et ce sera un grand avantage pour nous, car une fois le matériel compatible EFI, le développement de drivers pour MacOSX devrait être rapide.
Comme OpenFirmware, il est possible d'accéder au réseau sans exécuter un OS. Il sera donc possible d'updater les différents éléments sans passer par un autre système. EFI répond en outre à un trou de sécurité présent lors du boot sur un disque réseau. Avec un BIOS, seule l'addresse MAC peut être contrôlée lors du boot, or celle-ci est facilement modifiable.
Les potentialités de ce firmware extensible permettent à Apple de faire bien plus que ce qui a pu être créé avec OpenFirmware. Il n'est donc pas surprenant que le mode target, le choix du disque de boot et les autres fonctions d'OpenFirmware aient pu être réimplantés.
Flanker :
pollux > entre avantages de l'open firmware, y avait la possibilité de booter sur un disque firewire, ou de transformer l'ordi en disque firewire externe (très pratique pour récupérer des données quand l'os est mort ^^)
EFI est une couche supplémentaire ajoutée par dessus le BIOS ou le firmware du matériel. Il se présente sous forme de couche d'abstraction pour l'OS. Ce dernier n'est pas obligé de l'utiliser pour accéder au matériel mais peut directement faire appel au BIOS/firmware. Grâce à EFI, les BIOS peuvent être réduits au minimum. Sa conception est modulaire et extensible. Il est écrit en langage C. Il est donc facile à maintenir et les fabricants peuvent l'enrichir à volonté par des modules tout en respectant des spécifications claires disponibles sur le site d'Intel. Ses caractéristiques sont assez proches de ce qu'offre OpenFirmware, bien qu'il soit beaucoup plus complet. Il se présente d'ailleurs de la même manière : sous la forme d'un shell.
Pour booter Windows XP et antérieur sur plateforme IA32, un BIOS est nécessaire. Or il est probable qu'Apple n'ait pas considéré utile d'en fournir un compatible avec son matériel. Il faudra donc que Microsoft en distribue un. Celui-ci pourrait soit remplacer celui d'Apple (très peu probable) soit être directement exécuté par EFI.
Les fonctionnalités offertes par EFI sont nombreuses. Il y a tout d'abord l'initialisation des chipsets, des bus, ... qui est en général effectuée en début de séquence de boot. Comme OpenFirmware, EFI permet de localiser les bootloaders et de les exécuter en leur offrant des primitives. Mais il offre en plus des routines à l'OS pour accéder au matériel. Il peut même gérer le gestionnaire mémoire et le réseau.
Puisqu'EFI est une couche d'abstraction, les drivers au niveau de l'OS seront plus facilement écrits et en particulier pour nous sur Mac ! En effet, un driver devra être écrit au niveau d'EFI lui-même. Celui-ci pourra être utilisé aussi bien sur Linux que sur Mac ou Windows. Il offrira à l'OS et à ses drivers une interface qui permettra d'"utiliser" le matériel. C'est un véritable progrès pour les développeurs et ce sera un grand avantage pour nous, car une fois le matériel compatible EFI, le développement de drivers pour MacOSX devrait être rapide.
Comme OpenFirmware, il est possible d'accéder au réseau sans exécuter un OS. Il sera donc possible d'updater les différents éléments sans passer par un autre système. EFI répond en outre à un trou de sécurité présent lors du boot sur un disque réseau. Avec un BIOS, seule l'addresse MAC peut être contrôlée lors du boot, or celle-ci est facilement modifiable.
Les potentialités de ce firmware extensible permettent à Apple de faire bien plus que ce qui a pu être créé avec OpenFirmware. Il n'est donc pas surprenant que le mode target, le choix du disque de boot et les autres fonctions d'OpenFirmware aient pu être réimplantés.