From Agentgroup
Jump to: navigation, search
(Esercizi con synchronized)
Line 13: Line 13:
  
 
'''[[User:Mariachiara | Ph.D. Ricercatrice Mariachiara Puviani]]'''
 
'''[[User:Mariachiara | Ph.D. Ricercatrice Mariachiara Puviani]]'''
 +
 +
= Slide del corso =
 +
Le slide le trovate su google docs.
 +
 +
[https://docs.google.com/a/studenti.unimore.it/presentation/d/13sZmEKlz5_yqd66mdI1ImK-vKw72Glp3BntLd1G49H0/edit?usp=sharing slide della prima lezione].
 +
 +
= Esercizi =
 +
Il testo e le soluzioni agli esercizi di laboratorio saranno pubblicati di settimana in settimana prima delle esercitazioni, in modo da dare agli studenti la possibilità di guardarli prima delle lezioni di laboratorio.
 +
 +
Gli esercizi si trovano su BitBucket a [https://bitbucket.org/agr_unimore/operativesystemsmsc.git questo indirizzo]''': non è necessario creare Account né effettuare Login: il repository è pubblico (read-only).
 +
 +
Potete liberamente scaricare il codice usando [https://git-scm.com/ git] oppure direttamente come file compresso '''.zip'''.
 +
 +
Qualunque studente trovi errori nel codice è '''fortemente''' invitato a comunicarmelo :)
 +
 +
Il codice è stato scritto usando [https://www.jetbrains.com/idea/ IntelliJ], e potrebbero quindi esserci problemi nell'import in altri ambienti (es. in Eclipse): in questo caso, copiare ed incollare i file dentro un progetto Eclipse creato da voi risolve il problema.
 +
 +
Per ogni problema non esitate a contattarmi.
 +
 +
''Marco Galassi''
 +
 +
=== Letture Utili ===
 +
Passaggio di parametri in Java:
 +
* [http://stackoverflow.com/questions/40480/is-java-pass-by-reference-or-pass-by-value Is Java “pass-by-reference” or “pass-by-value”? (StackOverflow)]
 +
* [http://javadude.com/articles/passbyvalue.htm Java is Pass-By-Value, Dammit!]
 +
 +
Java Concurrency Tutorial: [https://docs.oracle.com/javase/tutorial/essential/concurrency/index.html link]
 +
 +
Java Thread Documentation: [http://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html link]
  
 
= Guida Eclipse =
 
= Guida Eclipse =
Line 44: Line 73:
 
[http://{{SERVERNAME}}/didattica/psoNOD/Lastmonitor/TemplateMonitor.java <font COLOR="#0000ff">TemplateMonitor </font>]
 
[http://{{SERVERNAME}}/didattica/psoNOD/Lastmonitor/TemplateMonitor.java <font COLOR="#0000ff">TemplateMonitor </font>]
  
= Esercizi =
+
= Esercizi vecchi =
Il testo e le soluzioni agli esercizi di laboratorio saranno pubblicati di settimana in settimana prima delle esercitazioni, in modo da dare agli studenti la possibilità di guardarli prima delle lezioni di laboratorio.
+
 
+
== Esercizi con synchronized ==
+
 
+
Gli esercizi si trovano su BitBucket a [https://bitbucket.org/agr_unimore/operativesystemsmsc.git questo indirizzo]''': non è necessario creare Account né effettuare Login: il repository è pubblico (read-only).
+
 
+
Potete liberamente scaricare il codice usando [https://git-scm.com/ git] oppure direttamente come file compresso '''.zip''' (c'è un unico branch master).
+
 
+
Qualunque studente trovi errori nel codice è '''fortemente''' invitato a comunicarmelo :)
+
 
+
 
+
Il codice è stato scritto usando [https://www.jetbrains.com/idea/ IntelliJ], e potrebbero quindi esserci problemi nell'import in altri ambienti (es. in Eclipse): in questo caso, copiare ed incollare i file dentro un progetto Eclipse creato da voi risolve il problema.
+
 
+
 
+
Per ogni problema non esitate a contattarmi.
+
 
+
''Marco Galassi''
+
 
+
 
+
=== Letture Utili ===
+
Passaggio di parametri in Java:
+
* [http://stackoverflow.com/questions/40480/is-java-pass-by-reference-or-pass-by-value Is Java “pass-by-reference” or “pass-by-value”? (StackOverflow)]
+
* [http://javadude.com/articles/passbyvalue.htm Java is Pass-By-Value, Dammit!]
+
 
+
Java Concurrency Tutorial: [https://docs.oracle.com/javase/tutorial/essential/concurrency/index.html link]
+
 
+
Java Thread Documentation: [http://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html link]
+
 
+
== Esercizi vecchi ==
+
  
 
Trovate molti testi e soluzioni a [http://www.didattica.agentgroup.unimore.it/wiki/index.php/EsamiPSO questa pagina].
 
Trovate molti testi e soluzioni a [http://www.didattica.agentgroup.unimore.it/wiki/index.php/EsamiPSO questa pagina].

Revision as of 08:21, 7 October 2016

Esercitazioni

Ogni settimana verranno aggiunti in questa pagina gli esercizi proposti a lezione (venerdì mattina in laboratorio LINFA) e la soluzione agli esercizi della settimana precedente.

Informazioni sul docente

Dall'A.A. 2015-16

Galassi Marco

Negli A.A. precedenti

Ph.D. Ricercatrice Mariachiara Puviani

Slide del corso

Le slide le trovate su google docs.

slide della prima lezione.

Esercizi

Il testo e le soluzioni agli esercizi di laboratorio saranno pubblicati di settimana in settimana prima delle esercitazioni, in modo da dare agli studenti la possibilità di guardarli prima delle lezioni di laboratorio.

Gli esercizi si trovano su BitBucket a questo indirizzo: non è necessario creare Account né effettuare Login: il repository è pubblico (read-only).

Potete liberamente scaricare il codice usando git oppure direttamente come file compresso .zip.

Qualunque studente trovi errori nel codice è fortemente invitato a comunicarmelo :)

Il codice è stato scritto usando IntelliJ, e potrebbero quindi esserci problemi nell'import in altri ambienti (es. in Eclipse): in questo caso, copiare ed incollare i file dentro un progetto Eclipse creato da voi risolve il problema.

Per ogni problema non esitate a contattarmi.

Marco Galassi

Letture Utili

Passaggio di parametri in Java:

Java Concurrency Tutorial: link

Java Thread Documentation: link

Guida Eclipse

Eclipse

Classi utili

Package Monitor

Il package monitor è da inserire in ogni progetto per il suo corretto funzionamento

Package JAR

Package Jar

Singoli File

Monitor

Cond

Urgent

Mutex

Template

TemplateMain

TemplateProcesso

TemplateMonitor

Esercizi vecchi

Trovate molti testi e soluzioni a questa pagina.

Esercizi vecchi realizzati con il package monitor.

Esercitazione 1 (Ponte)

30/10/15

Testo degli esercizi: Ponte.pdf


Codice della soluzione es.1 Ponte Semplice:

ProvaPonte (main)

Ponte (interfaccia -opzionale-)

PonteSemplice (monitor)

Auto (processo)


Codice della soluzione es.2 Ponte con capacità limitata: (i file Auto e Ponte sono uguali a quelli dell'esempio precedente)

ProvaPonteCap (main)

PonteCap (monitor)


Codice della soluzione es.3 Ponte con capacità limitata e senza starvation: (i file Auto e Ponte sono uguali a quelli dell'esempio precedente)

ProvaPonteCapStar (main)

PonteCapStar (monitor)


Codice della soluzione es.4 Ponte con capacità limitata e macchine con peso:

ProvaPontePeso (main)

PonteMioPeso (monitor)

AutoPesante (processo)

Esercitazione 2 (Deposito bagagli e Pizzeria al taglio)

13/11/15

Testo degli esercizi: Es2.pdf

Codice della soluzione es.1 Deposito bagagli:

DepositoBagagli (monitor)

ProvaBagagli (main)

UtenteBagaglio (processo)


Codice della soluzione es.2 Pizzeria al taglio

Pizzeria (monitor)

Prova (main)

Cliente (processo)

Fattorino (processo)

Pizzaiolo (processo)


Esercitazione 3 (Raccolta differenziata e Giostra)

27/10/14

Testo degli esercizi: Es3.pdf


Codice della soluzione es.1 Raccolta differenziata:

CentroRifiuti (monitor)

ProvaRifiuti (main)

Camion (processo)

Cittadino (processo)


Codice della soluzione es.2 Giostra:

Giostra

ProvaBambino

Bambino

Giostraio


Esercitazione 4 (Elezioni e Pronto soccorso)

03/11/14

Testo degli esercizi: Es4.pdf


Codice della soluzione es. 1 Elezioni:

MonitorSistemaElettorale (monitor)

ProvaElezioni (main)

Elettore (processo)

Candidato (processo)

Prefetto (processo)


Codice della soluzione es. 2 Pronto Soccorso

PS (monitor)

ProvaPS (main)

Paziente (processo)


Esercitazione 5 (Officina e Parco Giochi)

17/11/14

Testo degli esercizi: Es5.pdf


Codice della soluzione es. 1 Officina

Officina (monitor)

ProvaOfficina (main)

Operaio (processo)

Cliente (processo)


Codice della soluzione es. 2 Parco giochi

ParcoGiochi (monitor)

ProvaParco (main)

Giostra (processo)

Persona (processo)


Esercitazione 6 (Terremoto e Albergo)

24/11/14

Testo degli esercizi: Es6.pdf


Codice della soluzione es.1 Albergo:

Albergo (monitor)

ProvaAlbergo (main)

Gruppo (processo)

Persona (processo)


Codice della soluzione es.2 Terremoto:

Città (monitor)

ProvaCitta (main)

Cittadino (processo)

VVFF (processo)

PC (processo)


Esercitazione 7 (Negozio Cellulari e Elicottero)

01/12/2014

Testo degli esercizi: Es7.pdf

Codice della soluzione es.1 Negozio Cellulari:

Negozio (monitor)

ProvaNegozio (main)

Cliente (processo)

Negoziante (processo)


Codice della soluzione es.2 Elicottero

Elicottero

Prova_volo

Pilota

Passeggero


Centro Prelievi

Codice della soluzione es.1 Centro prelievi:

centro_prelievi (monitor)

prova_prelievi (main)

persona (processo)

medico (processo)


Ferrovia

Codice della soluzione es.2 Ferrovia:

MonitorStazione (monitor)

ProvaStazioneFerroviarie (main)

Treno (processo)

Passeggero (processo)

Ambasciata

Codice della soluzione es.1 Ambasciata:

Ambasciata (monitor)

ProvaAmbasciata (main)

Persona (processo)

Ambasciatore (processo)

Addetto (processo)


Museo

Codice della soluzione es.2 Museo:

Museo (monitor)

ProvaMuseo (main)

Gruppo (processo)


Sala parto

Codice della soluzione es.1 Sala Parto:

Ospedale (monitor)

Prova_parto (main)

Gestante (processo)

Anestesista (processo)


Asilo

Codice della soluzione es.2 Asilo:

Asilo (monitor)

ProvaAsilo (main)

Comune (processo)

Bambino (processo)


Centro agopuntura

CantroAgopuntura (monitor)

ProvaCentro (main)

Pazienti (processo)


Distributore

Codice della soluzione es.1 Distributore:

Distributore (monitor)

Prova (main)

Cliente (processo)

Biblioteca

Biblioteca (monitor)

ProvaBiblioteca (main)

UtenteBiblioteca (processo)


Call Centre

Codice della soluzione es.2 Call Centre:

CallCentre (monitor)

ProvaCallCentre (main)

Addetto (processo)

Risponditore (processo)

Cliente (processo)


Sagra

Codice della soluzione es.1 Sagra:

Sagra (monitor)

prova_sagra (main)

Persona (processo)


Traghetto

Codice della soluzione es.1 Traghetto:

MonitorIsole (monitor)

ProvaTraghetto (main)

Auto (processo)

Traghetto (processo)


Pastificio

Codice della soluzione es.1 Pastificio:

Pastificio (monitor)

prova_pastificio (main)

Mugnaio (processo)

Contadino (processo)


Campo da golf

Codice della soluzione es.2 Campo da golf:

CampoGolf (monitor)

ProvaGolf (main)

GiocatoreGolf (processo)


Frantoio

Codice della soluzione es 2. Frantoio:

Frantoio (monitor)

ProvaFrantoio (main)

Contadino (processo)

Pressa (processo)

Parcheggio

Codice della soluzione es.2 Parcheggio:

Parcheggio (monitor)

ProvaParcheggio (main)

Autoveicolo (processo)

Ufficio postale

ufficio (monitor)

prova_posta (main)

sportello (processo)

cliente (processo)

soluzione alternativa proposta da uno studente:

Ufficio (monitor)

UfficioMain (main)

Addetto (processo)

Cliente (processo)


Lavanderia

Lavanderia

ProvaLavanderia

Cliente


Traghetto

Codice della soluzione es1. Traghetto:

MonitorIsole (monitor)

ProvaTraghetto (main)

Auto (processo)

Traghetto (processo)




Il testo e la soluzione delle prove d'esame li trovate alla pagina relativa agli esami.