IMPORTANTE:
Todos os programas deste repositório usam
a lib ucontext.h
, que está
descontinuada no MacOS desde o MacOS 10.6. Portanto,
é necessário definir _XOPEN_SOURCE antes de todos os includes
e definições:
// habilita compatibilidade POSIX no MacOS X (para ucontext.h)
#define _XOPEN_SOURCE 600
Fila para treinar manipulação de ponteiros.
Para rodar no MacOS:
clang testafila.c queue.c -o testafila -Wall -DDEBUG
chmod +x testafila
./testafila
Trocas de contexto
Para rodar no MacOS:
clang context.c -o context -Wall -DDEBUG
./contex
Trocas de contexto com funções encapsuladas.
O professor deu o arquivo ppos.h
pronto, e a tarefa era implementar as funções de
ppos.h
no arquivo ppos.c
e compilar junto com seu arquivo de testes para
efetuar a execução.
Para rodar no MacOS:
clang pingpong-tasks1.c ppos.c -o pingpong-tasks1 -Wall -DDEBUG
./pinpong-tasks1
Existem outros 2 testes:
- pinpong-tasks2.c
- pinpong-tasks3.c
A compilação destes é análoga ao do primeiro. As saídas esperadas estão neste link.