Obligement - L'Amiga au maximum

Mardi 19 septembre 2017 - 22:48  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Contact

David Brunet

Courriel

 


Point de vue : Porter GNUStep sur Amiga ?
(Article écrit par Georges Tarbouriech et extrait d'Amiga News - octobre 1998)


GNUStep ou Port Ability

Un peu d'histoire

Toute petite, déjà, la micro-informatique rêvait d'applications ou de systèmes qui fonctionneraient sur n'importe quelle machine ou avec n'importe quel processeur. La norme ANSI du langage C est née de cette volonté. La portabilité des programmes en C est réelle, mais elle s'applique uniquement à des programmes simples ne faisant pas appel aux caractéristiques des systèmes. En clair, le source d'un programme bête servant à la numérotation de lignes ou au listage d'un répertoire est parfaitement compilable sur tous les systèmes sans modifier la moindre ligne de code.

Si vous souhaitez aller plus loin, c'est-à-dire, bénéficier des particularités d'un système, la portabilité devient une espèce de casse-tête chinois.

La première réussite dans ce domaine est l'oeuvre du MIT (Massachussets Institute of Technology) par l'intermédiaire de X10. Cet ensemble d'applications client-serveur faisant office d'interface graphique était compilable sur tous les Unix. Cette prouesse était rendue possible par une énorme quantité de très grosses bibliothèques et des "Makefile" gigantesques.

Vous obteniez un paquet complet et colossal en taille, mais utilisable sur des Unix fonctionnant avec des processeurs Motorola, Intel, etc. Inutile de préciser que la compilation pouvait durer un certain temps avec des processeurs dont les MHz se comptaient encore en unités.

Mais n'oublions pas qu'il s'agissait des années 1980, autrement dit un siècle en informatique !

Bien sûr, tout ceci a évolué puisqu'aujourd'hui nous en sommes à X11 Release 6 et quasiment tous les processeurs peuvent en bénéficier.

Vint le début de la révolution

A la fin des années 1980, une machine noire à l'aspect superbe fit son apparition. Elle se nommait Next (eh oui ! Nous y voilà). Elle fonctionnait avec un Unix BSD sur un noyau Mach et elle avait une interface jamais vue. Quel choc en découvrant l'écran, et pour cause : l'affichage, c'était DisplayPostScript.

Mais ce système possédait quelque chose en plus : InterfaceBuilder, un outil de développement inimaginable. Après quelques années, l'échec commercial n'était pas loin. Next changeait son fusil d'épaule en arrêtant la construction de ses machines et en se concentrant sur la portabilité de son système vers d'autres plates-formes. NextStep devenait OpenStep et pouvait fonctionner sur Sparc, Intel et HP.

OpenStep n'était pas un OS mais une API définissant un standard de programmation en Objective C. OpenStep, c'est trois "morceaux" : le FoundationKit (bibliothèque d'objets non graphiques), l'AppKit (bibliothèque d'objets pour application graphique) et DisplayPostScript, interface servant à "dessiner" sur l'écran en utilisant le langage PostScript.

Aujourd'hui, OpenStep fonctionne sur Windows NT, 95, Solaris, Mach, HP/UX et très bientôt sur Mac OS X Server (Rhapsody).

Mais, on est bien dans Amiga News, là ? Oui, oui, ne vous sauvez pas !

"L'incontournable" Java, fait partie de ces possibilités de portage d'applications sur la plupart des plates-formes et des processeurs. Je ne souhaite pas m'attarder sur le sujet si ce n'est pour continuer à affirmer que Java c'est une tortue avec un frein ! Son compilateur JIT a un avantage : il arrive juste à temps pour vous laisser aller boire un café au troquet du coin ! Bon, je plaisante (quoique !). Si certains amigaïstes s'imaginent avoir Word-Java sur leur machine à 25 MHz, je leur souhaite bien du plaisir et en plus je les plains !

Y'a pas Word sur l'Amiga !

Java existe, ce n'est déjà pas si mal ! Ce qui va suivre concerne un énorme projet en plein développement. Nul ne sait quand il sera finalisé ni qui se lancera dans quoi. J'ai nommé GNUStep.

Avant d'aller plus avant, ne comptez pas faire tourner GNUStep sur AmigaOS, à moins que certains d'entre vous ne se lancent dans cette voie. Rappelez-vous, GNU c'est vous ! GNUStep concerne surtout Linux et le lien avec l'Amiga passe donc par ce système.

C'est quoi GNUStep ?

GNUStep n'est autre qu'OpenStep à la sauce GNU. Il se conjugue en deux "moutures" : une version utilisateur et une version développeur. Le but recherché est de faciliter le portage d'applications écrites en Objective C vers des plates-formes ne bénéficiant pas d'OpenStep. La compatibilité de GNUStep avec OpenStep n'est pas la priorité. Elle existera peut-être un jour ; par conséquent, n'espérez pas faire tourner des applications NextStep (ou OpenStep) sur GNUStep. Toutefois, si vous disposez des sources, vous pourrez toujours essayer de les adapter. Cette opportunité sera fonction du degré d'avancement du développement de GNUStep.

Ceci étant dit, où en est ce projet actuellement ? Détaillons d'abord les sous-projets qui composent GNUStep :
  • Compilateur et runtime Objective C.
  • Base Library : bibliothèque d'objets non graphiques (équivalent au Foundation Kit d'OpenStep).
  • GUI Library : bibliothèque d'objets graphiques (équivalent à l'AppKit d'OpenStep).
  • DisplayGhostscript Server : vous aurez deviné de quoi il s'agit.
  • Interface Modeller Application : pour assemblage graphique des interfaces d'application.
En principe, la Base Library est à 90% terminée ; la GUI Library est à 65% terminée. Il n'est pas impossible qu'aujourd'hui ces deux bibliothèques soient pleinement opérationnelles.

Grande question : sur quelles plates-formes va fonctionner GNUStep ? La réponse est comprise dans la question : n'importe quelle machine pour laquelle des volontaires se chargeront du portage ! Rassurez-vous, le code est indépendant de l'OS et devrait facilement être porté sur tous les Unix et assimilés. Pour l'instant, le gros du travail concerne les machines à base de processeurs Intel, Alpha et MIPS. Voilà donc où le bât blesse : les processeurs mentionnés ne fonctionnent pas vraiment à des cadences de sénateur !

Il est parfaitement légitime que l'effort de GNU porte sur du matériel moderne et puissant puisqu'aujourd'hui l'escalade à la vitesse est le leitmotiv. Il y a une autre raison à cet état de fait : les ressources nécessaires sont conséquentes. Pourtant, Nextstep est né sur un 68030 avant de passer sur un 68040 à 25 MHz. Ceci pour affirmer qu'il n'est pas ridicule d'envisager GNUStep sur m68k et a fortiori sur PowerPC PowerUP.

Alors, qui s'y colle ?

Quel intérêt pour l'Amiga ?

Jusqu'à présent, la communauté Amiga a toujours pu bénéficier de la recherche et du développement réalisés pour Linux. La version m68k mentionnée dans le dernier Amiga News (Cf. AfterStep sur Amiga) est loin d'être ridicule.

Pourquoi donc se priver de cet outil ? Si GNUStep était porté sur m68k et PowerPC PowerUP, ça permettrait à l'Amiga-Linux d'avoir un outil de développement formidable :
  • Il est convivial en plus d'être esthétique.
  • L'Objective C est très compact et beaucoup plus sympathique que le C++.
  • Le temps de développement est excessivement réduit.
  • Le nombre d'objets réutilisables est impressionnant et surtout ils sont fournis (rien ne vous empêche d'en créer de nouveaux).
  • Les applications sont portables sur tous les Linux possédant GNUStep sans modifier une seule ligne de code.
  • L'Amiga devient capable d'afficher en DisplayPostScript (ou plutôt DisplayGhostscript).
Effets secondaires

Il faut quand même préciser que GNUStep est une couche venant s'ajouter à X11 et à l'éventuelle interface graphique déjà empilée sur X11 (AfterStep par exemple). En d'autres termes, avec Linux à la base, vous obtenez quatre couches superposées ! Léger, non ? Vous comprenez mieux pourquoi le développement en cours concerne plutôt les processeurs de course.

Rêve ou réalité ?

Beaucoup d'entre vous doivent se dire : comment peut-il savoir puisque le produit n'existe pas pour nos machines ?

C'est vrai, je n'ai pas pu tester pour les raisons invoquées ci-dessus. Par contre, GNU a fait ses preuves depuis longtemps pour ce qui concerne la qualité de ses logiciels. J'ai une confiance totale. Quoi de plus efficace qu'une communauté mondiale pour laquelle chacun apporte sa pierre à l'édifice dans sa spécialité ? J'insiste : vous faites partie de cette communauté !

Ensuite, j'utilise NextStep sur une station Next depuis des années et je ne m'en lasse pas (au cas où vous n'auriez pas deviné, c'est pareil pour l'Amiga !).

Bien sûr, je n'ignore pas que beaucoup d'entre vous rêvent d'un nouvel AmigaOS sur une machine performante. Nous sommes nombreux dans ce cas. Par contre, le 56e plan de Gateway ne nous apporte rien de concret. J'ai même plutôt peur que les gardiens de troupeaux finissent par nous sortir une lessiveuse télécommandée basée sur les restes d'AmigaOS. Alors, plutôt que d'attendre le siècle prochain, je crois qu'il vaut mieux faire avec ce que nous avons. Les raisons de continuer avec l'Amiga aujourd'hui sont multiples. Personnellement, j'ai toujours défendu son côté multi-OS. C'est l'une de ses forces encore maintenant, même si objectivement on commence à être un peu limité question performances. Tous les concepteurs d'émulation matérielle ont quitté le navire depuis longtemps et il n'y a donc plus d'évolution. Heureusement, il nous reste encore les émulations logicielles.

L'autre côté "magique" de l'Amiga vient de la force de son domaine public. Sans le DP, je suis persuadé que l'Amiga aurait disparu définitivement depuis longtemps. Par conséquent, si vous êtes quelques-uns à vous sentir le courage de porter GNUStep sur AmigaOS, n'hésitez pas ! Je pense malgré tout qu'il serait quand même beaucoup plus simple de se lancer d'abord dans un portage pour Linux m68k. Mais, on fait comme on le sent ! Si vous vous sentez concernés, et surtout si vous avez beaucoup de temps à y consacrer, vous trouverez ci-dessous la marche à suivre.

On vit une époque formidable

Si vous voulez participer au projet GnuStep, contactez gnustep-maintainer@gnu.org.
Si vous souhaitez tout savoir sur GNU, visitez www.gnu.org.
Si vous avez envie de télécharger la dernière version, allez sur ftp://ftp.gnu.org/pub/gnu.
Il existe également ftp://ftp.gnustep.org.
Pour Alpha, la dernière version stable est disponible sur ftp://alpha.gnu.org/pub/gnustep.
Une version CD de GNUStep de 1997 (PC, bien sûr !) existe et vous pouvez la commander à l'adresse : www.mcd2-diff.fr.


[Retour en haut] / [Retour aux articles]