Sistemski poziv je zahtev računarskog programa upućen jezgru operativnog sistema. To može uključivati zahteve povezane s hardverom (na primer, pristup tvrdom disku), kreiranje i izvršavanje novih procesa, kao i komunikaciju sa integralnim uslugama kernela, je raspoređivanje procesa. Sistemski pozivi služe za komunikaciju između procesa i operativnog sistema.

Pregled interfejsa za pozivanje sistema kod Linuks kernela koji upravlja komunikacijom između različitih komponenti i korisničkog prostora

U većini sistema sistemski pozivi mogu se obavljati samo iz procesa korisničkog prostora, dok u nekim sistemima, poput OS/360 i njegovih naslednika, privilegovani sistemski kod takođe izdaje sistemske pozive.

Biblioteka kao posrednik uredi

Generalno, sistemi pružaju biblioteku ili API koji se nalazi između običnih programa i operativnog sistema.

Primeri uredi

Na Juniksu, Juniksolikim i drugim operativnim sistemima koji odgovaraju POSIX-u, popularni sistemski pozivi su open, read, write, close, wait, exec, fork, exit i kill. Mnogi savremeni operativni sistemi imaju stotine sistemskih poziva. Na primer, Linuks i Open BSD imaju preko 300 različitih poziva,[1] [2] Net BSD ima blizu 500, [3] Fri BSD ima preko 500, [4] Vindouz 7 ima blizu 700.[5]

Reference uredi

  1. ^ „syscalls(2) - Linux manual page”. 
  2. ^ OpenBSD (14. 9. 2013). „System call names (kern/syscalls.c)”. BSD Cross Reference. 
  3. ^ NetBSD (17. 10. 2013). „System call names (kern/syscalls.c)”. BSD Cross Reference. 
  4. ^ „FreeBSD syscalls.c, the list of syscall names and IDs”. 
  5. ^ Author: Mateusz "j00ru" Jurczyk (5. 11. 2017). „Windows WIN32K.SYS System Call Table (NT/2000/XP/2003/Vista/2008/7/8/10)”. 

Spoljašnje veze uredi