(Tätä ohjetta saa käyttää yliopiston opetustarkoituksiin ja jatkokehittelyyn.)

Samankaltaiset tiedostot
jbaci Concurrency Simulator

BlueJ ohjelman pitäisi löytyä Development valikon alta mikroluokkien koneista. Muissa koneissa BlueJ voi löytyä esim. omana ikonina työpöydältä

Kieliversiointityökalu Java-ohjelmistoon. Ohje

1. NetBeans-ohjelman asennus ja käyttöönotto pva

TTY TKT-1110 Mikroprosessorit TKT. HEW-ohjeet ver 1.0

TEHTÄVÄ 1.1 RATKAISUOHJEET

,QWHUQHWVHODLPHQNl\WWlPLQHQ±,QWHUQHW([SORUHU

5. HelloWorld-ohjelma 5.1

SSH Secure Shell & SSH File Transfer

Osa 7: Hahmojen ohjelmointi ja hienosäätö

Uuden työtilan luonti

UpdateIT 2010: Uutisten päivitys

KUVANKÄSITTELY THE GIMP FOR WINDOWS OHJELMASSA

GEOS 1. Ilmastodiagrammi Libre Office Calc ohjelmalla

Autentikoivan lähtevän postin palvelimen asetukset

Tekstieditorin käyttö ja kuvien käsittely

Google-dokumentit. Opetusteknologiakeskus Mediamylly

ohjeita kirjautumiseen ja käyttöön

zotero

1. HARJOITUS harjoitus3_korjaus.doc

JAKELUPISTE KÄYTTÖOHJE 2/6

Ohjeet asiakirjan lisäämiseen arkistoon

Päivitysohje Opus Dental

M-FILES JÄSENREKISTERIN KÄYTTÖOHJE

A. Peruskäyttöohje Digilehtiö

6.1 Tekstialueiden valinta eli maalaaminen (tulee tehdä ennen jokaista muokkausta ym.)

Henkilö- ja koulutusrekisterin asennusohje

2013 -merkistä tunnistat uudet ominaisuudet

SQL Buddy JAMK Labranet Wiki

Ennen varmenteen asennusta varmista seuraavat asiat:

Verkkosivuston hallinnan ohjeet. atflow Oy AtFlow Oy, +358 (0)

Miten siirrän omat työni Office 365:stä Peda.nettiin sekä jaan sen siellä muille Eija Arvola

Ekoweb Oy HUOMIO! Jos sinulla on koneella vanha versio On Call DMS-ohjelmasta poista ensin se ja mahdolliset vanhat ajurit.

Valitse aineisto otsikoineen maalaamalla se hiirella ja kopioimalla (Esim. ctrl-c). Vaihtoehtoisesti, Lataa CSV-tiedosto

H5P-työkalut Moodlessa

OHJE EXCEL-MAKRON LUOMISEKSI JA MAKRON KÄYTÖSTÄ

ClassPad fx-cp400 päivitys. + Manager for ClassPad II Subscription päivitys

HP ProBook 430 G5 kannettavien käyttöönotto

Transkribuksen pikaopas

WINHAWILLE 1 (6) Opiskelijasivut Opiskelijan ohjaus/hh/versio

Let Me Hack It -kurssilla tarvittavat ohjelmat ja välineet

Skype for Business ohjelman asennus- ja käyttöohje Sisällys

OHJE Jos Kelaimeen kirjautuminen ei onnistu Mac-koneella Sisällys

LP-Levyn digitointi tiedostoksi

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen

CSV - XML ohjelman käyttöohje

Retrotec FanTestic ohjelman pikaopas

Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto

Tiedonsiirto helposti navetta-automaation ja tuotosseurannan välillä

NetBeans asennus ja etäkäyttö C-kielen opiskeluun, Windows

HAMINETTI WLAN LIITTYMÄN KÄYTTÖÖNOTTO-OHJE

Internet Explorer 7 & 8 pop-up asetukset

ASCII-taidetta. Intro: Python

Uutiskirjesovelluksen käyttöohje

Skype for Business ohjelman asennus- ja käyttöohje Sisällys

C-ohjelmoinnin peruskurssi. Pasi Sarolahti

KÄYTTÖOHJE. Servia. S solutions

IT-ohjeita. (Diakonia-ammattikorkeakoulu oy, )

Ubuntu - tiedostohallinta

erasmartcardkortinlukijaohjelmiston

Eclipse 3.1 Pikaopas versio 1.0

Octo käyttöohje 1. Sisältö

WCONDES OHJEET ITÄRASTEILLE (tehty Condes versiolle 8)

UpdateIT 2010: Editorin käyttöohje

Muistitikun liittäminen tietokoneeseen

McAfee VirusScan Enterprice asennus

NAVIGAATTORIN ASENNUS JA MUOKKAUS

2017/11/21 17:28 1/2 Tilitapahtumat. Tilitapahtumat... 1 Käyttö:... 1 Asiakirjan kentät:... 1

XML tehtävien työnkulku

Sonera Yrityssähköposti. Outlook 2013 lataus ja asennus

Sähköpostitilin käyttöönotto

Fixcom Webmail ohje. Allekirjoitus. Voit lisätä yhden tai useamman allekirjoituksen.

Pikaohjeita OneNote OPS:in käyttäjille

Moodle-alueen muokkaaminen

Eclipse 3.2 pikku opas versio 1.0. Esittely Uuden projektin perustaminen Sovelluksen luominen Koodin siistiminen Vinkkejä

Päänäkymä Opiskelijan ohjeet Kurssin suorittaminen Opettajan ohjeet kurssin teko

Sivu 1 / Viikin kirjasto / Roni Rauramo

KESKUSTANUORTEN NETTISIVUT- OHJEITA PIIRIYLLÄPITÄJÄLLE 1. KIRJAUTUMINEN

5. HelloWorld-ohjelma 5.1

SNKK:n M-Files jäsenrekisteri

ClassPad fx-cp400 OS2-päivitys. + Manager-ohjelmisto ja Physium-sovellus

INTERBASE 5.0 PÄIVITYS VERSIOON 5.6

BaseMidlet. KÄYTTÖOHJE v. 1.00

HYVÄKSILUKEMISEN TEKEMINEN ILMAN ENNAKKOPÄÄTÖSTÄ

Suvi Junes/Pauliina Munter Tietohallinto/Opetusteknologiapalvelut 2014

Kaakkois-Suomen Ammattikorkeakoulu Oy Mikkelin Ammattikorkeakoulu Oy Kymenlaakson Ammattikorkeakoulu Oy

Ohje 1 (12) Maarit Hynninen-Ojala MOODLE PIKAOHJE. Kirjautuminen Moodleen ja työtilan valitseminen

Pedanet oppilaan ohje Aleksanteri Kenan koulu Eija Arvola

VERKKOVELHO-YLLÄPITOTYÖKALUN KÄYTTÖOHJE

HYVÄKSILUETTUJEN SUORITUSTEN REKISTERÖIMINEN

Ohjeet S-ryhmän tuotetietoportaaliin

YH1b: Office365 II, verkko-opiskelu

1 Yleistä Web-editorista Web-editori -dokumentin luominen Pikatoimintopainikkeet Tallenna... 3

Moodle-alueen muokkaaminen

Salasanojen turvallinen tallentaminen KeePass ohjelmalla

Office 365 palvelujen käyttöohje Sisällys

JOVISION IP-KAMERA Käyttöohje

CipherLab CPT-8001L -tiedonkeruupäätteen käyttö Ecomin kanssa

Kaksinkäsin.fi - ohjeet varaamiseen

Ohje olettaa, että Java on asennettu oletuskansioonsa sekä päivitetty uusimpaan versioonsa ja että selaimen latauskansiona on oletus.

Transkriptio:

jbaci Käyttöohje (Tätä ohjetta saa käyttää yliopiston opetustarkoituksiin ja jatkokehittelyyn.) 1. Yleistä jbaci on työkalu, jota käytetään rinnakkaisuuden hallinnan havainnollistamiseen ja harjoitteluun. Se on rinnakkaisuuden simulaattori, jolla voidaan ohjelmaa suorittaessa tutkia sen eri prosesseja ja niiden suoritusjärjestystä askel askeleelta. 2. Asennusohjeet jbaci tarvitsee toimiakseen Java (SDK tai JRE) version 1.4. Asenna tämä koneellesi, jos sinulla ei sitä vielä ole. 2.1. Asennus Windowsiin o Lataa jbacin versio 1.4.5 koneellesi. Tiedosto löytyy esimerkiksi osoitteesta: http://stwww.weizmann.ac.il/g-cs/benari/jbaci/jbaci1-4-5.zip. o Pura zip -tiedosto haluamaasi kansioon. o Avaa config.cfg tiedosto esimerkiksi notepadiin ja muokkaa oikeat polut seuraaville riveille: SOURCE_DIRECTORY (examples-kansio) PASCAL_COMPILER (bapas.exe) C_COMPILER (bacc.exe) o Bapas.exe ja bacc.exe löytyvät kansiosta bin. Ole erityisen huolellinen sen suhteen, että polkuihin tulee kaksoiskenoviivat tavallisen yhden viivan sijaan. o Avaa run.bat käynnistääksesi ohjelman tai Windowsissa voit myös avata suoraan jbaci.jar tiedoston. 2.2. Asennus Linuxiin o Lataa ja pura jbaci aluksi Windows-ohjeiden mukaisesti o Lataa seuraava tiedosto http://www.mines.edu/fs_home/tcamp/baci/balnxxe-2007jun02.tar.gz 1

o Pura se jbacin bin-kansioon. Voit halutessasi poistaa tästä kansiosta entuudestaan löytyvät bacc.exe ja bapas.exe. Ne korvataan balnxxe-kansiosta löytyvillä bacc- ja bapas-tiedostoilla. o Avaa config.cfg tiedosto esimerkiksi notepadiin ja muokkaa oikeat polut seuraaville riveille: SOURCE_DIRECTORY (examples-kansio) PASCAL_COMPILER (bapas balnxxe-kansiossa) C_COMPILER (bacc balnxxe-kansiossa) o Bapas.exe ja bacc.exe löytyvät kansiosta bin. o Avaa komentotulkki, mene kansioon, johon asensit jbacin, ja kirjoita komennoksi java jar jbaci.jar 3. jbacin käyttö Käynnistettyäsi jbacin, näet ohjelman valikot ja myös tärkeimmät toiminnot sisältävät napit valikoiden alla. Nappien toiminnot löytyvät myös valikoista. Kuva 1: jbacin valikot perustilassa jbacia voi käyttää joko editointi- tai suoritustilassa. Riippuen tilasta, valikon toiminnot ovat joko käytettävissä tai poissa käytöstä. Esimerkiksi editointitilassa toimivat vain ne toiminnot, joita voi käyttää editointiin ja suoritustilassa suoritukseen. Ikkunat näkyvät vain suoritustilassa. Editointitilassa näytetään lähdekoodi, jota voi muokata. Lähdetiedostojen on oltava.cm tai.pm -päätteisiä (eli koodi on oltava kirjoitettu C-- tai Pascal-kielellä), jolloin kääntäjä osaa valita automaattisesti oikean kääntäjän. jbaci näyttää käännöksen tuloksen pop up - ikkunassa. Jos koodissa on virheitä, kursori siirtyy ensimmäisen virherivin alkuun. 2

Kuva 2: jbaci editointitilassa, käännös suoritettuna Kun ohjelma on käännetty oikein, pääsee sitä tarkastelemaan suoritustilaan. Suoritustila on jaettu kahteen osaan: vasemmalla on prosessitaulu ja oikealla ikkunat. Prosessitaulu näyttää jokaisen prosessin omalla rivillään ja tiedot kyseisestä prosessista. 3

Kuva 3: jbaci suoritustilassa Tutustumme aluksi toimintoihin, joita valikot ja ikkunat sisältävät, jonka jälkeen käymme läpi jbacin toimintaa tarkemmin esimerkin avulla. 3.1. Valikot 3.1.1. File-valikko File-valikosta löytyvät perustoiminnot, joista suurin osa toimii ainoastaan editointitilassa: New Open Save Save as Exit Aukaisee uuden tyhjän tiedoston Aukaisee jo olemassa olevan tiedoston Tallettaa tiedoston Tallettaa tiedoston uudella nimellä Sulkee ohjelman 3.1.2. Editor-valikko Editor-valikosta löytyvät toiminnot lähdekoodin muokkaamiseen: 4

Copy Cut Paste Find Find again Kopioi Leikkaa Liitä Etsii sanan tai lauseen koodista Etsii uudelleen saman sanan tai lauseen 3.1.3. Program-valikko Program-valikosta löytyvät toiminnot editointi- ja suoritustilojen käynnistämiseen: Edit Compile Run Vaihtaa suoritustilasta editointitilaan Kääntää lähdekoodin Vaihtaa editointitilasta suoritustilaan Lisäksi suoritustilassa tästä valikosta löytyvät myös seuraavat toiminnot: Go Pause Step source Step pcode Aloittaa ohjelman suorituksen Pysäyttää ohjelman suorituksen Suorittaa lähdekoodia askel kerrallaan Suorittaa konekäskyjä askel kerrallaan 3.1.4. Options-valikko Options-valikossa voi seuraavia asetuksia ottaa käyttöön tai poistaa käytöstä: Pause on Process Swap Tämän ollessa valittuna, ohjelman suoritus pysähtyy aina automaattisesti, kun prosessia vaihdetaan. Show Active Window Tämän ollessa valittuna, näkyy aktiivisen prosessin ikkuna etummaisena koodia suorittaessa askel kerrallaan. Jos asetus ei ole valittuna, ei eri prosesseille avaudu omaa ikkunaa suorituksen aikana. 5

History of Source Steps Tämän ollessa valittuna, näytetään historia-ikkunassa vain lähdekoodin historia. Muulloin näytetään sekä lähdekoodin että konekäskyjen historia. Write History File Tämän ollessa valittuna, talletetaan koko suoritetun lähdekoodin tai kaikkien suoritettujen konekäskyjen historia tiedostoksi. his -päätteinen tiedosto talletetaan samaan kansioon kuin alkuperäinen lähdekoodi. 3.1.5. Windows-valikko Window-valikosta voi avata eri ikkunoita, kun ohjelma on suoritustilassa. Lisätietoa eri ikkunoista löytyy kohdasta: 3.2. Ikkunat. 3.1.6. Help-valikko Help-valikosta löytyy tietoja ohjelman versiosta, sen tekijöistä yms. 3.2. Ikkunat Kun ohjelma on suoritustilassa, avautuu työpöydälle uusia ikkunoita. Ikkunoita pystyy siirtämään hiirellä ja muokkaamaan niiden kokoa haluamakseen. 3.2.1. Process Prosess-ikkuna on jbacin ydin. Se sisältää kolme alavalikkoa: Code, Console ja Details. o Code-valikko näyttää ohjelman koodin. o Source -osassa näytetään ohjelman koko lähdekoodi, ei vain yhden prosessin koodia. o Pcode -osassa näytetään ohjelman konekäskyt, mutta vain valitulta lähdekoodin riviltä, eikä siis koko lähdekoodista. Pcode-osa näkyy ainoastaan, jos Prosess-ikkunan kokoa kasvattaa manuaalisesti. o Variables -osassa näytetään prosessin paikallisten muuttujien arvot. 6

o Console-valikko näyttää, mitä juuri kyseinen prosessi tulostaa, toisin kuin erillinen Console-ikkuna (ks. kohta 3.2.2), jossa näkyy koko ohjelman tulostus. o Details-ikkuna näyttää prosessipinojen sisällön sekä prosessien tilan. 3.2.2. Console Console-ikkuna näyttää, mitä ohjelma tulostaa. 3.2.3. Globals Globals-ikkuna näyttää globaalien muuttujien arvot. 3.2.4. History Historia-ikkuna näyttää viimeiset 150 lähdekoodin suoritusta. 3.2.5. Linda Board Linda on jbacin laajennus, jonka on kehittänyt David Gelernter. Tätä ikkunaan ei tarvita Rinnakkaisohjelmointi kurssilla, jota varten tämä ohje on tehty. Lisätietoja Lindasta löytyy seuraavasta linkistä, josta voit ladata jbaci viralliset ohjeet: http://stwww.weizmann.ac.il/g-cs/benari/jbaci/jbaci1-4-5docs.zip 7

4. Käyttöesimerkki Avaa lähdetiedosto valitsemalla Open File-valikosta. Tämä käyttöesimerkki pohjautuu jbacin mukana tulevaa Hello.pm tiedostoon, joka löytyy examples-kansiosta. Tiedosto avautuu editointitilaan, jossa voit halutessasi muokata lähdekoodia ennen kääntämistä. Kuva 4: Lähdekoodi editointitilassa Käännä ohjelma painamalla Compile-painiketta. Ohjelma ilmoittaa käännöksen onnistumisen tai epäonnistumisen pop up ikkunassa. Jos käännös onnistui, paina Runpainike, jolloin ohjelma siirtyy suoritustilaan. 8

Kuva 5: Suoritustila ennen ajoa Voit ajaa koko ohjelma kerrallaan painamalla Go-painiketta tai voit edetä vaihe kerrallaan painamalla Step Source painiketta kuten alla on tehty. Jos kaikki haluamasi prosessit ei tule itsestään esille, voit valita niitä ikkunan vasemman reunan listasta. 9

Kuva 6: Ohjelmakoodia suoritetaan askel kerrallaan Suorituksen aikana ohjelma tulostukset ilmestyy Console-ikkunaan ja globaalien muuttujien sen hetkiset arvot näkyvät Globals-ikkunassa. 10

Kuva 7: Ohjelmakoodi ajettu loppuun 11

5. Käyttöesimerkki 2 Rinnakkaisohjelmointi kurssilla opiskelevan Tepon täytyy tehdä laskuharjoitustehtävänä koodinpätkä, jonka tulisi toimia sillä tavalla oikein, että koodi antaa tulokseksi ajettaessa aina saman vastauksen. Teppo päättää testata koodiaan jbaci ohjelman avulla tietyn määrän kertoja, vaikka tietääkin, ettei se vielä itsessään riitä osoittamaan koodia oikeelliseksi. Hän kuitenkin haluaa jonkinlaisen suuntaa-antavan näkemyksen koodin oikeellisuudesta, ja uskoo olevan hyvin mahdollista, että koodi on oikein tehty jos jbacilla 20 kertaa ajettuna saadaan tulokseksi aina sama vastaus. -Teppo on jo asentanut jbacin itselleen Windowsiin. Hän menee kansioon, jonne ohjelman tiedostot on tallentanut ja klikkaa run.bat. Näin hän saa auki vielä tyhjän jbacin ikkunan. -Teppo valitsee jbacin ylävalikosta file ja sieltä open ja hakee C -- -kielellä kirjoitetun ohjelmansa laskeyhteen.cm tiedostosta, jonne sen on tallentanut. Koodi avautuu jbacin aiemmin tyhjään ruutuun. -Teppo painaa toimintonapeista COMPILE ja saa virheilmoituksen, jossa sanotaan: error near 'summa', line 11 of file (polku, jonne laskeyhteen.cm on tallennettu) Undeclared identifier 'summa at level 1. Tämän perusteella Teppo huomaa koodistaan sellaisen virheen, ettei hän ole muistanut lainkaan määritellä muuttujaa summa ennen kuin on käyttänyt sitä koodissa muuttujana. -Teppo korjaa virheen ja määrittelee muuttujan summa. Uudelleen compile nappia klikattuaan Teppo saa ilmoituksen: Pcode and tables are stored in (polku\laskeyhteen.pco) Compilation listing is stored in (polku\laskeyhteen.pco) Tästä Teppo päättelee, että kääntäminen on onnistunut ja painaa OK. -Tämän jälkeen Teppo painaa nappia RUN, jolloin hänen eteensä ilmestyvät jbacin pienet eri ikkunat. 12

-Teppo painaa nappia GO, jolloin hänen ohjelmansa ajetaan. Teppo on tällä kertaa kiinnostunut vain ohjelman antamasta lopputuloksesta, joka on tällä kertaa 15, kuten oli odotettua. Teppo painaa uudelleen RUN nappia, tämän jälkeen GO, ja sama toistuu. Tällä kertaa tulokseksi tuleekin 6, mikä ei ollut odotettua. -Teppo palaa napista EDIT tarkastelemaan koodiaan uudestaan. Aikansa pähkäiltyään Teppo huomaa käyttäneensä semaforia hieman virheellisesti. Teppo tekee tarvittavan korjauksen, suorittaa ohjelman kääntämisen uudelleen kuten äskenkin ja ajaa ohjelman. Tällä kertaa hän saa taas odotetun tuloksen. -Teppo ajaa ohjelman yhteensä 20 kertaa ja saa aina saman odotetun tuloksen. Tästä Tepon epäilykset siitä, että koodi toimii oikein ja sen uskaltaa esittää laskuharjoituksissa vahvistuvat. -Teppo sulkee ohjelman painamalla ruksia ohjelmaikkunan ylälaidassa. 13