Süsteemikõne OS-is (Operating System): Mis on, tüübid ja näited

Mis on System Call in Operating süsteemi?

A süsteemikõne on mehhanism, mis tagab liidese protsessi ja operatsioonisüsteemi vahel. See on programmiline meetod, mille puhul arvutiprogramm taotleb teenust OS-i tuumalt.

Süsteemikõne pakub kasutajaprogrammidele operatsioonisüsteemi teenuseid API (Application Programming Interface) kaudu. Süsteemikõned on tuumasüsteemi ainsad sisenemispunktid.

Süsteem kutsub sisse Operating System
Süsteem kutsub sisse Operating System

Süsteemikõne näide

Näiteks kui meil on ühest failist andmete lugemiseks vaja kirjutada programmikood, kopeerige need andmed teise faili. Esimene teave, mida programm nõuab, on kahe faili nimi, sisend- ja väljundfailid.

Interaktiivses süsteemis nõuab seda tüüpi programmide täitmine teatud süsteemikutseid OS-i poolt.

  • Esimene kõne on kirjutada ekraanile viip
  • Teiseks, et lugeda klaviatuurilt kahte faili määratlevaid märke.

Kuidas süsteemikõne töötab?

Siin on juhised süsteemikutse jaoks OS-is:

Süsteemikõne töötab

Archisüsteemikutse struktuur

Archisüsteemikutse struktuur

Nagu näete ülaltoodud süsteemikõne näidisskeemil.

Step 1) Protsessid, mida käivitatakse kasutajarežiimis seni, kuni süsteemikutse selle katkestab.

Step 2) Pärast seda käivitatakse süsteemikutse prioriteedi alusel kerneli režiimis.

Step 3) Kui süsteemikõne täitmine on lõppenud, naaseb juhtimine kasutajarežiimi.

Step 4) Kasutajaprotsesside täitmine jätkus aastal Kerneli režiim.

Miks vajate OS-is süsteemikõnesid?

Järgmised olukorrad nõuavad OS-is süsteemikutseid:

  • Failide lugemine ja kirjutamine nõuavad süsteemikõnesid.
  • Kui failisüsteem soovib faile luua või kustutada, on vaja süsteemikutseid.
  • Süsteemikõnesid kasutatakse uute protsesside loomiseks ja haldamiseks.
  • Võrguühendused vajavad pakettide saatmiseks ja vastuvõtmiseks süsteemikõnesid.
  • Juurdepääs riistvaraseadmetele, nagu skanner, printer, vajab süsteemikõnet.

Süsteemikõnede tüübid

Siin on viis tüüpi süsteemikutseid OS-is.

  • Process Control
  • Failide haldamine
  • Device Management
  • Teabe hooldus
  • Side
Süsteemikõnede tüübid

Süsteemikõnede tüübid OS-is

Process Control

See süsteemikutse täidab protsessi loomise, protsessi lõpetamise jne ülesandeid.

Funktsioonid:

  • Lõpeta ja katkestada
  • Laadige ja käivitage
  • Looge protsess ja lõpetage protsess
  • Oota ja Signal sündmus
  • Mälu eraldamine ja vabastamine

Failide haldamine

Failihaldussüsteemi kõned käsitlevad failidega manipuleerimise töid, nagu faili loomine, lugemine ja kirjutamine jne.

Funktsioonid:

  • Looge fail
  • Kustuta fail
  • Ava ja sulge fail
  • Lugege, kirjutage ja paigutage ümber
  • Hankige ja määrake faili atribuudid

Device Management

Seadmehaldus tegeleb seadmega manipuleerimisega, nagu seadme puhvritest lugemine, seadmepuhvritesse kirjutamine jne.

Funktsioonid:

  • Taotlege ja vabastage seade
  • Ühendage/eemaldage seadmed loogiliselt
  • Hankige ja määrake seadme atribuudid

Teabe hooldus

See haldab teavet ja selle edastamist OS-i ja kasutajaprogrammi vahel.

Funktsioonid:

  • Hankige või määrake kellaaeg ja kuupäev
  • Hankige protsessi ja seadme atribuudid

KOMMUNIKATSIOON

Seda tüüpi süsteemikõnesid kasutatakse spetsiaalselt protsessidevaheliseks suhtluseks.

Funktsioonid:

  • Looge ja kustutage sideühendusi
  • Saada, saada sõnum
  • Aidake OS-il olekuteavet edastada
  • Kaugseadmete ühendamine või eemaldamine

Süsteemikõne parameetrite edastamise reeglid

Siin on üldised üldreeglid parameetrite süsteemikutsele edastamiseks:

  • Operatsioonisüsteem peaks parameetrid sisestama või virnast välja tõstma.
  • Parameetreid saab edastada registrites.
  • Kui parameetreid on rohkem kui registreid, tuleks see salvestada plokki ja ploki aadress edastada parameetrina registrile.

Olulised OS-is kasutatavad süsteemikõned

oota ()

Mõnes süsteemis peab protsess ootama, kuni teine ​​protsess selle täitmise lõpule viib. Seda tüüpi olukord tekib siis, kui vanemprotsess loob alamprotsessi ja ülemprotsessi täitmine jääb peatatuks, kuni selle alamprotsess käivitub.

Emaprotsessi peatamine toimub automaatselt ootamise () süsteemikutsega. Kui alamprotsess lõpetab täitmise, liigub juhtelement tagasi põhiprotsessile.

kahvel ()

Protsessid kasutavad seda süsteemikutset protsesside loomiseks, mis on iseenda koopiad. Selle süsteemi abil loob Call vanemprotsess alamprotsessi ja vanemprotsessi täitmine peatatakse kuni alamprotsessi täitmiseni.

exec()

See süsteemikutse käivitatakse, kui käivitatav fail juba töötava protsessi kontekstis, mis asendab vanema käivitatava faili. Algne protsessiidentifikaator jääb aga alles, kuna uut protsessi ei ehitata, vaid pinu, andmed, pea, andmed jne asendatakse uue protsessiga.

tapa()

OS kasutab süsteemikutset kill() selleks, et saata protsessile lõpetamissignaal, mis sunnib protsessi väljuma. Kuid süsteemi tapmiskutse ei tähenda tingimata protsessi katkestamist ja sellel võib olla erinevaid tähendusi.

väljumine ()

Süsteemikutset exit() kasutatakse programmi täitmise lõpetamiseks. Spetsiaalselt mitme lõimega keskkonnas määrab see kõne, et lõime täitmine on lõpetatud. OS taastab ressursid, mida protsess kasutas pärast süsteemikutse exit() kasutamist.

kokkuvõte

Kategooriad Windows Unix
Protsessi kontroll CreateProcess()
ExitProcess()
WaitForSingleObject()
kahvel ()
väljumine ()
oota ()
Seadme manipuleerimine SetConsoleMode()
ReadConsole()
WriteConsole()
loctl()
loe ()
kirjuta ()
Failidega manipuleerimine Loo fail()
Loe faili ()
WriteFile()
CloseHandle()
Ava ()
Loe ()
kirjuta ()
sulgege!)
Teabe korrashoid Get CurrentProcessID()
SetTimer()
Magama ()
getpid ()
äratus ()
magama ()
KOMMUNIKATSIOON Loo toru()
Loo failikaartping()
MapViewOfFile()
Toru ()
shm_open()
mmap()
Kaitsmed SetFileSecurity()
Initialize SecurityDescriptvõi ()
SetSecurityDescriptvõiRühm ()
Chmod()
Umask ()
Chown()

Võta see postitus kokku järgmiselt: