Systeemoproep en Bibliotheekoproep hebben betrekking op het besturingssysteem van een computer. De computer kan in twee modi werken; namelijk gebruikersmodus en kernelmodus. De belangrijk verschil tussen systeemoproep en bibliotheekoproep is dat System call is een functie die de kernel levert om de kernelmodus in te voeren om toegang te krijgen tot de hardwarebronnen, terwijl bibliotheekoproep een functie is die wordt geboden door programmeerbibliotheken. Open () is bijvoorbeeld een systeemaanroep en fopen () is een bibliotheekoproep. Wanneer fopen () in C-programma, gebruikt de stdio.h headerbibliotheek. Vervolgens wordt de systeemaanroep 'open ()' gebruikt vanuit de kernel om de taak voor het openen van bestanden te voltooien.
1. Overzicht en belangrijkste verschil
2. Wat is System Call
3. Wat is Bibliotheek-oproep
4. Overeenkomsten tussen systeemoproep en bibliotheekoproep
5. Side-by-side vergelijking - Systeemoproep versus bibliotheekoproep in tabelvorm
6. Samenvatting
Een computer werkt in twee modi. Het zijn gebruikersmodus en kernelmodus. Sommige processen worden uitgevoerd op een computersysteem. Een proces is een programma in uitvoering. Wanneer toepassingsprogramma's worden uitgevoerd, bevindt de computer zich in de gebruikersmodus. Als een hardwarebron nodig is, verzendt het proces een verzoek naar de kernel en wordt de computer in de kernelmodus gezet. Deze verzoeken worden verzonden via systeemaanroepen. De computer schakelt regelmatig tussen deze twee modi. Wanneer de taak is voltooid, keert de computer terug naar de gebruikersmodus vanuit de kernelmodus. Deze modusovergang staat bekend als "contextwisseling."Systeemaanroepen vormen een interface tussen het besturingssysteem en gebruikersprogramma's.
Figuur 01: Systeemoproepen
Er zijn verschillende soorten systeemaanroepen. Maken, beëindigen van het proces, uitvoeren van het proces, toewijzen en vrij geheugen kan worden gedaan met behulp van "Procesbesturingssysteem oproepen.""Bestandsbeheer Systeemgesprekken"Kan worden gebruikt voor het maken, verwijderen, lezen, schrijven, openen en sluiten van bestanden. Het proces vereist wat middelen om de uitvoering te voltooien. Aanvragen en vrijgeven van apparaten gebeurt via "Apparaatbeheer Systeemgesprekken.""Informatie Management Systeem Oproepen"Kan worden gebruikt om systeemgegevens te verkrijgen en om processen en apparaatkenmerken te verkrijgen. Processen communiceren met elkaar. Deze communicatie wordt gedaan met behulp van "Communicatiesysteem-oproepen."Statusinformatie verzenden, communicatieverbindingen maken en verwijderen en verzenden, ontvangen van berichten kan via communicatiesysteemoproepen.
Bibliotheekoproep is een functie die wordt geboden door de programmeerbibliotheken. Voordat een bibliotheekoproep wordt gedaan, moet die bibliotheek worden geïmporteerd. Bibliotheekaanroep kan afhankelijk zijn van de systeemaanroep.
In de taal C kunnen deze functies in het programma worden gebruikt door de header-bestanden op te nemen. Header-bestanden worden opgenomen met behulp van de voorverwerkingsrichtlijn #include. Preprocessor scant het opgegeven bestand voordat het verder gaat met de rest van het bronbestand. Enkele algemene bibliotheekfuncties zijn als volgt, de "math.h" -bibliotheek bevat functies die zijn gerelateerd aan wiskundige bewerkingen. De bibliotheek "stdio.h" biedt functies voor het uitvoeren van invoer en uitvoer. "Fopen ()" opent de bestandsnaam. "Fclose ()" sluit het bestand. "Printf () wordt gebruikt om de geformatteerde uitvoer naar een standaarduitvoer te sturen. "Fprintf ()" wordt gebruikt om de geformatteerde uitvoer naar een stream te verzenden. "Scanf ()" wordt gebruikt om de geformatteerde invoer van de standaardinvoer te lezen. "Stdlib.h" biedt functies voor geheugenbeheer en "time.h" biedt functies voor tijd- en datummanipulatie.
Systeemoproep versus bibliotheekoproep | |
Een systeemaanroep is een functie die de kernel levert om de kernelmodus in te voeren voor toegang tot hardwareresources. | Bibliotheekoproep is een functie die wordt aangeboden door de programmeerbibliotheek. |
Wijze van uitvoering | |
Een systeemaanroep wordt uitgevoerd in de kernelmodus. | Een bibliotheekoproep wordt uitgevoerd in de gebruikersmodus. |
Modus schakelen | |
Een systeemaanroep overschakelen van gebruikersmodus naar kernelmodus. | Er is geen overschakeling van gebruikersmodus naar kernelmodus in Bibliotheekoproep. |
Draagbaarheid | |
Een systeemoproep is niet draagbaar. | Een oproep in de bibliotheek is draagbaar. |
Een systeemaanroep is geïmplementeerd in de kernel en een bibliotheekoproep is geïmplementeerd in de gebruikersruimte. Het verschil tussen systeemaanroep en bibliotheekoproep is dat een systeemaanroep een functie is die door de kernel wordt geleverd om de kernelmodus in te voeren voor toegang tot hardwareresources en bibliotheekoproep is een functie die wordt geboden door programmeerbibliotheken. Bibliotheekaanroepen kunnen afhankelijk zijn van de systeemaanroepen om de taak te voltooien. open (), fork (), cd () zijn enkele voorbeelden van systeemaanroepen. fopen (), fprintf () zijn voorbeelden van bibliotheekoproepen.
U kunt de PDF-versie van dit artikel downloaden en gebruiken voor offline doeleinden, zoals per citaatnotitie. Download hier de PDF-versie Difference Between System call and Library Call
1.Point, zelfstudies. "C Header Files.", Tutorials Point, 1 nov. 2017. Beschikbaar Hier
2.Santhosh. "System Call v / s Library Function." A Quest for Knowledge, 19 aug. 2011. Beschikbaar Hier
3.Point, zelfstudies. "C-bibliotheek.", Tutorials Point, 19 september 2017. Beschikbaar Hier