Sistemski poziv
Sistemski poziv je zahtjev koji je uputio program prema operativni sustav. Omogućuje primjena pristupiti Funkcije i naredbe iz operativnog sustava API.
Sistemski pozivi izvode operacije na razini sustava, kao što je komunikacija s hardver uređaji i čitanje i pisanje slika. Upućujući sistemske pozive, programeri mogu koristiti unaprijed napisane funkcije podržane od operativnog sustava (OS), umjesto da ih zapisuju ispočetka. To pojednostavljuje razvoj, poboljšava stabilnost aplikacija i čini aplikacije "prenosljivijima" između različitih verzija OS-a.
Kako funkcioniraju sistemski pozivi
Aplikacije se pokreću na području od memorija zvan prostor korisnika. Sistemski poziv pristupa operativnom sustavu zrno, koji se izvodi u prostoru jezgre. Kada aplikacija uputi sistemski poziv, prvo mora zatražiti dopuštenje od kernela. To se može učiniti s zahtjev za prekidom, koji zaustavlja struju postupak i prenosi kontrolu na jezgru.
Ako je zahtjev dopušten, kernel obrađuje zahtjev, poput stvaranja ili brisanja datoteke. Kada je operacija završena, kernel prolazi izlaz natrag na aplikaciju koja prenosi datum od prostora jezgre do korisničkog prostora u memoriji. Aplikacija prima izlaz iz jezgre kao ulazni, U Izvorni kod programa, ovo može biti a parametar vrijednost ili povratna vrijednost unutar funkcije. Nakon primanja unosa, aplikacija nastavlja postupak.
Osnovni sistemski poziv, poput dobivanja sistemskog datuma i vremena, može potrajati nekoliko nanosekundi. Napredniji sistemski poziv, poput uspostavljanja komunikacije s a mreža Uređaju će trebati nekoliko sekundi. Kako bi se spriječila uska grla, većina operativnih sustava pokreće zasebnu jezgru nit za svaki sistemski poziv. Suvremeni operativni sustavi su navojem, što znači da mogu istovremeno obrađivati više sistemskih poziva.