Myriad Blog 1.3.0 Friday, Dec 19th, 2014 at 11:09am 

Friday, Nov 27th, 2009 at 04:56pm
Linux natif ? (partie 1)

 
Le passage de Mac OS X en 64 bits a des conséquences inattendues, comme une ligne de dominos qui tombe.
 
Safari, sur Snow Leopard, est compilé en 64 bits. Il ne permet donc plus de faire tourner les plug-ins compilés en 32 bits (je pense que les programmeurs d'Apple ne se sont pas non plus trop foulés sur le coup).
 
Nous allons donc devoir recompiler le Myriad plug-in en 64 bits, ce qui serait simple si Apple avait bien voulu porter la librairie de compatibilité Mac OS 9, appelée "Carbon", en 64 bits.  
 
Sans cette librairie, impossible d'utiliser directement les fonctions système Mac dont nous avons assuré la compatibilité avec la version PC depuis 15 ans. Il faudrait donc, pour pouvoir utiliser nos fichiers "source" compatibles PC/Mac sur le Mac, se réécrire une librairie qui servirait de couche d'interface avec le système (elle est appelée ACAM sur Windows).
 
Donc nous nous sommes dit: si nous devons écrire une librairie sur les deux systèmes, donc si nos fichiers "source" ne peuvent être écrit nativement pour utiliser ni le système Mac OS, ni Windows, pourquoi alors ne pas écrire notre système propriétaire?
 
Voila comment cela fonctionnerait: nos programmes utiliseraient un jeu de fonctions, identique sur Mac et sur PC, mais n'étant ni les fonctions système Mac, ni PC.  
 
Pour porter nos programmes sur une plateforme (Mac OS, Windows, Linux, Chrome OS ou n'importe quoi d'autre), il nous suffirait d'écrire la "petite" couche qui traduit ce jeu de fonctions en fonctions système natives.
Mettre au point cette couche, depuis ses caractéristiques sur papier jusqu'au code, représenterait un gros travail, certainement plusieurs mois, mais nous assurerait un système de travail pérenne pour au moins la prochaine décennie.
 
On en vient donc à Linux. Nos applications deviendraient ainsi encore plus portables. Envisager un portage sur un nouveau système reviendrait à ne réécrire que le goulot d'étranglement (bottleneck) logiciel de liaison avec les fonctions système, la totalité des fichiers source de l'application elle-même restant strictement inchangés.
C'était déjà à peu près le cas avec ACAM, développé pour Windows uniquement. Mais petit à petit, au fil des améliorations, ACAM et Windows se sont imbriqués. Le réécrire pour un autre système deviendrait un casse-tête. La mise à plat générale du projet, et le nouveau départ sur des bases plus solides, permettrait de clarifier la tâche.
 
Nous avons donc -re-commencé à évaluer le développement sur Linux, en installant quelques outils et en procédant à quelques tests.
 
Ceux-ci ne sont pas encore terminés à l'heure où j'écris, donc nous partagerons nos impressions dans un prochain billet.  
 
Bon week-end à tous !
by Olivier Guillion
Comments

Comment from Nicou59 Monday, Nov 30th, 2009 at 04:28pm
Impatient et plein d'espoir
J'applaudis à tout rompre cette excellente nouvelle. Vive Linux et HA !


Most recent first
Oldest first

Top of page
Last update:  (c) Myriad