Esse trabalho consiste na implementação de uma biblioteca de processamento concorrente em C++, utilizando o padrão Pthreads.
O funcionamento dessa biblioteca é baseado na criação de tarefas e segue o modelo de execução NxM, onde N representa o número de tarefas a serem realizadas, e M representa os processadores virtuais disponíveis para executar essas tarefas.
Foram implementados 3 algoritmos de escalonamento para a biblioteca: FCFS, SJF, e PRIOc. O algoritmo é definido pela macro ESCALONAMENTO
no arquivo minhaBiblioteca.cpp
.
As maiores dificldades encontradas foram relacionadas à depuração dos programas em paralelo. Para solucionar esses problemas, foram utilizadas as ferramentas valgrind
e gdb
, e a ajuda do professor Gerson.
Para executar o programa exemplo, basta rodar o comando run
do Makefile.
$ make run
- Arthur Alves Cerveira