PC 2023.1
Horários
- Turma 01
- 3 14:00-16:00 (RE-09)
- 5 16:00-18:00 (RE-09
- Turma 02
- 3 10:00-12:00 (CP001)
- 6 08:00-10:00 (CP001)
Comunicação
Professor: temmanuel@computacao.ufcg.edu.br
Assistentes:
- JUAN SILVA juan.silva@ccc.ufcg.edu.br,
- Diego Cruz de Aquino diego.cruz.aquino@ccc.ufcg.edu.br,
- José Augusto Oliveira Rufino jose.rufino@ccc.ufcg.edu.br
Avaliação
A avaliação será dada por três provas e três laboratórios práticos. Cada prova tem peso 10. Cada laboratório tem peso 2.
Ementa
A disciplina tem os seguintes objetivos gerais:
- Entender os problemas causados pela execução concorrente de tarefas que cooperam.
- Entender os mecanismos usados para permitir compartilhamento de recursos e cooperação em tarefas concorrentes.
- Entender os fatores que afetam o desempenho de programas concorrentes.
Cronograma
Exercícios
Exercícios recomendadas do livro The LittleBook of Semaphores
Referências bibliográficas
- Maurice H., Shavit,N. The art of multiprocessor programming, primeira edição, Morgan Kaufmann, 2008.
- Goetz,B., Peierls, T. Bloch J., Bowbeer J., Holmes D., Lea, D. Java concorrente na prática, primeira edição, Altabooks, 2008.
- Garg, V.K. Concurrent and distributed programming in Java, JohnWiley & Sons, 2004.
- Goetz, B., Peierls, T., Lea, D., Bloch, J., Bowbeer, J. and Holmes, D., 2006. Java concurrency in practice. Pearson Education.
- Donovan, Alan AA, and Brian W. Kernighan. The Go programming language. Addison-Wesley Professional, 2015.
- McKenney, P. (Editor), Is Parallel Programming Hard, and, if so, what can You do about it?
- Garg V.K. Concurrent and distributed programming in Java, JohnWiley & Sons, 2004.
- Oracle, The Java Tutorials: Concurrency
- Drepper, U. What Every Programmer Should Know About Memory