comment printf fonctionne en interne?

Dupliquer possible:
Définitions de fonctions C / C ++ sans assemblage

salut encore une fois, je veux savoir comment printf fonctionne en interne … par interne je veux dire quel mécanisme sous-jacent d’appels système / ISRs etc. est utilisé … et pas à propos de la liste des arguments variables …

Raison: j’utilise FASM mais il y a peu de ressources pour la console d’entrée-sortie, je sais que je peux utiliser printf disponible dans la bibliothèque c (je ne sais pas comment mais c’est un point différent)

Merci.

L’appel système write(2) est utilisé avec le descripteur de fichier défini sur STDOUT (sa valeur est 1).

Pour appeler un appel système depuis assembly, le registre eax doit contenir l’identifiant de l’appel système (je pense que le nombre particulier de write() est 3) et le rest des registres (ebx, ecx, …) doit contient les arguments. Faire ensuite un int 80h fera basculer le contrôle de votre processus sur la routine du kernel qui gère les appels système.

Ce qui précède est spécifique à la plate-forme, mais pratiquement tous les systèmes d’exploitation de type Unix fonctionnent de la sorte.