Código: | EIC0020 | Sigla: | LCOM |
Áreas Científicas | |
---|---|
Classificação | Área Científica |
OFICIAL | Arquitectura de Computadores |
Ativa? | Sim |
Página Web: | http://web.fe.up.pt/~pfs/aulas/lcom2020/ |
Unidade Responsável: | Departamento de Engenharia Informática |
Curso/CE Responsável: | Mestrado Integrado em Engenharia Informática e Computação |
Sigla | Nº de Estudantes | Plano de Estudos | Anos Curriculares | Créditos UCN | Créditos ECTS | Horas de Contacto | Horas Totais |
---|---|---|---|---|---|---|---|
MIEIC | 221 | Plano de estudos a partir de 2009/10 | 2 | - | 6 | 70 | 162 |
1- Enquadramento
Os dispositivos periféricos são uma parte fundamental dum computador, sem a qual a utilidade ou a facilidade de uso dos computadores seriam significativamente inferiores. A importância destes dispositivos em sistemas baseados em computadores tem crescido desde os primórdios dos computadores (cerca de 1950) e continua com a difusão cada vez maior de sistemas embebidos. Contudo, a programação dos dispositivos periféricos usando a sua interface programática, i.e. a interface de "hardware", requer conhecimentos e técnicas específicas.
2- Objetivos Específicos
Os objetivos da unidade curricular são dotar os estudantes com conhecimentos essenciais para serem capazes de:
3- Distribuição Percentual
Científica: 30%
Tecnológica: 70%
Todos os estudantes que terminarem a unidade curricular com sucesso deverão compreender os principais modelos de acesso a dispositivos periféricos e ser capazes de os aplicar em programas de alto nível relativamente complexos.
Considera-se como essencial para alcançar os objetivos acima enunciados, a aprovação a unidades curriculares (UC) cujo conteúdo é o das UCs:
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.
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 baseada em eventos.
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, ar, diff, patch, Git, doxygen.
"Aprender fazendo". Nas primeiras 8 das aulas laboratoriais os estudantes realizam em grupo pequeno trabalhos práticos sobre periféricos comuns do PC e aplicando técnicas de programação específicas. 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.
Designação | Peso (%) |
---|---|
Teste | 50,00 |
Trabalho laboratorial | 50,00 |
Total: | 100,00 |
Designação | Tempo (Horas) |
---|---|
Estudo autónomo | 20,00 |
Frequência das aulas | 62,00 |
Trabalho laboratorial | 80,00 |
Total: | 162,00 |
Para a obtenção de frequência os estudantes deverão:
1) Ter uma nota mínima de 8 valores em pelo menos um dos testes de programação;
2) Elaborar e apresentar o projeto final de integração
3) Preencher o formulário de auto-avaliação do projeto final de integração.
4) Não exceder o limite de faltas (25% das aulas previstas).
0,25 * (PP1 + PP2) + 0,5 * Projeto
onde
PP1, PP2 - classificação da primeira e da segunda provas de programação, respetivamente
Para aprovação na unidade curricular, os estudantes devem ter uma classificação mínima de 10 valores (em 20) quer na média das provas de programação quer no projeto.
A avaliação dos estudantes inscritos em regimes especiais, TE, DA, ..., é idêntica à dos estudantes inscritos em regime normal.
Realização das provas de programação e de um projeto na ocorrência seguinte da unidade curricular.
Em situações excecionais (por exemplo, alunos Erasmus inscritos na unidade curricular), as aulas poderão ser lecionadas em Inglês.