Objetivo: Fornecer ao aluno conhecimentos sobre sistemas de suporte à execução de programas. Isso se dá através do estudo, projeto e programação de programas controladores de dispositivos, sistemas de interrupções, e sistemas operacionais para microprocessadores e sistemas embarcados. Além disso, é necessário o estudo montadores e de seus sistemas auxiliares, como ligadores e carregadores.
Pré-requisito: CI063, CI067.
O conteúdo desta disciplina pressupõe a capacidade de programar
em C (CI067) e conhecimento básico sobre estruturas de dados
(CI056).
Avaliação: duas provas e um trabalho.
nota = P1*0,35 + P2*0,35 + T*0,3
Não há segunda chamada, exceto nos casos previstos na Resolução 37-97.
Programa: Aulas nas 2as e 5as as 15:30, 2a,5a 1530 PC01.
data fonte assunto - veja a bibliografia (rev 1.2-02jun09) --------------------------------------------------------------------------- 02mar HP_AppA.pdf linguagem de montagem e montadores 05 COD 2.1-4 programação em assembly do MIPS, lógica e aritmética 09 COD 2.1-4 assembly do MIPS - instruções de acesso à memória 12 COD 2.6 decisões e repetição, respostas 16 COD 2.7 funções na linguagem C, slides, exercícios 23 COD 2.7 suporte a funções (cont), recursão, exemplos 26 COD 2.15 vetores, ponteiros, caracteres 30 COD 2.8-12 introdução aos compiladores + CD2.12.pdf 02abr SO 9.4 paginação e memória virtual, slides 06 SO 9.5 segmentação, slides 09 SO 9.1-3 alocação de memória, slides 13 SB 10 processos, chamadas de sistema, slides 16 SB 9, mabi3.29 interface sistema-main(), BSS, slides 23 COD,SB,SO revisão 27 COD,SB,SO primeira prova 30 LL 2 corr prova, da compilação à carga, slides 04mai LL 3.1-11 arquivos objeto, formato ELF, slides 16 LL 4,5 alocação de memória, gerenciamento de símbolos, slides 18 LL 6 bibliotecas, slides 21 mabi 3.xx código independente de posição 25 LL 7 relocação, slides 01jun LL 8,9 carga, bibliotecas compartilhadas estáticas 04 --- atendimento em sala 08 LL 10.1-6 ligação dinâmica e carga 15 LL 10.7-11 ligação dinâmica, desempenho, técnicas avançadas 18 LL 2-10 revisão 22 --- segunda prova 06jul --- final
Listas de exercícios:
programação em assembly,
representação de dados,
funções,
alocação de memória,
memória virtual,
tabelas de símbolos,
relocação,
ligação estática.
Provas de períodos anteriores:
2009-1,
2008-1,
2007-2.
Trabalho:
especificação entrega:
15jun
Bibliografia:
Material auxiliar e documentação: