Laboratório de Computadores
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Arquitectura de Computadores |
Ocorrência: 2011/2012 - 1S
Ciclos de Estudo/Cursos
Língua de trabalho
Português - Suitable for English-speaking students
Objetivos
Os objetivos da unidade curricular são dotar os estudantes com conhecimentos essenciais para serem capazes de:
- utilizar a interface de "hardware" dos periféricos mais habituais de um PC;
- desenvolver "software" de baixo nível e de "software" embebido para a plataforma PC;
- usarem a linguagem de programação C de modo estruturado;
- utilizarem várias ferramentas de desenvolvimento de software.
Todos os estudantes que terminarem a unidade curricular com sucesso serão capazes de compreender os principais modelos de acesso a dispositivos periféricos e aplicá-los em programas de alto nível, relativamente complexos.
Programa
Periféricos de entrada/saída e seus modos de funcionamento.
Mapeamento direto no espaço de endereçamento de memória.
Acesso a periféricos no modo "polled" e por interrupção.
Interrupções nos processadores IA-32, o controlador de interrupções do PC, escrita de rotinas de interrupção em Assembly e em C.
Periféricos típicos de um PC, como o teclado, o rato, a placa gráfica, o relógio de tempo real, o temporizador, o altifalante, o porto série.
Programação na linguagem C: principais diferenças em relação à linguagem C++, métodos para estruturação do código.
Organização da memória em execução. Funções: mecanismo de chamada, passagem de parâmetros, armazenamento local e retorno de valores.
Programação combinada em C e "assembly" dos processadores IA-32.
Criação e utilização de bibliotecas. Ligação estática de código objecto.
Utilização de ferramentas de desenvolvimento de software: cc, make, db, ar, prof, diff, patch, SVN.
Bibliografia Complementar
Muhammad Ali Mazidi; 80X86 IBM PC and Compatible Computers: Assembly Language, Design, and Interfacing Volumes I & II, Prentice Hall, 2003. ISBN: 0-13-061775-X
Daniel W. Lewis;
Fundamentals of embedded software. ISBN: 0-13-061589-7
Observações Bibliográficas
Requisitos recomendados: aprovação nas unidades curriculares (UC) de Programação e de Microprocessadores e Computadores.
Em situações excecionais (por exemplo, frequência da UC por alunos cuja língua nativa não é o Portugês), as aulas poderão ser leccionadas em Inglês.
Métodos de ensino e atividades de aprendizagem
"Aprender fazendo". Em cada uma das 7 primeiras aulas laboratoriais será elaborado um pequeno trabalho prático sobre um periférico do PC e aplicando uma técnica de programação de periféricos. Nas restantes aulas laboratoriais será realizado um projeto proposto pelos estudantes que deverá integrar a maioria dos periféricos e técnicas estudadas.
Nas aulas teóricas será efetuada a exposição dos conceitos, tendo sempre em vista a sua aplicação prática, e serão também esclarecidos os pormenores necessários à realização dos trabalhos práticos.
Software
Minix 3
SVN: Sistema de controlo de versões
VMware Player
Palavras Chave
Ciências Físicas > Ciência de computadores > Arquitectura de computadores
Ciências Físicas > Ciência de computadores > Programação
Tipo de avaliação
Avaliação distribuída sem exame final
Componentes de Avaliação
Descrição |
Tipo |
Tempo (Horas) |
Peso (%) |
Data Conclusão |
Participação presencial (estimativa) |
Participação presencial |
55,00 |
|
|
Desenvolvimento dos trabalhos laboratoriais |
Trabalho laboratorial |
28,00 |
|
2011-11-18 |
Projecto |
Defesa pública de dissertação, de relatório de projeto ou estágio, ou de tese |
40,00 |
|
2011-12-16 |
|
Total: |
- |
0,00 |
|
Componentes de Ocupação
Descrição |
Tipo |
Tempo (Horas) |
Data Conclusão |
Estudo dos conceitos e das APIs |
Estudo autónomo |
39 |
2011-11-18 |
|
Total: |
39,00 |
|
Obtenção de frequência
É obrigatória a elaboração, participação e apresentação do projeto final de integração e não exceder o limite de faltas (25% das aulas previstas).
Fórmula de cálculo da classificação final
Soma_i(0,05 * Nota_Aula_i ) + 0,40 * Projecto + 0,10 * ApreciaçãoGlobal.
onde Nota_Aula_i é a nota de ordem i das notas das aulas de laboratório (por ordem descrescente), e onde i varia de 1 a 10. Ou seja, cada aula de laboratório é avaliada, usando-se as 10 melhores notas para o cálculo da classificação final.
Provas e trabalhos especiais
Em casos limite ou de dúvida poderá ser efectuada no fim do semestre uma pequena prova prática individual que decidirá a aprovação ou a nota final.
Avaliação especial (TE, DA, ...)
DA: Idêntica à dos estudantes normais.
TE: Para além do projecto final, terão ainda de apresentar, em local/hora a combinar com o regente da unidade curricular, 4 trabalhos práticos (1 cada 2 semanas, nas primeiras 8 semanas) idênticos aos trabalhos das aulas laboratoriais. Cada trabalho prático vale 12,5% da nota final, e o projeto vale 50% da nota final.
Melhoria de classificação
Elaboração de um conjunto de trabalhos práticos e de um projeto no ano lectivo seguinte.
Observações
Requisitos recomendados: Aprovação nas unidades curriculares de Programação e de Microprocessadores e Computadores Pessoais.
Em situações excecionais (por exemplo, alunos Erasmus inscritos na unidade curricular), as aulas poderão ser lecionadas em Inglês.