Ero sivun ”Prosessi” versioiden välillä

Siirry navigaatioon Siirry hakuun
201 merkkiä lisätty ,  23. elokuuta 2007
wikitystä
(wikitystä)
Rivi 3: Rivi 3:
Käynnissä olevia ohjelmia sanotaan prosesseiksi. Jotkut sovellukset saattavat käyttää useita prosesseja. Prosessit yksilöidään [[PID]]-numeroilla. Jokaista prosessia on myös mahdollista ajaa omalla prosessorilla (rinnakkaistus).
Käynnissä olevia ohjelmia sanotaan prosesseiksi. Jotkut sovellukset saattavat käyttää useita prosesseja. Prosessit yksilöidään [[PID]]-numeroilla. Jokaista prosessia on myös mahdollista ajaa omalla prosessorilla (rinnakkaistus).


=Prosessien tausta-ajo=
==Prosessien tausta-ajo==
''Prosessien tausta-ajoa on käsitelty myös artikkelissa [[Komentorivin perusteet]].''


Otetaan esimerkkitilanne, jossa haluat ajaa kahta ohjelmaa päällekkäin. Toinen on graafinen videonkatseluohjelma [[gmplayer]] ja toinen on musiikintoisto-ohjelma [[xmms]]. Normaalisti konsolissa kirjoittaisit vain ohjelman nimen ja ohjelma käynnistyisi, jos tämä prosessi kuitenkin halutaan tausta-ajoon siten, että samasta terminaalista voidaan käynnistää useita ohjelmia, tulee sen perään liittää "&"-merkki. Kun olet kirjoittanut ohjelman nimen "&"-merkin kanssa, tulostaa konsoli sinulle ohjelman "työnumeron" sekä [[PID]]:n, joiden avulla voit myöhemmin esimerkiksi [[kill|tappaa]] prosessin.
Otetaan esimerkkitilanne, jossa haluat ajaa kahta ohjelmaa päällekkäin. Toinen on videonkatseluohjelma [[mplayer]] ja toinen on musiikintoisto-ohjelma [[xmms]]. Normaalisti [[komentorivi]]llä kirjoittaisit vain ohjelman nimen ja ohjelma käynnistyisi, jos tämä prosessi kuitenkin halutaan tausta-ajoon siten, että samasta [[terminaaliemulaattori]]sta voidaan käynnistää useita ohjelmia, tulee sen perään liittää "&"-merkki. Kun olet kirjoittanut ohjelman nimen "&"-merkin kanssa, tulostaa [[komentotulkki]] sinulle ohjelman "työnumeron" sekä [[PID]]:n, joiden avulla voit myöhemmin esimerkiksi [[kill|tappaa]] prosessin.


Ohjelman käynnistäminen tausta-ajoon
Ohjelman käynnistäminen tausta-ajoon
Rivi 11: Rivi 12:
Ohjelman ajaminen tulostaa seuraavaa: [työnumero­][PID] ohjelmannimi
Ohjelman ajaminen tulostaa seuraavaa: [työnumero­][PID] ohjelmannimi
  [1][3017] xmms
  [1][3017] xmms
Noin, nyt voimme heti perään käynnistää toisen ohjelman - sen gmplayerin jonka alunperin halusimme tulevan samaan aikaan ajoon. Tämä tapahtuu aivan identtisellä tavalla:
Nyt voimme heti perään käynnistää toisen ohjelman - sen mplayerin jonka alunperin halusimme tulevan samaan aikaan ajoon. Tämä tapahtuu aivan identtisellä tavalla:
  gmplayer &
  mplayer &
Tämä antaa jälleen kerran tulosteeksi työnumeron ja PID:n.  
Tämä antaa jälleen kerran tulosteeksi työnumeron ja PID:n.  


On myös toinen tapa lähestyä tausta ajoa, jos olemme käynnistäneet ohjelman ilman "&"-merkkiä ja haluamme sen tausta-ajoon. Voit yksinkertaisesti käyttää näppäimistöä asettamaan käynnissä olevan prosessin (joka tukkii terminaalin) pysähdyksiin painamalla CTRL+Z. Tämän jälkeen saat prosessin tausta-ajoon kirjoittamalla konsoliin [[bg]] %työnumero. Käytännössä ensin ohjelma pysäytetään ja sen jälkeen asetetaan tausta-ajoon. Esimerkiksi:
On myös toinen tapa lähestyä tausta ajoa, jos olemme käynnistäneet ohjelman ilman "&"-merkkiä ja haluamme sen tausta-ajoon. Voit yksinkertaisesti käyttää näppäimistöä asettamaan käynnissä olevan prosessin (joka tukkii komentorivin) pysähdyksiin painamalla CTRL+Z. Tämän jälkeen saat prosessin tausta-ajoon kirjoittamalla komentoriville <tt>[[bg]] %työnumero</tt>. Käytännössä ensin ohjelma pysäytetään ja sen jälkeen asetetaan tausta-ajoon. Esimerkiksi:


Pysäytetään ohjelma xmms, joka on käynnistetty ilman "&"-merkkiä
Pysäytetään ohjelma xmms, joka on käynnistetty ilman "&"-merkkiä
  xmms
  xmms
Painetaan konsolin ollessa aktiivinen ikkuna '''Ctrl+z'''
Painetaan terminaaliemulaattorin ollessa aktiivinen ikkuna '''Ctrl+Z'''
   
   
Konsoliin tulee teksti, joka kertoo prosessin työnumeron, tilan sekä nimen
Ruutuun tulee teksti, joka kertoo prosessin työnumeron, tilan sekä nimen
  [1]+ Stopped xmms
  [1]+ Stopped xmms
Nyt asetamme ohjelman tausta-ajoon (katsomme työnumeron edellä tulevasta tulosteesta)
Nyt asetamme ohjelman tausta-ajoon (katsomme työnumeron edellä tulevasta tulosteesta)
  bg %1  
  bg %1  


Prosessin saa myös nostettua etualalle painamalla "%työnumero" tai "[[fg]] %työnumero" Noniin, nyt osaamme asettaa prosessit tausta-ajoon ja käynnistää kaksi ohjelmaa peräkkäin. Entä se tilanne kun haluamme ajaa kymmeniä ohjemia päällekäin, emmekä muista suoraan ohjelmien työnumeroita. Komento <tt>[[jobs]]</tt> auttaa tässä tilanteessa. Kirjoittamalla terminaaliin tuon komennon saamme listauksen kaikista töistämme ja niiden työnumeroista. Tämän jälkeen komennolla"bg %n" saamme asetettua ohjelmat tausta-ajoon.
Prosessin saa myös nostettua etualalle painamalla "%työnumero" tai "[[fg]] %työnumero" Noniin, nyt osaamme asettaa prosessit tausta-ajoon ja käynnistää kaksi ohjelmaa peräkkäin. Entä se tilanne kun haluamme ajaa kymmeniä ohjelmia päällekäin, emmekä muista suoraan ohjelmien työnumeroita. Komento <tt>[[jobs]]</tt> auttaa tässä tilanteessa. Kirjoittamalla terminaaliin tuon komennon saamme listauksen kaikista töistämme ja niiden työnumeroista. Tämän jälkeen komennolla"bg %n" saamme asetettua ohjelmat tausta-ajoon.


=Ohjelmien tappaminen=
==Ohjelmien tappaminen==
Ohjelmien tappaminen on seuraava mielenkiinnon aiheemme. On todennäköistä, että joskus GNU/Linuxia käyttäessäsi ohjelma jää jumiin ja sinulla ei ole muuta keinoa kuin tappaa tämän ohjelman prosessi. Prosessin tappaminen tapahtuu komennolla "[[kill]] %työnumero" tai "kill PID". Ohjelman PID:n saat esimerkiksi komennolla "pstree -p" tai [[top]], jotka käynnistävät ohjelman. Ottakaamme esimerkiksi PID:n hakemisessa ohjelma pstree ja tappakaamme jumittunut xmms-prosessi.
On todennäköistä, että joskus GNU/Linuxia käyttäessäsi ohjelma jää jumiin ja sinulla ei ole muuta keinoa kuin tappaa tämän ohjelman prosessi. Prosessin tappaminen tapahtuu komennolla "[[kill]] %työnumero", "kill PID tai [[killall]] ohjelmannimi". Ohjelman PID:n saat esimerkiksi komennoilla "[[ps]] -A , [[pstree]] -p" tai [[top]]. Ottakaamme esimerkiksi PID:n hakemisessa ohjelma pstree ja tappakaamme jumittunut xmms-prosessi.


Katsotaan käynnissä olevien prosessien määrä
Katsotaan käynnissä olevien prosessien määrä
Rivi 62: Rivi 63:
Katsotaan PÄÄLLIMMÄISEN xmms-prosessin PID ja tapetaan se (prosessi lihavoitu)
Katsotaan PÄÄLLIMMÄISEN xmms-prosessin PID ja tapetaan se (prosessi lihavoitu)
  kill 25068
  kill 25068
Tapetaan ohjelman killallin avulla antamalla sen nimi:
killall xmms
Nyt prosessi on kuollut ja ohjelman pitäisi olla sulkeutunut.
Nyt prosessi on kuollut ja ohjelman pitäisi olla sulkeutunut.


Rivi 69: Rivi 72:


[[Luokka:Käsitteet]]
[[Luokka:Käsitteet]]
[[Luokka:Järjestelmä]]
[[Luokka:Ohjeet]]
4 316

muokkausta

Navigointivalikko