(toiminnot)

hwechtla-tl: Suorittaminen eli ajaminen

Kierre.png

Mikä on WikiWiki?
nettipäiväkirja
koko wiki (etsi)
viime muutokset


Ohjelma on sellaisenaan oikeastaan vain kielellinen ilmaus. Niin kuin ei ole merkitystä runolla, jota kukaan ei pohdi, ei ole merkitystä ohjelmalla, jota mikään ei suorita.

Ohjelman suorittaminen tarkoittaa sitä, että sen kuvaama toiminta oikeasti tehdään. Jotta ohjelma voitaisiin suorittaa, pitää olla olemassa jokin ohjelmointikielen toteutus.

Suoritettaessa ohjelmasta tulee aktiivinen, toimiva entiteetti, joka noudattaa ohjelmassa kuvattua käytöstä; tätä entiteettiä, ohjelman instanssia, kutsutaan Unix-ympäristössä prosessiksi. Esimerkiksi grep on ohjelma; kun kirjoitan komentotulkissani komennon "grep poks", muodostuu prosessi, aktiivinen grep-ohjelman instanssi, joka etsii sanaa "poks" syötteestään.

Usein jako ohjelman ja ohjelman instanssin välillä on merkityksetön. Siksi sanotaankin, että "ohjelma" tekee sitä ja tätä; oikeasti ohjelma on vain kuvaus tuosta toiminnasta, ja ohjelman instanssi on se, joka jotain tekee.

Joskus tällä jaottelulla on paljonkin merkitystä. Jos esimerkiksi kirjoitat ohjelman (johonkin tiedostoon) ja sitten suoritat sen (eli siitä tulee prosessi), on hyvä ymmärtää, että vaikka prosessi onkin muodostettu ohjelmasi perusteella, se on siitä erillinen ja esimerkiksi alkuperäisen ohjelman muuttaminen (muokkaamalla tiedostoa, johon se on talletettu) ei välttämättä muuta enää ajetun ohjelman, prosessin, toimintaa. Jos haluaa kokeilla ohjelman muunneltua versiota, vanha prosessi pitää lopettaa ja ajaa uusi ohjelma, jolloin tuloksena on uusi, uuden ohjelman mukainen prosessi.


(takaisin ohjelmoinnin käsitteet-sivulle)


kommentoi (viimeksi muutettu 17.12.2005 21:21)