Grumpf.
Si je me souviens bien, . com = executable pur, sans rien autour, MAIS avec une limitation de taille de 64 Ko.
OUI! Il pourrait être exécuté sur plusieurs OS si:
le code est totallement OS indepandant,
( ça sa veux dire se baser sur rien du tout en matière d´état du système au moment de loadage, aucun appel de fonction particulière, se baser sur des choses qui sont normalisés au niveau du proc et qui sont obligatoirement respectés par tous les OS, ect...);
Cepandant, ce problème pourrait être enlevé si tu fait un prog de loadage qui fournirait une émulation de l´état attendu du programme, un virtualizer, quoi.
Sinon, il te faut aussi un moyen de les loader, ce programme. Si l´OS a un format équivalent au . com, t´aura juste à renommer l´extension, mais c,est pas nécessairement assuré que ça existe. Autre solution, ton propre petit prog qui ferait la conversion entre le . com et un format quelconque supporté par l´OS en question.
Bien sur, tu change rien au code, ce n´est que le principe de rajouter un header, dans ce cas. Sauf que, c,est pas toujours évident, car l´OS pourrait alors loader de façon spéciale qui est contraire à l´idée du com, des détails qui ficherait tout en l´air, et malheureusement, tout ceci serait hyper dépendant des cas.
Enfi bref, pas de solution miracle, même si, si tu ne condisère que le code, et qu´en plus tu considère que ton code est OS independent, ben ouais, ça serait probablement portable. Sauf que tout ce qu´il y a autour gêne cette idée de portabilité.
Elle est dure la vie du programmeur voulant faire de la portabilité, hein? ; )
Kelios
---------