Nøkkelforskjell – systemanrop vs bibliotekanrop
Systemanrop og bibliotekanrop er relatert til operativsystemet til en datamaskin. Datamaskinen kan operere i to moduser; nemlig brukermodus og kjernemodus. Hovedforskjellen mellom systemanrop og bibliotekanrop er at systemanrop er en funksjon levert av kjernen for å gå inn i kjernemodus for å få tilgang til maskinvareressursene, mens bibliotekanrop er en funksjon levert av programmeringsbiblioteker. For eksempel er åpen () et systemanrop og fopen () er et bibliotekanrop. Når fopen () i C-programmet, bruker stdio.h header-biblioteket. Deretter brukes systemkallet 'open (), ' fra kjernen for å fullføre filåpningsoppgaven.
Hva er systemanrop?
En datamaskin fungerer i to moduser. De er brukermodus og kjernemodus. Noen prosesser kjører på et datasystem. En prosess er et program under utførelse. Når applikasjonsprogrammer kjører, er datamaskinen i brukermodus. Hvis det kreves en maskinvareressurs, sender prosessen en forespørsel til kjernen, og datamaskinen går inn i kjernemodus. Disse forespørslene sendes ved hjelp av systemanrop. Datamaskinen bytter ofte mellom disse to modusene. Når oppgaven er fullført, går datamaskinen tilbake til brukermodus fra kjernemodus. Denne modusovergangen er kjent som "kontekstbytte." Systemanrop er et grensesnitt mellom operativsystemet og brukerprogrammer.
Figur 01: Systemanrop
Det finnes ulike typer systemanrop. Opprett, avslutt prosessen, utførelse av prosessen, allokering og frigjør minne kan gjøres ved å bruke "Process Control System Calls." "File Management System Calls" kan brukes til å opprette, slette, lese, skrive, åpne, lukke filer. Prosessen krever noen ressurser for å fullføre utførelse. Forespørsel og frigjøring av enheter gjøres gjennom "Device Management System Calls." "Information Management System Calls" kan brukes til å få systemdata og for å få prosesser og enhetsattributter. Prosesser kommuniserer med hverandre. Denne kommunikasjonen gjøres ved hjelp av "Communication System Calls." Sending av statusinformasjon, opprettelse og sletting av kommunikasjonsforbindelser og sending og mottak av meldinger kan gjøres ved å bruke kommunikasjonssystemanrop.
Hva er Library Call?
Library call er en funksjon som tilbys av programmeringsbibliotekene. Før du foretar et bibliotekanrop, bør biblioteket importeres. Biblioteksamtalen kan avhenge av systemsamtalen.
På C-språket kan disse funksjonene brukes i programmet ved å inkludere header-filene. Overskriftsfiler er inkludert ved å bruke forhåndsbehandlingsdirektivet include. Forbehandler skanner den angitte filen før du fortsetter med resten av kildefilen. Noen vanlige bibliotekfunksjoner er som følger, "math.h"-biblioteket inkluderer funksjoner relatert til matematiske operasjoner. "stdio.h"-biblioteket gir funksjoner for å utføre input og output. "fopen()" åpner filnavnet pekt. "fclose()" lukker filen. "printf() brukes til å sende den formaterte utdata til en standard utgang. "fprintf ()" brukes til å sende den formaterte utgangen til en strøm. "scanf()" brukes til å lese formatert input fra standard input. "stdlib.h" gir funksjoner for minneadministrasjon og "time.h" gir funksjoner for klokkeslett- og datomanipulering.
Hva er likheten mellom systemanrop og bibliotekanrop?
Begge er relatert til operativsystem
Hva er forskjellen mellom systemanrop og bibliotekanrop?
Systemsamtale kontra biblioteksamtale |
|
Et systemkall er en funksjon levert av kjernen for å gå inn i kjernemodus for å få tilgang til maskinvareressurser. | Biblioteksamtale er en funksjon levert av programmeringsbiblioteket. |
Utførelsesmåte | |
Et systemanrop utføres i kjernemodus. | Et bibliotekanrop utføres i brukermodus. |
Modusbytte | |
A systemanrop bytte fra brukermodus til kjernemodus. | Det er ingen overgang fra brukermodus til kjernemodus i bibliotekanrop. |
Portabilitet | |
Et systemanrop er ikke bærbart. | En biblioteksamtale er bærbar. |
Sammendrag – Systemsamtale vs biblioteksamtale
Et systemkall er implementert i kjernen, og et bibliotekanrop er implementert i brukerområdet. Forskjellen mellom systemanrop og bibliotekanrop er at et systemkall er en funksjon levert av kjernen for å gå inn i kjernemodus for å få tilgang til maskinvareressurser og bibliotekanrop er en funksjon levert av programmeringsbiblioteker. Biblioteksanrop kan avhenge av systemanropene for å fullføre oppgaven. open (), fork(), cd() er noen eksempler på systemanrop. fopen (), fprintf () er eksempler på biblioteksamtaler.
Last ned PDF-versjonen av System Call vs Library Call
Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til offline-formål i henhold til sitat. Last ned PDF-versjon her Forskjellen mellom systemanrop og bibliotekanrop