Kierre vs prosessi
Käsitellä asiaa
Tietokoneohjelmoinnin maailmassa prosessi on ohjelman esiintymä tai suorittaminen. Jokainen prosessi sisältää ohjelmakoodin ja olemassa olevan toiminnan. Tiettyjä prosesseja voi olla enemmän kuin yksi säie. Ohjeet voidaan suorittaa samanaikaisesti. Se riippuu kuitenkin käytetystä käyttöjärjestelmästä.
Periaatteessa prosessit ovat erittäin merkittäviä ohjelmia. Ne kuluttavat huomattavasti muistia. Siksi ne ovat suuresti riippuvaisia suorittamiseen käytettävissä olevista resursseista. Kun nämä kaikki on sanottu, prosessin tiedetään olevan ”raskasprosessi”.
Jokainen prosessi tapahtuu eri muistipaikassa. Siksi, jos läsnä on enemmän prosesseja, vaihtaminen kunkin prosessin välillä on erittäin kallista, koska kuluu aikaa jokaiselta muistin allokoinnilta vaihtamiseen toiseen allokaatioon. Jokaisella prosessilla on oma osoitetila, joka voi hiukan määrää tarjontaa.
Prosessi on riippumaton muista prosesseista. Joten kun emoprosessia muokataan, se ei välttämättä vaikuta muihin prosesseihin. Tämän käytöksen takia prosessit vaativat prosessien välistä viestintää, jotta he voivat kommunikoida siskojensa kanssa.
Lisäksi prosesseja ei luoda niiden monimutkaisemman luonteen vuoksi helposti. Tämä voi vaatia jonkin verran prosessien päällekkäisyyttä, tyypillisesti vanhempaa prosessia rakentamisen aikaansaamiseksi.
Lanka
Jopa minimaalisilla järjestelmäresursseilla langat voidaan suorittaa samanaikaisesti tietyn tehtävän saavuttamiseksi. Syynä on se, että säie on vain suoritussekvenssi. Se on vain prosessin sisällä, ja siksi sitä kutsutaan myös ”kevyeksi prosessiksi”.
Sitä pidetään ohjelman pienimmänä osana, koska se on itsenäinen suorittamispolku ohjelman sisällä. Kontekstin vaihtaminen ketjujen välillä vaatii vähän resursseja toisin kuin prosessit. Kielet pohjimmiltaan jakavat osoitealueet ja ne luodaan myös helposti.
On myös syytä mainita, että pääkierteeseen tehdyillä muutoksilla voi olla vaikutus muiden lankojen käyttäytymiseen samassa prosessissa. Ilmeisesti viestintä lankojen välillä samassa prosessissa on suoraa ja saumatonta.
Yhteenveto:
1. Prosessi voi sisältää useamman kuin yhden säikeen.
2. Prosessia pidetään ”raskaana”, kun taas lankaa pidetään “kevyenä”.
3. Prosessit ovat suuresti riippuvaisia käytettävissä olevista järjestelmäresursseista, kun taas ketjut vaativat vähän resursseja.
4. Päälangan muuttaminen voi vaikuttaa seuraaviin ketjuihin, kun taas vanhemman prosessin muutokset eivät välttämättä vaikuta alaprosesseihin.
5. Prosessin sisäiset ketjut kommunikoivat suoraan, kun taas prosessit eivät kommunikoi niin helposti.
6. Lankoja on helppo luoda, kun taas prosessit eivät ole niin yksinkertaisia.