Etusivu | Materiaali | Luennot | -- Miksi -- | Ajatuksia |
ITKA203 K�ytt�j�rjestelm�t --- kes� 2007 --- Motivaatiopalopuhe
Miksi K�ytt�j�rjestelm�t -aihetta opetetaan?
*/ ?>
L�hdet��np� liikkeelle nykyhetkest�:
T�n��n on
ja
ilmeisesti juuri nyt luet ITKA203 -kurssin nettisivua.
Aina kun "klikkailet tietokonetta", esimerkiksi surffaat netiss�,
k�yt�t v�lillisesti k�ytt�j�rjestelm�� (esimerkiksi Windowsia tai Linuxia).
T�t� ei tule aina ajatelleeksi, koska varsinaisesti k�yt�t jotakin ohjelmaa
(esimerkiksi nettiselainta) joka puolestaan k�ytt�� alla olevan k�ytt�j�rjestelm�n
tarjoamia palveluita
(grafiikka, ikkunat ja OK/Cancel -painikkeet, hiiri ja n�pp�imist�, internet-yhteys, ...).
Selaamasi nettisivut sijaitsevat tiedostoj�rjestelm�ss�
jonkin WWW-palvelimena toimivan tietokoneen kiintolevyll�; esimerkiksi t�m� sivu on osoitteesta p��tellen
Jyv�skyl�n yliopiston Tietohallintokeskuksen palvelimella, jonka osoite on
www.cc.jyu.fi
.
(Tai ainakin tietyll� tasolla n�ytt�� silt�...)
Siell�
selainohjelman ym. tiedonsiirtokerrosten v�litt�miin klikkailuihisi
vastaa palvelinohjelma, joka k�ytt�� palvelinkoneen k�ytt�j�rjestelm��
antaakseen pyyt�m�si sivun internet-yhteyden yli. Monet nettisivut rakennetaan nyky��n
siten, ett� sis�lt�, kuten valokuvagalleriat tai uutiset, sijaitsevat tietokannassa.
Silloin itse palvelinohjelman p��ll� toimii viel� palvelinskripti, joka hakee tietoja
kannasta
kooten
pyydetyn sivun dynaamisesti.
My�s tietokantapalvelin on ohjelma.
Meille tuttu Korppi-j�rjestelm� on esimerkki laajasta
tietokantasovelluksesta, jonka k�ytt�liittym� on WWW-pohjainen.
T�m� kurssin kotisivukin on "dynaaminen", vaikkei sen
skripti tee juuri kummempaa kuin p�ivitt�� tuon alussa
olevan p�iv�m��r�n.
Kaikkialla on t�llaisia ns. virtuaalikonehierarkioita eli ohjelmia,
jotka k�ytt�v�t apuohjelmia, jotka k�ytt�v�t k�ytt�j�rjestelm��, joka k�ytt��
ns. laitteistorajapintaa. Laitteistorajapintakin sis�lt�� ohjelmakokoelman,
joka komentaa
s�hk�n ja muiden fyysisen reaalimaailman ilmi�iden avulla toimivia laitteita
(kuten reaaliaikakelloa).
Jokainen ty�p�yd�ll�si auki oleva ikkuna kuuluu jollekin ohjelmalle. Huomannet, ett� k�ynniss� voi olla useita ohjelmia yht�aikaa. Miten t�m� moniajo on tehty teknisesti mahdolliseksi? Vastaus opitaan K�ytt�j�rjestelm�t-kurssilla. Lis�ksi tietokoneessasi on jatkuvasti toiminnassa my�s ohjelmia, joita et n�e, mm. laiteajureita. Kaikkialla on ohjelmia (kuten WWW-palvelimia ja tietokannanhallintaj�rjestelmi�, tekstink�sittelyohjelmia, piirto-ohjelmia, pelej�, ...) joiden tulee toimia rinnakkain, yht�aikaa, ilman konflikteja tai virhetilanteita. Ja ei mahda tulla yll�tyksen�, ett� tiedekunnastamme valmistuva ammattilainen tulee suunnittelemaan ja toteuttamaan juuri noita ohjelmia - mieluiten hyvi� sellaisia. Se on vaikeata, ellei jopa mahdotonta, jos taustalla olevaa koneistoa sek� siit� aiheutuvia "vaaranpaikkoja" ei ymm�rr�. (Sivuaineopiskelijalle sanoisin, ett� ei t�m� oppi ojaan kaada teik�l�ist�k��n!)
Joskus olet varmaan selannut nettisivua, josta tulee virheilmoitus, kuten "404 Not Found". Internet on rikki; kuka sen korjaa? Esimerkiksi olisi hyv�, jos sivuston yll�pit�j� mahdollisimman nopeasti ottaisi (h�t�tilanteessa vaikka kes�m�kilt�?) k�mmentietokoneellaan p��teyhteyden WWW-palvelimelle, etsisi virheen aiheuttajan WWW-sivuston ohjelmakoodista ja korjaisi tilanteen heti. (Olipa meill� kerran y�kerhon j�lkeen pienet jatkot, joissa nimelt� mainitsematon ammattilainen k�vi nostamassa kaatuneen WWW-palvelimen pystyyn; siihen ei kauan mene, ja sitten voi taas jatkaa ns. y�p�ivystyst�... mutta ei siit� sen enemp��... �h�m). Miten t�llainen k�yt�nn�ss� tehd��n? Mm. t�m� kuuluu K�ytt�j�rjestelm�t-kurssin aiheisiin... tutustumme unix-shelleihin, jollaisen kautta voi suoraan editoida Unix-tyyppisen k�ytt�j�rjestelm�n varaan rakennetulla palvelimella sijaitsevia tiedostoja. Palvelimella voi olla my�s monta k�ytt�j�� yht�aikaa. Jollain tavoin on voitava huolehtia siit�, ett� jokaisen k�ytt�j�n yksityiset tiedot pysyv�t yksityisin� - tiedostojen k�ytt�- ja lukuoikeudet eli tietojen suojaustasot on hallittava... ja niin edelleen... k�ytt�j�rjestelm��n liittyvi� asioita kaikki.
Siin�k� siis kaikki? Eip� todellakaan; puhutaanpa "ubiquitous computingista", joka l�p�isee nykyisen yhteiskuntamme: Esimerkiksi aina kun soitat kaverillesi, n�pp�ilet k�nnykk��si. Siin� on k�ytt�j�rjestelm�, jonka p��ll� on ohjelmia, kuten puhelinluettelo, kalenteri, WAP-selain, laskin, pelej�, kamera. Ohjelmat k�ytt�v�t puhelimen k�ytt�j�rjestelm�n tarjoamia palveluita (n�pp�imet, n�ytt�, ��net, muistikortit). B�nditreeneiss� kitaristi saattaa k��nnell� nappeja digitaalisesta efektilaitteesta. Vaikkei ehk� k�ytt�j�rjestelm�� perinteisess� mieless�, efektilaitteessa on jonkinlainen tietokone. Se on pit�nyt jonkun ohjelmoida hallitsemaan yhteys signaaliprosessoreihin, AD/DA-muuntimiin, muistipiireihin (efektiasetukset) ja s��t�nappuloihin. Kitaristin efektilaitteessa tarvitaan monia k�ytt�j�rjestelm�n piirteit�! ... puhumattakaan kosketinsoittajan uudesta synasta, jossa on kosketusn�ytt� ja enemm�n muistia kuin puoli vuosikymment� vanhassa PC:ss�. Soitin ei saa lopettaa toimintaansa yht�kki� kesken keikan tai sitten voi Holopainenkin kirota ��neen. Muita esimerkkej� ovat pelikonsolit, DVD-soittimet, televisiot, "minihifit", kannettavat MP3-soittimet, leditaulut (joista n�kee kaupungilla kellonajan ja l�mp�tilan), animoidut mainosn�yt�t (esim. Kauppakadun kompassilla Jyv�skyl�ss�), pankkiautomaatit, teollisuuden mittalaitteet, ilmastointi-, kulunvalvonta- ja h�lytysj�rjestelm�t, puhelinkeskukset, ... ja t�ss� oli vain ensiksi mieleen tulleita esimerkkej� paikoista, joihin sis�ltyy tietokonelaitteistoa. Aina kun jossain on tietokone, siell� on k�ytt�j�rjestelm� (tai jotakin, jolla on k�ytt�j�rjestelm�n piirteit�). Tietokoneita on nyky��n joka paikassa, ja tulevaisuudessa varmasti viel�kin useammassa.
Huhut kertovat, ett� (tietokone)peliteollisuus olisi jo ohittanut mittasuhteissaan elokuvateollisuuden. Pelit ovat kiinnostavia (ainakin minun mielest�ni), joten mainitsen ne yhten� motivoivana esimerkkin� alueesta, jossa laitteiston ja k�ytt�j�rjestelmien tunteminen on ensiarvoisen t�rke��. T�ll� kurssilla opimme siis mit� se tarkoittaa, ett� joku on tietokone. Maailman ensimm�iset tietokoneet 1950-luvulla ja taskussasi oleva k�nnykk� ovat monessa mieless� samanlaisia. K�ytt�j�rjestelm�t-kurssilla tutustumme er��seen (toistaiseksi...) mukavan pysyv��n asiaan, jonka nimeksi on muodostunut Von Neumann -arkkitehtuuri.
Tarkista! Huhut kertovat, ett� mm. uusille Playstationeille pit�� ohjelmoida paljon suoraan konekielell�, koska toistaiseksi ei ole selv��, miten laitteissa k�ytett�ville moniydinprosessoreille pit�isi tehd� virtuaalikonehierarkian alemmat kerrokset. Kun t�m� ratkeaa nykyisille prosessoreille, ovat insin��rit todenn�k�isesti keksineet taas jotakin uutta, ja kehityksen k�rjess� pysyminen edellytt�� syv�llist� ymm�rt�mist� niist� laitteista, joille ohjelmia, esimerkiksi pelej�, tehd��n. Pelikonsolit ovat tietokoneita siin� miss� kaikki muutkin. Jokaisen oma asia on muuten tarkistaa kahden yll� mainitun huhun paikkansapit�vyys jostakin; min� en juuri nyt ehdi, koska pit�� mm. suunnitella yksi kurssi ennen kes��... */ ?>Digitaaliset laskimet (engl. Digital Computer) eli kansanomaisemmin "tietokoneet" eri ilmenemismuodoissaan ovat oheislaitteineen yh� enemm�n jokaisen ihmisen arkip�iv��. Opiskelemme informaatioteknologiaa, ja niinp� hyvin suuri osa tekemisist�mme on yhteydess� n�ihin ohjelmia suorittaviin automaatteihin. Tietoj�rjestelmien suunnittelijan ja toteuttajan on tunnettava koko pelikentt�ns� hyvin, koska muuten sovelluksissa j�� sijaa ihmishenki� vaarantaville virheille, tietoturva-aukoille ja muillekin ik�vyyksille. Vertaan informaatioteknologiaa mielell�ni lentokoneisiin ja lent�miseen: tuolla on maailma t�ynn� lentomatkustajia (vrt. tietotekniikan k�ytt�ji�); sitten on lentokapteeneita (osa meist�) sek� lentokoneiden rakentajia ja suunnittelijoita (my�s osa meist�), lennonjohtajia, lentokonereittien suunnittelijoita, korjausmekaanikkoja sek� heid�n ty�njohtajiaan ja kouluttajiaan... Matkustajan on luotettava siihen, ett� kone pysyy ilmassa: Pilotti tiet��, mit� h�n tekee... Lentokoneen rakentaja tiesi, mit� h�n teki... Verkkopankin yll�pit�j�t varmastikin tiet�v�t, mit� he tekev�t biteille, jotka symboloivat ensi viikolla ruokap�yd�ss�ni konkretisoituvia euroja. T�m� kurssi on ensijohdanto tietokonelaitteistoon ja k�ytt�j�rjestelmiin, ja yll� olevin sanoin se on (ainakin kes�luennoijan mielest�) erinomaisen perustellusti suositeltava, t�rke� ja vakavasti otettava opintojakso. Teimmep� mit� tahansa, koneisto kaikkine rajoituksineen ja mahdollisuuksineen on tasan juuri se. Vakavasti ottaen koetan tehd� kes�kurssista hauskan kokemuksen osallistujille.