Prosessin ohjauslohko käyttöjärjestelmässä
Viimeisessä blogissa opimme käyttöjärjestelmän prosesseista ja prosessin eri tiloista. Jos et ole perehtynyt Prosessi käyttöjärjestelmässä sitten sinun täytyy valmis, että blogi täältä. Tässä blogissa opimme Process Control Blockista käyttöjärjestelmässä. Aloitetaan siis.
Käyttöjärjestelmässä on useita prosesseja. Jokaisella prosessilla on joitakin tietoja, joita prosessori tarvitsee prosessin suorittamiseen. Tarvitsemme siis jonkinlaisen tietorakenteen tietyn prosessin tietojen tallentamiseen.
Prosessinohjauslohko eli yksinkertainen PCB on tietorakenne, jota käytetään tallentamaan prosessin tietoja, joita saatetaan tarvita tietyn prosessin aikataulutuksen hallintaan.
Kullekin prosessille annetaan siis PCB, joka on eräänlainen prosessin tunnistekortti. Kaikkiin järjestelmässä oleviin prosesseihin liittyy PCB, ja kaikki nämä PCB:t on yhdistetty linkitettyyn luetteloon.
Prosessinohjauslohkon attribuutit
Prosessinohjauslohkolla on erilaisia attribuutteja, jotka auttavat prosessoria suorittamaan tietyn prosessin. Nämä attribuutit ovat:
- Process Id: Prosessin id on prosessin yksilöllinen tunniste. Jokainen prosessi tunnistetaan prosessitunnuksen avulla.
- Ohjelmalaskuri: Ohjelmalaskuri, osoittaa seuraavaan käskyyn, jonka suorittimen on määrä suorittaa. Sitä käytetään seuraavan suoritettavan käskyn löytämiseen.
- Prosessin tila: Prosessi voi olla missä tahansa prosessin mahdollisista tiloista. CPU:n on siis tiedettävä prosessin senhetkinen tila, jotta sen suoritus voidaan suorittaa helposti. Voit lukea lisää prosessin tilasta täältä.
- Prioriteetti: Jokaiseen prosessiin liittyy prioriteetti. Tämän prioriteetin perusteella suoritin selvittää, mikä prosessi on suoritettava ensin. Korkeamman prioriteetin prosessi suoritetaan ensin.
- Yleiskäyttöiset rekisterit: Prosessin suorituksen aikana käsitellään useita tietoja, joita prosessi käyttää ja muuttaa. Useimmissa tapauksissa prosessin suoritus on kuitenkin keskeytettävä toisen prosessin käynnistämiseksi, ja jonkin ajan kuluttua edellistä prosessia on jatkettava uudelleen. Koska edellinen prosessi käsitteli joitakin tietoja ja oli muuttanut niitä, prosessin jatkuessa sen pitäisi käyttää vain näitä tietoja. Nämä tiedot tallennetaan jonkinlaisiin tallennusyksiköihin, joita kutsutaan rekistereiksi.
- CPU:n aikataulutustiedot:
- Luettelo avatuista tiedostoista: Prosessi voi käsitellä useita tiedostoja, joten suorittimen on ylläpidettävä luetteloa tiedostoista, jotka prosessi on avannut, jotta voidaan varmistaa, ettei mikään muu prosessi voi avata tiedostoa samaan aikaan.
- Luettelo I/O-laitteista: Prosessi voi tarvita useita I/O-laitteita erilaisten tehtävien suorittamiseen. Niinpä on ylläpidettävä asianmukaista luetteloa, josta käy ilmi, mitä I/O-laitetta mikäkin prosessi käyttää.
Nämä ovat prosessinohjauslohkon attribuutteja, ja näitä tietoja tarvitaan, jotta saadaan yksityiskohtaista tietoa prosessista, mikä puolestaan johtaa prosessin parempaan suorittamiseen.
Niin se tästä blogista. Toivottavasti opit jotain uutta tänään.