Monikanavaisuus: taustaprosessi ja etualan prosessi

Monitoimilaitteena Linux tukee useiden prosessien - periaatteessa ohjelmien tai komentoiden tai vastaavien tehtävien suorittamista - taustalla, kun työskentelet edelleen etualalla.

Etualan prosessit

Etualan prosessi on mikä tahansa komento tai tehtävä, jota suoritat suoraan ja odottaa sitä loppuun. Jotkin etualan prosessit osoittavat jonkin tyyppistä käyttöliittymää, joka tukee käynnissä olevaa vuorovaikutusta, kun taas toiset suorittavat tehtävän ja "jäädyttävät" tietokoneen, kun se suorittaa tehtävän.

Kuoresta etualan prosessi alkaa kirjoittamalla komento kehotteeseen. Jos haluat esimerkiksi nähdä yksinkertaisen luettelon aktiivisen hakemiston tiedostoista, kirjoita:

$ ls

Näet tiedostoluettelon. Tietokone valmistelee ja tulostaa luettelon, et voi tehdä mitään muuta komentokehotteesta.

Taustaprosessi

Toisin kuin etualan prosessissa, kuori ei tarvitse odottaa taustaprosessin päättymistä, ennen kuin se voi suorittaa enemmän prosesseja. Käytettävissä olevan muistin määrän rajoissa voit syöttää useita taustakomentoja yksi toisensa jälkeen. Jotta komento toimisi taustoprosessina, kirjoita komento ja lisää välilyönti ja ampersand komennon loppuun. Esimerkiksi:

$ command1 &

Kun annat komennon lopullisella ampersandilla, shell suorittaa työn, mutta sen sijaan, että odotat komennon loppuun, palaat välittömästi kuoriin, ja näet shell-kehotteen (% for C Shell, ja $ Bourne Shellille ja Korn Shellille) palaa. Tässä vaiheessa voit syöttää toisen komennon joko etualalle tai taustaprosessille. Taustatyöt suoritetaan alhaisemmalla prioriteetilla etualan työpaikoilla.

Näyttöön tulee viesti, kun taustaprosessi on valmis.

Vaihtaminen prosessien välillä

Jos etualan prosessi vie liikaa aikaa, lopeta se painamalla CTRL + Z. Pysäytetty työ on edelleen olemassa, mutta sen toteutus on keskeytetty. Jos haluat jatkaa työtä, mutta taustalla, kirjoita bg lähettääksesi pysäytetyn työn taustan suorittamiseen.

Jos haluat jatkaa keskeytettyä prosessia etualalla, kirjoita fg ja tämä prosessi ottaa aktiivisen istunnon.

Jos haluat nähdä luettelon kaikista keskeytetyistä prosesseista, käytä töiden komentoa tai näytä ylimmän komennon luettelo kaikista CPU-intensiivisistä tehtävistä, jotta voit keskeyttää tai lopettaa järjestelmän voimavarojen vapauttamisen.

Shell vs. GUI

Multitasking toimii eri tavoin riippuen siitä, työskenteletkö kuoresta vai graafisesta käyttöliittymästä . Shellin Linux tukee vain yhtä aktiivista etualalla olevaa prosessia virtuaalista päätelaitetta kohti. Käyttäjän käytännön näkökulmasta ikkunoidussa ympäristössä (esimerkiksi Linuxissa, jossa on työpöytä, ei tekstipohjaisesta kuoresta) tukee useita aktiivisia ikkunoita, jotka toimivat tehokkaasti useina samanaikaisina etualan prosesseina. Käytännössä Linux takaa kulissien takana graafisen käyttöliittymän prosessien prioriteetin, joka edistää järjestelmän vakautta ja tukee loppukäyttäjien käsittelyä.