On Tuesday 17 August 2004 09:49, Marc SCHAEFER wrote:

> La compatibilit� binaire est garantie. D'ailleurs, sous Linux,
> �tonnamment, m�me des programmes datant des d�buts (s'ils ont �t�
> compil�s statiquement) sont encore utilisables aujourd'hui pour cette
> raison (pas de cassage de compatibilit� des appels syst�mes).

Oui, Linux, pousse par en evolution tres rapide, a eu tres tot une attitude 
plus coherente vis-a-vis de la compatibilite binaire (a part quelques 
applications). Le meilleur exemple en est peut-etre l'illustrattion 
avec /proc sous Linux alors que les UNIX restaient empetres avec nmap() et 
proc_stat().

Le problemes des UNIX reside sans doute dans leur desire d'etre avant tout  
SYS III/IV/V, BSD, POSIX (many), ANSI, etc. Par dessus, chaque constructeur 
rajoutais ses extensions et essayais de les faire adopter par l'un des 
standards existants. Pour certaines parties, il y a toujours eu de grosses 
incompatibilites entre BSD et SYS *... De plus, chacun essayait de pousser 
ses propres. Ecrire du code fonctionnant pour les deux plate-formes n'etait 
pas facile, surtout pour X11. Linux n'a pas ces etats d'ames et c'est tant 
mieux !

Par contre, tu mentionnes un point important qui concerne les libraries 
statiques ou partagees... La tendance (tout a fait logique) est aux 
librairies partageables et, dans ce cas, des problemes peuvent arriver. Je 
pense d'ailleurs que 99% des problemes de compatibilte sont dus a cela. Si 
l'API/ABI du kernel est bien defini et suivit, il n'en va pas de meme avec 
des libraries d'autres types. Certains developpeurs n'on pas trop de 
scrupules a changer l'API pour des raisons souvent defendables... mais tres 
genantes. Pensez-y quand vous developper !


Daniel


Daniel
_______________________________________________
gull mailing list
[EMAIL PROTECTED]
http://lists.alphanet.ch/mailman/listinfo/gull

Répondre à