Ero prosessin ja langan välillä

Kirjoittaja: Laura McKinney
Luomispäivä: 1 Huhtikuu 2021
Päivityspäivä: 5 Saattaa 2024
Anonim
Ero prosessin ja langan välillä - Tekniikka
Ero prosessin ja langan välillä - Tekniikka

Sisältö


Prosessi ja säie ovat olennaisesti yhteydessä toisiinsa. Prosessi on ohjelman suorittaminen, kun taas säie on ohjelman suorittaminen, jota ohjaa prosessin ympäristö.

Toinen tärkeä kohta, joka erottaa prosessit ja säikeet, on se, että prosessit on eristetty toistensa kanssa, kun taas säikeet jakavat muistia tai resursseja keskenään.

  1. Vertailutaulukko
  2. Määritelmä
  3. Keskeiset erot
  4. johtopäätös

Vertailutaulukko

Vertailun perusteetProsessiLanka
perustiedotOhjelma toteutuksessa.Kevyt prosessi tai osa siitä.
Muistin jakaminenTäysin eristetty, älä jaa muistia.Jakaa muistin keskenään.
Resurssien kulutusLisääVähemmän
tehokkuusVähemmän tehokkaita verrattuna viestinnän prosessiin.Parantaa viestinnän tehokkuutta.
Luomiseen vaadittava aikaLisää
Vähemmän
Con kytkentäaikaVie enemmän aikaa.Kuluttaa vähemmän aikaa.
Epävarma irtisanominenTulokset menettävät prosessin.Lanka voidaan ottaa takaisin.
Irtisanomiseen vaadittava aikaLisääVähemmän


Määritelmä prosessi

Prosessi on ohjelman suorittaminen ja suorittaa ohjelmassa määritetyt asiaankuuluvat toiminnot, tai se on suoritusyksikkö, jossa ohjelma suoritetaan. Käyttöjärjestelmä luo, ajoittaa ja lopettaa prosessorit CPU: n käyttöön. Muut pääprosessin luomat prosessit tunnetaan lapsiprosessina.

Prosessitoimintoja ohjataan PCB: n avulla (Process control Block), jota voidaan pitää prosessin aivona, joka sisältää kaikki prosessille tärkeät tiedot, kuten prosessin tunnus, prioriteetti, tila, PWS ja sisällön CPU-rekisteri. .

Piirilevy on myös ytimeen perustuva tietorakenne, joka käyttää kolmenlaisia ​​toimintoja, jotka ovat ajoittaminen, lähettäminen ja tallentaminen.

  • aikataulutus - Se on menetelmä, jolla prosessisekvenssi valitaan yksinkertaisilla sanoilla, ja se valitsee prosessin, joka on suoritettava ensin CPU: ssa.
  • lähettämistä - Se luo ympäristön prosessille, joka suoritetaan.
  • Con säästää - Tämä toiminto tallentaa prosessin tiedot, kun prosessia jatketaan tai estetään.

Prosessin elinkaareen sisältyy tiettyjä tiloja, kuten valmiina, käynnissä, estetty ja lopetettu. Prosessitiloja käytetään prosessitoiminnan seuraamiseen hetkessä.


Ohjelmoijan kannalta prosessit ovat väline, jolla saavutetaan ohjelman samanaikainen suorittaminen. Samanaikaisen ohjelman pääprosessi luo lapsiprosessin. Pääprosessin ja lapsiprosessin on oltava vuorovaikutuksessa kunkin kanssa yhteisen tavoitteen saavuttamiseksi.

Prosessien lomitusoperaatiot lisäävät laskennanopeutta, kun yhden prosessin i / o-toiminta on päällekkäistä toisen prosessin laskennallisen toiminnan kanssa.

Prosessin ominaisuudet:

  • Kunkin prosessin luominen sisältää järjestelmäkutsuja kutakin prosessia varten erikseen.
  • Prosessi on eristetty suorituskokonaisuus, eikä se jaa tietoja.
  • Prosessit käyttävät IPC (prosessien välinen viestintä) -mekanismia viestintään, mikä lisää merkittävästi järjestelmäpuhelujen määrää.
  • Prosessien hallinta kuluttaa enemmän järjestelmäkutsuja.
  • Jokaisella prosessilla on oma pinon ja kasan muisti, ohjeet, tiedot ja muistikartta.

Määritelmä Lanka

Lanka on ohjelman suorittaminen, joka käyttää prosessiresursseja tehtävän suorittamiseen. Kaikki yhden ohjelman ketjut sisältyvät loogisesti prosessiin. Ydin osoittaa pinon ja säikeiden ohjauslohkon (TCB) jokaiselle säikeelle. Käyttöjärjestelmä tallentaa vain pinon osoittimen ja suorittimen tilan vaihtaessa saman prosessin lankojen välillä.

Langat toteutetaan kolmella eri tavalla; nämä ovat ytimen tasot, käyttäjätasot, hybridi. Ketjulla voi olla kolme tilaa käynnissä, valmiina ja estettynä; se sisältää vain laskennallisen tilan, ei resurssien allokoinnin ja tiedonsiirtotilan, joka vähentää kytkentärasitusta.Se lisää samanaikaisuutta (rinnakkaisuutta), joten nopeus myös kasvaa.

Monisäikeisissä mukana on myös haittoja. Useat säikeet eivät luo monimutkaisuutta, mutta niiden välinen vuorovaikutus muodostaa.

Lankalla on oltava prioriteettiominaisuus, kun useita ketjuja on aktiivisia. Aika, joka se suoritetaan saman prosessin muihin aktiivisiin säikeisiin nähden, määritellään säikeen prioriteetillä.

Langan ominaisuudet:

  • Vain yksi järjestelmäpuhelu voi luoda useamman kuin yhden ketjun (kevyt prosessi).
  • Ketjut jakavat tietoja.
  • Threads jakaa ohjeet, globaalit ja kasa-alueet, mutta sillä on oma yksilöllinen pino ja rekisterit.
  • Ketjujen hallinta ei kuluta lainkaan tai vähemmän järjestelmä kutsuja, koska viestintä ketjujen välillä voidaan saavuttaa jaetulla muistilla.
  • Prosessin eristysominaisuus lisää sen yleiskustannuksia resurssien kulutuksen kannalta.
  1. Kaikki ohjelman ketjut sisältyvät loogisesti prosessiin.
  2. Prosessi on painava, mutta säie on kevyt.
  3. Ohjelma on eristetty suoritusyksikkö, kun taas ketju ei ole eristetty ja jakaa muistin.
  4. Lankalla ei voi olla yksilöllistä olemassaoloa; se on kiinnitetty prosessiin. Toisaalta prosessi voi olla olemassa erikseen.
  5. Langan vanhenemishetkellä siihen liittyvä pino voidaan palauttaa, koska jokaisella säieellä on oma pino. Sitä vastoin, jos prosessi kuolee, kaikki säieet kuolevat prosessia mukaan lukien.

johtopäätös

Prosesseja käytetään saavuttamaan ohjelmat samanaikaisesti ja peräkkäin. Vaikka säie on ohjelman suoritusyksikkö, joka käyttää prosessin ympäristöä, kun monet säieet käyttävät saman prosessin ympäristöä, he tarvitsevat jakaa koodin, tiedot ja resurssit. Käyttöjärjestelmä käyttää tätä tosiasiaa vähentääkseen yleiskustannuksia ja parantaakseen laskentaa.