how printf works internally.?
assembly, c
Solution
The `write(2)` system call is used with the file descriptor set to `STDOUT` (its value is 1).
To invoke a system call from assembly, the eax register has to hold the id of the system call (I think the particular number of `write()` is 3) and the rest of the registers (ebx, ecx, ...) have to contain the arguments. Then doing an `int 80h` will switch the control from your process to the kernel routine that handles system calls.
The above is platform-specific, but virtually all Unix-like operating systems work like that.
Problem
Possible Duplicate: C/C++ function definitions without assembly hi again, I want to know how printf works internally...by internally I mean what underlying system calls/ISRs etc mechanism is used...and not about the variable argument list... Reason:I am using FASM but there is little there for console i/o, I know I can use printf available from the c library(I don't know how but that's a different point) thanks.