Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

so:cronograma_2020_ere1 [2021/04/16 08:58] – criada mazieroso:cronograma_2020_ere1 [2021/04/16 09:03] (atual) maziero
Linha 1: Linha 1:
 +====== CI-1215 - Cronograma 2020 ERE1 ======
 +
 +<note important>
 +  * As atividades indicadas com :!: serão avaliadas (valem nota).
 +  * Os projetos **podem ser feitos em duplas**.
 +  * Entrega até o final da semana seguinte à semana de anúncio, usando o [[http://moodle.c3sl.ufpr.br|Moodle]].
 +  * Leia com atenção as [[teaching:Regras das Atividades de Laboratório]].
 +</note>
 +
 +Informações de acesso:
 +
 +  * [[https://bbb.c3sl.ufpr.br/b/car-chu-evg|Sala de aula online]] (BBB do DINF/UFPR)
 +
 +----
 +
 +=== Semana 1: 27/7 a 31/7 ===
 +
 +Encontros:
 +
 +  * 28/7 17:30 - Apresentação da disciplina
 +  * 30/7 17:30 - Encontro semanal
 +
 +Conteúdo teórico:
 +
 +  * Cap 01 - Conceitos básicos 
 +  * Cap 02 - Estrutura de um SO
 +  * Cap 03 - Arquiteturas de SOs
 +
 +Material complementar:
 +
 +  * [[http://www.minix3.org/docs/login-2007.pdf|Artigo sobre o Minix 3 (microkernel)]]
 +  * [[http://queue.acm.org/detail.cfm?id=2566628|Unikernels]]
 +  * [[https://www.cs.vu.nl/~ast/Publications/Papers/computer-2006a.pdf|Can We Make Operating Systems Reliable and Secure?]] (discussão sobre isolamento de //drivers//)
 +
 +Laboratório:
 +
 +  * Visão geral do [[PingPongOS]]
 +  * P0: [[Biblioteca de filas]] :!: (entrega até 09/8)
 +
 +----
 +
 +=== Semana 2: 3/8 a 7/8 ===
 +
 +Encontros:
 +
 +  * 4/8 17:30 - Encontro semanal
 +
 +Conteúdo teórico:
 +
 +  * Cap 04 - O conceito de tarefa
 +  * Cap 05 - Implementação de tarefas
 +  * Cap 06 - Escalonamento de tarefas
 +
 +Material complementar:
 +
 +  * Exemplos: [[Criação de processos]]
 +  * Exemplos: [[Criação de threads]]
 +  * [[unix:Gestão de processos]]
 +
 +Laboratório:
 +
 +  * P1: [[Trocas de contexto]]
 +  * P2: [[Gestão de tarefas]]
 +
 +----
 +
 +=== Semana 3: 10/8 a 14/8 ===
 +
 +Encontros:
 +
 +  * 11/8 17:30 - Encontro semanal
 +
 +Conteúdo teórico:
 +
 +  * Cap 08 - Comunicação entre tarefas
 +  * Cap 09 - Mecanismos de comunicação
 +
 +Material complementar:
 +
 +  * Exemplos de mecanismos de comunicação: {{:so:mqrecv.c|}}, {{:so:mqsend.c|}},  {{:so:shm.c|}}
 +
 +Laboratório:
 +
 +  * P3: [[Dispatcher]]
 +  * P4: [[Escalonador por prioridades]] :!: (entrega até 23/8)
 +
 +----
 +
 +=== Semana 4: 17/8 a 21/8 ===
 +
 +Encontros:
 +
 +  * 18/8 17:30 - Encontro semanal
 +
 +Conteúdo teórico:
 +
 +  * Cap 10 - Coordenação entre tarefas
 +  * Cap 11 - Mecanismos de coordenação
 +  * Cap 12 - Problemas clássicos
 +  * Cap 13 - Impasses
 +
 +Material complementar:
 +
 +  * O problema da [[exclusão mútua]]
 +  * Exemplos de problemas clássicos: {{:so:pc-sem.c}}, {{:so:pc-cvar.c}}, {{:so:rw1.c}}, {{:so:rw2.c}}, {{:so:filosofos.c}}, 
 +  * Exercícios sobre concorrência do [[http://greenteapress.com/wp/semaphores|Pequeno Livro de Semáforos]]
 +
 +Laboratório:
 +
 +  * P5: [[Preempção por tempo]]
 +  * P6: [[Contabilização]] :!: (entrega até 30/8)
 +
 +----
 +
 +=== Semana 5: 24/8 a 28/8 ===
 +
 +Encontros:
 +
 +  * 25/8 17:30 - Encontro semanal
 +  * 27/8 17:30 - Prova parcial 1 (conteúdo semanas 1 a 4, incluindo PingPongOS), com consulta :!:
 +
 +Laboratório:
 +
 +  * Defesa dos projetos P0 a P6
 +
 +----
 +
 +=== Semana 6: 31/8 a 4/9 ===
 +
 +Encontros:
 +
 +  * 1/9 17:30 - Encontro semanal
 +
 +Conteúdo teórico:
 +
 +  * Cap 14 - Hardware de memória
 +  * Cap 15 - Uso da memória
 +  * Cap 16 - Alocação de memória
 +  * Cap 17 - Paginação em disco
 +  * Cap 18 - Tópicos em gestão de memória
 +
 +Material complementar:
 +
 +  * Localização de variáveis e constantes: {{:so:variaveis.c|}}
 +  * Exemplos de localidade de referência: {{so:tlb-lin.c}}, {{so:tlb-col.c}}
 +  * Exemplo de //thrashing//: {{so:thrash.c}}
 +  * Ordenação de arquivo: {{:so:sort-fopen.c}}, {{:so:sort-mmap.c}}, {{:so:dumpdata.c}}
 +
 +Laboratório:
 +
 +  * P7: [[Tarefa main]]
 +  * P8: [[Operador Join]]
 +  * P9: [[Sleeping]] :!: (entrega até 13/9)
 +
 +----
 +
 +=== Semana 7: 7/9 a 11/9 ===
 +
 +Encontros:
 +
 +  * 10/9 17:30 - Encontro semanal
 +
 +Conteúdo teórico:
 +
 +  * Cap 19 - Hardware de entrada/saída
 +  * Cap 20 - Software de entrada/saída
 +  * Cap 21 - Discos
 +
 +Material complementar:
 +
 +Laboratório:
 +
 +  * P10: [[Semáforos]]
 +  * P11: [[Uso de semáforos]]
 +  * P12: [[Filas de mensagens]] :!: (entrega até 20/9)
 +
 +----
 +
 +=== Semana 8: 14/9 a 18/9 ===
 +
 +Encontros:
 +
 +  * 15/9 17:30 - Encontro semanal
 +
 +Conteúdo teórico:
 +
 +  * Cap 22 - O conceito de arquivo
 +  * Cap 23 - Uso de arquivos
 +  * Cap 24 - Sistemas de arquivos
 +  * Cap 25 - Diretórios e atalhos
 +
 +----
 +
 +=== Semana 9: 21/9 a 25/9 ===
 +
 +Encontros:
 +
 +  * 22/9 17:30 - Encontro semanal
 +  * 24/9 17:30 - Prova parcial 2 (conteúdo semanas 6 a 8, incluindo PingPongOS), com consulta :!:
 +
 +Laboratório:
 +
 +  * Defesa dos projetos P7 a P12
 +
 +----
 +
 +=== Exame final ===
 +
 +  * 01/10 17:30 - Todo o conteúdo da disciplina :!: