Diferența cheie - Apel sistem vs. Apel bibliotecă
Apelul de sistem și apelul de bibliotecă sunt legate de sistemul de operare al unui computer. Calculatorul poate funcționa în două moduri; și anume, modul utilizator și modul kernel. Diferența cheie între apelul de sistem și apelul de bibliotecă este că apelul de sistem este o funcție furnizată de kernel pentru a intra în modul kernel pentru a accesa resursele hardware, în timp ce, apelul de bibliotecă este o funcție furnizată de programarea bibliotecilor. De exemplu, open () este un apel de sistem și fopen () este un apel de bibliotecă. Când fopen () în programul C, folosește biblioteca de antet stdio.h. Apoi apelul de sistem 'open (),' este utilizat din nucleu pentru a finaliza sarcina de deschidere a fișierului.
CUPRINS
1. Prezentare generală și diferența de cheie
2. Ce este apelul de sistem
3. Ce este apelul în bibliotecă
4. Asemănări între apelul de sistem și apelul în bibliotecă
5. Comparație side by side - Apel sistem vs apel bibliotecă în formă tabelară
6. Rezumat
Ce este apelul de sistem?
Un computer funcționează în două moduri. Acestea sunt modul utilizator și modul kernel. Unele procese rulează pe un sistem informatic. Un proces este un program în execuție. Când se execută programe de aplicație, computerul este în modul utilizator. Dacă este necesară o resursă hardware, procesul trimite o cerere către kernel, iar computerul intră în modul kernel. Aceste solicitări sunt trimise utilizând apeluri de sistem. Calculatorul comută frecvent între aceste două moduri. Când sarcina este finalizată, computerul revine la modul utilizator din modul kernel. Această tranziție de mod este cunoscută sub numele de „comutare de context”. Apelurile de sistem sunt o interfață între sistemul de operare și programele utilizatorului.
Figura 01: Apeluri de sistem
Există diferite tipuri de apeluri de sistem. Creați, terminați procesul, executați procesul, alocați și memoria liberă se poate face folosind „Apelurile sistemului de control al procesului”. „Apeluri de sistem de gestionare a fișierelor” poate fi utilizat pentru a crea, șterge, citi, scrie, deschide, închide fișiere. Procesul necesită câteva resurse pentru a finaliza execuția. Solicitarea și eliberarea dispozitivelor se face prin „Apeluri de sistem de gestionare a dispozitivelor”. „Apelurile de sistem de gestionare a informațiilor” pot fi utilizate pentru a obține date de sistem și pentru a obține procese și atribute ale dispozitivului. Procesele comunică între ele. Această comunicare se face folosind „Apeluri de sistem de comunicații”. Trimiterea informațiilor de stare, crearea și ștergerea conexiunilor de comunicare și trimiterea, primirea mesajelor se pot face folosind apeluri de sistem de comunicații.
Ce este apelul de bibliotecă?
Apelul la bibliotecă este o funcție oferită de bibliotecile de programare. Înainte de a efectua un apel de bibliotecă, acea bibliotecă ar trebui importată. Apelul la bibliotecă poate depinde de apelul de sistem.
În limbajul C, aceste funcții pot fi utilizate în program prin includerea fișierelor antet. Fișierele antet sunt incluse folosind directiva de preprocesare #include. Preprocesatorul scanează fișierul specificat înainte de a continua cu restul fișierului sursă. Unele funcții comune ale bibliotecii sunt după cum urmează, biblioteca „math.h” include funcții legate de operațiile matematice. Biblioteca „stdio.h” oferă funcții pentru efectuarea intrărilor și ieșirilor. „Fopen ()” deschide numele fișierului arătat. „Fclose ()” închide fișierul. „Printf () este utilizat pentru a trimite ieșirea formatată la o ieșire standard. „Fprintf ()” este utilizat pentru a trimite ieșirea formatată către un flux. „Scanf ()” este folosit pentru a citi intrarea formatată din intrarea standard. „Stdlib.h” oferă funcții pentru gestionarea memoriei și „time.h” oferă funcții pentru manipularea datei și orei.
Care este asemănarea dintre apelul de sistem și apelul în bibliotecă?
Ambele sunt legate de sistemul de operare
Care este diferența dintre apelul de sistem și apelul în bibliotecă?
Difuzarea articolului din mijloc înainte de tabel
Apel sistem față de apel bibliotecă |
|
Un apel de sistem este o funcție furnizată de kernel pentru a intra în modul kernel pentru a accesa resursele hardware. | Apelul la bibliotecă este o funcție oferită de biblioteca de programare. |
Modul de executare | |
Un apel de sistem este executat în modul kernel. | Un apel de bibliotecă este executat în modul utilizator. |
Comutarea modului | |
Un apel de sistem trece de la modul utilizator la modul kernel. | Nu se trece de la modul utilizator la modul kernel în apelul de bibliotecă. |
Portabilitate | |
Un apel de sistem nu este portabil. | Un apel de bibliotecă este portabil. |
Rezumat - Apel sistem față de apel bibliotecă
Un apel de sistem este implementat în nucleu și un apel de bibliotecă este implementat în spațiul utilizatorului. Diferența dintre apelul de sistem și apelul de bibliotecă este că un apel de sistem este o funcție furnizată de kernel pentru a intra în modul kernel pentru a accesa resursele hardware și apelul de bibliotecă este o funcție furnizată de programarea bibliotecilor. Apelurile din bibliotecă pot depinde de apelurile de sistem pentru a finaliza sarcina. open (), fork (), cd () sunt câteva exemple de apeluri de sistem. fopen (), fprintf () sunt exemple de apeluri de bibliotecă.
Descărcați versiunea PDF a apelului de sistem față de apelul de bibliotecă
Puteți descărca versiunea PDF a acestui articol și o puteți folosi în scopuri offline, conform notei de citare. Vă rugăm să descărcați versiunea PDF aici Diferența dintre apelul de sistem și apelul în bibliotecă