question à propos de la compilation

question à propos de la compilation - C - Programmation

Marsh Posté le 17-07-2008 à 15:33:08    

Bonjour,
 
je me pose la question au sujet de la compilation de certaines instructions en langage C (par exemple) qui en résulte des comportements différents selon la plateforme et le compilateur utilisé.
 
Cela est-il dû au fait que chaque compilateur ait son propre runtime, ou peut-il y avoir d'autres raisons (en restant dans les différences entre compilateurs)(la spécification d'un langage est-elle implémentée entièrement par le runtime (la bibliothèque d'exécution, i.e. la base du langage pour le compilateur considéré) ?
 
Merci !


Message édité par justin_bridou le 17-07-2008 à 15:40:19
Reply

Marsh Posté le 17-07-2008 à 15:33:08   

Reply

Marsh Posté le 17-07-2008 à 15:55:03    

compiler = générer de l'assembleur pour une cible donné. A proc différent, assembleur différent déjà.
Ensuite, selon l'OS , les appels systèmes sont différents, la structure de l'exe aussi ainsi que les API de services.

Reply

Marsh Posté le 17-07-2008 à 16:33:43    

Habituellement, les exécutables provenant de sources C n'utilisent pas de "runtime" contrairement à certaines versions de basic interprêtés, et contrairement au Java. Cette absence de runtime donne un avantage au niveau de la vitesse, et un défaut au niveau de la portabilité.

Reply

Marsh Posté le 17-07-2008 à 20:19:52    

Runtime ne signifie pas nécessairement machine virtuelle. Quand on parle de runtime pour du C, on pense plutôt à la libc, et son implémentation varie effectivement en fonction du compilateur sur une même plateforme

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed