Ero sivun ”Tietokoneohjelma” versioiden välillä

[arvioimaton versio][arvioimaton versio]
Poistettu sisältö Lisätty sisältö
Rivi 29:
==Ulkoiset rajapinnat==
 
Tietokoneohjelmalla ei olisi paljoakaan merkitystä, mikäli se ei pystyisi kommunikoimaan millään tavalla ympäristönsä kanssa. Tämän vuoksi jokaiseen tietokoneohjelmaan liittyy yksi tai useampi ulkoinen rajapinta, jonka avulla ohjelmalle voidaan antaa syötteita ja jonka avulla ohjelma voi kommunikoida ympäristönsä kanssa. tai antaa muille ohjelmille mahdollisuuden kommunikoida itsensä kanssa.

Tietokoneohjelman ohjaama tai tietokoneohjelmaa ohjaava ympäristö voi olla fyysinen tai virtuaalinen ympäristö - se voi siis koostua fyysisistä laitteistoista tai mahdollisesti toisista tietokoneohjelmista.
 
Tietokoneohjelman kommunikointi ympäristön kanssa voi tapahtua [[Synkroninen_kommunikaati|synkronisesti]] tai [[Asynkroninen_kommunikaatio|asynkronisesti]]. Lisäksi ohjelma voi sallia itsensä [[Keskeytyssignaali|keskeytettävän]] tietyn ulkoisen tapahtuman toimesta. Vaihtoehtoisesti ohjelma voi aika-ajoin tarkkailla ulkoista maailmaa lukemalla ulkoisen rajapinnan kautta tilatietoa.
 
Fyysisten laitteiden ohjaamista varten tietokoneiden prosessoreissa on määriteltynä yksi tai useampia ulkoisia rajapintoja, joiden avulla ohjelma voi kirjoittaa tai lukea tietoa mikroprosessorin suorittimen ulkopuolelta. Konekielen tasolla nämä ovat [[prosessori]]in liitettyjä portteja tai I/O -muistialueita, joiden kautta tietokoneohjelmat pystyvät oikein toimiessaan ohjaamaan fyysisiä tai virtuaalisia kokonaisuuksia sekä lukemaan näiden kokonaisuuksien syöttämää tietoa. Useimmissa tapauksissa tietokoneohjelma ei ohjaa ulkoisia laitteita suoraan, vaan käyttää käyttöjärjestelmän tai jonkun toisen tietokoneohjelman tarjoamia palveluita. Tietokoneohjelmien rakentamista helpotetaan siten, että nämä palvelut abstraktoidaan käyttöjärjestelmän, laiteajureiden tai sovelluskirjastojen (API) avulla siten että ohjelman kirjoittajan ei tarvitse ymmärtää ulkoisten palveluiden tai laitteistojen sisäistä toimintaa.