BACI
[jBACI] http://inside.mines.edu/~tcamp/baci/baci.html (M. Ben-Ari)- sisältää graafisen käyttöliittymän BACI-simulaattoriin Windows-ympäristöön
(includes graphical UI to Windows BACI) - käytetään kurssilla samanaikaisuuden havainnollistamiseen ja harjoitteluun
(used for concurrency illustration and practice) - install to Windows: load version 1.4.6 jBACI executable files and example programs (v 1.4.5 local copy), unzip, edit config.cfg to have correct paths to compiler bin/bacc.exe and bin/bapas.exe as well as for directory examples, click jbaci.jar or run.bat
For example,
.... SOURCE_DIRECTORY=t\:\\tktl\\Kurssit\\rio\\jbaci_test\\examples .... PASCAL_COMPILER=t\:\\tktl\\Kurssit\\rio\\jbaci_test\\bin\\bapas.exe .... C_COMPILER=t\:\\tktl\\Kurssit\\rio\\jbaci_test\\bin\\bacc.exe ....
- jBACI Concurrency Simulator User Guide (M. Ben-Ari, local copy)
- jBACI examples (local copy) from jBACI installation
- LINUX (26.1.2012, Tommi Tuura ):
- Hei, en tiedä onko asiasta joku maininnut jotain, mutta jotkut latauslinkit bacille tai binääreille ovat vanhoja/eivät toimi. Itse sain seuraavanlaisella toiminnalla linuxissa toimimaan:
==================
1) Imuroi windows-binääri versiosta 1.4.6 täältä: http://code.google.com/p/jbaci/downloads/list
2) Pura se sinne missä haluat sen pitää. (Varoitus, tiedostot leviävät siihen hakemistoon missä purat zipin ellet erikseen käske niitä omaan kansioonsa.)
3) Imuroi kääntäjäbinäärit linuxille tästä: http://inside.mines.edu/~tcamp/baci/balnxxe-2007Nov25.tar.gz
4) Pura se ja siirrä tiedosto "bacc" äsken purkamasi windows-binäärizipin bin-alihakemistoon.
5) siirry itse tuohon bin -hakemistoon ja katso komennolla pwd koko tiedostopolku jossa olet.
6) Muokkaa tiedostoon config.cfg kohtaan C_COMPILER arvoksi bacc-tiedosto koko polkunsa kanssa. Esimerkki, jos kohdassa 5 saamasi polku oli /fs-X/Y/tunnus/kurssit/rio/jbaci/bin:
C_COMPILER=/fs-X/Y/tunnus/kurssit/rio/jbaci/bin/bacc
Nyt jbacin pitäisi toimia laitoslinuksissasi kun siirryt ensin cd -komennolla hakemistoon, jossa jbaci.jar sijaitsee ja annat komennon "java -jar jbaci.jar". ==================
Graafisen ohjelmointikirjaston kanssa minulla tosin on edelleen ongelmia. Esim. viime vuoden laskareissa 4 esitetty visualisointikoodi ei toiminut koska kääntäjän mielestä create/moveto/call -tunnuksia ei ole määritelty.
...muistaakseni minulla oli jokseenkin sama ongelma myös viime keväänä itselläni.
- Hei, en tiedä onko asiasta joku maininnut jotain, mutta jotkut latauslinkit bacille tai binääreille ovat vanhoja/eivät toimi. Itse sain seuraavanlaisella toiminnalla linuxissa toimimaan:
- LINUX: installoi jBACI Linuxiin Lasse Leinon ohjeiden (2009) mukaan: "Pikaisen kokeilun jälkeen jBACI toimii yhtäläillä linuxissa. Ainoaksi ongelmaksi jää vain se, että kääntäjät ovat paketissa mukana vain exeinä. Apu löytyy BACI:n kotisivuilta, josta löytyy linux ympäristössä toimivat kääntäjät. Näyttäisi ainakin toimivan, kun pikaisesti testasin."
- täältä (http://www.mines.edu/fs_home/tcamp/baci/??) otetaan siis zip-tiedostosta jbaci1-4-5.zip
- uudempi 2007 suora latauslinkki: http://inside.mines.edu/~tcamp/baci/balnxxe-2007Nov25.tar.gz
- täältä ladataan siis kääntäjät Linux-ympäristöön
- polkunimet pitää editoida paikalleen tiedostoon config.cfg
- MAC: Hei, laitoin .zip paketin jakoon Mac OS X käyttöjärjestelmälle kääntämistäni Baci-binääreistä, joita tarvitaan esim jBacin käyttöön OS X käyttöjärjestelmällä. Mielestäni ne voisi laittaa myös jakoon kurssisivulle, kun siellä on Linuxillekin käännetyt binäärit jaossa, ja mainita että systeemin saa toimimaan myös Mac-koneilla, niitäkin kun laitoksella näkee. Paketti löytyy osoitteesta: http://cs.helsinki.fi/u/anttiker/baci_osx.zip (Antti Keränen, 17.1.2011)
- Lataa jBACI täältä.
Pura jBACI zip.
Lataa BACI-kääntäjän OS X binäärit täältä.
Pura baci_osx.zip jBACIn hakemistoon.
Muokkaa config.cfg tiedostoon PASCAL_COMPILER=baci/bapas sekä C_COMPILER=baci/bacc, tai lataa valmis config.cfg, ja korvaa sillä edellinen.
Avaa jbaci.jar, ja käytä ohjelmaa. - Huom. Kääntäjät on käännetty OS X 10.6.6:lla, MacBook Pro 2009:llä, joten binäärit eivät välttämättä toimi Core Duo- ja vanhemmilla prosessoreilla.
- Huom: Keväällä 2012 ympäristö oli ehkä muuttunut hieman, koska "kummatkin polut tulee syöttää absoluuttisina polkuina juureen asti, muuten kääntäminen ei onnistu". (Niko Laitinen, 6.2.2012)
- Lataa jBACI täältä.
(-- [BACI] BACI homepage (samanaikaisuuden hallinnan harjoitustyökalu)
- sisältää graafisen käyttöliittymän (BACI GUI) Unix/Linux-ympäristöihin
- käytetään kurssilla samanaikaisuuden havainnollistamiseen ja harjoitteluun
- asenna BACI Linuxiin Jukka-Pekka Kinnusen ohjeiden avulla:
"Alla olevassa linkissä muutamia havaintomuistiinpanoja kokeiluista
BACI:n kääntämisestä eri Linux-distribuutioissa sekä
Windows/Cygwinissä. Näistä CS-Linux oli helpoin.
http://www.cs.helsinki.fi/u/jpkinnun/2006s/rio/baciohje.html" - User Guide - BACI C-- Compiler and Concurrent PCODE Interpreter (Bynum & Camp), local copy
- User Guide - BACI Pascal Compiler and Concurrent PCODE Interpreter (Bynum & Camp), local copy --)
BACI-järjestelmän käytön UKK (FAQ page for BACI system use)
Opiskelijoiden tekemiä ohjeita (Student-Made Guides)
Tällä sivulla on opiskelijoiden tekemiä ohjeita Rinnakkaisohjelmoinnin kurssia varten. Ohjeet on tehty projektitöinä aikaisemmilla kursseilla. Yksittäinen ohje tulee paremmiksi, kun teet itse sellaisen projektina.
This page has simple guides for Concurrent Programming course. The guides are made in student projects in earlier courses. You may make them better by writing a new guide as a course project. So far, most guides are only in Finnish.
BACI
- jBACI Concurrency Simulator (2008 - Häkkinen, Savolainen, Niemelä)
- jBACI käyttöohje (2008 - Timo Huotari, Arto Kärki, Minna Veljo)
- BACI - Käyttöohje (2007 - Joensuu, Hoppula, Kajander)
Java Threads
- Javan säikeet ja kriittisen vaiheen kontrollointi niiden yhteydessä (2007 - Puikkonen, Gomez-Gomez, Louhiranta)
- Säikeet ja kriittisen vaiheen kontrollointi javalla (2006 - Leino, Kahilakoski)
- Säikeet ja kriittisen vaiheen kontrollointi niiden yhteydessä (2006 - Karimo, Paakkari, Karhu)
Java Semaphores
- Semaforit Javassa (2008 - Kononow, Mattila, Poikolainen)
- Javan semaforit (2007 - Rybicki, Nurmi, Uitto)
- Semaforit Javassa (2006 - Hyvärinen, Aaltonen)
- Semaphores in Java (2006 - Huhtamäki, Merikanto, Nevalainen)
- Javan semaforit (2006 - Holmström, Kemppi, Piippo, Lukkari)
- Johdatus Java 1.5:n semaforeihin (2006 - Pääkkö, Vuorio)
Java Monitors
- Javan monitorit (2006 - Diakite, Ranta, Uusitalo)
- Monitorit-projekti (2006 - Louhio, Sorvo)
JMS - Java Messaging Service
- Java Messaging Service (2008 - Karhu, Laakkonen, Nygrem, Oikarinen, Vartiala)
- Java Messaging Service (2008 - Lehtonen, Kesola, Pullinen)
Java RMI - Java Remote Method Invocation
- RMI - Toimivaa etäproseduuriohjelmointia (2007 - Mäenpää, Sundell, Mäkäläinen)
- Java RMI (2007 - Itäpelto-Hu, Nissi, Itävuo)
Teemu Kerola