some changes
This commit is contained in:
11
SCR/SCR3.1/TP02/Exercise1/answer.txt
Normal file
11
SCR/SCR3.1/TP02/Exercise1/answer.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
Explications techniques
|
||||
|
||||
Fonctions standards (fopen, fread, fwrite) :
|
||||
Ces fonctions utilisent une mémoire tampon (buffer) en interne. Même si tu demandes de lire/écrire un octet à la fois,
|
||||
la bibliothèque C va lire ou écrire plusieurs octets (souvent 4096, la taille d’un bloc) d’un coup en interne,
|
||||
ce qui réduit le nombre d’appels système réels et accélère le programme.
|
||||
Vérifie avec strace : un seul appel read ou write pour plusieurs appels fread/fwrite d’un octet !
|
||||
|
||||
Appels systèmes (open, read, write, close) :
|
||||
Ici, chaque appel à read() ou write() provoque un appel système pour chaque octet.
|
||||
Le passage du mode utilisateur au noyau (syscall) est coûteux, donc le programme est beaucoup plus lent.
|
Reference in New Issue
Block a user