Universidade Federal de Minas Gerais
Instituto de Ciências Exatas
Departamento de Ciência da Computação

 

 

 

SOFTWARE BÁSICO

Aulas: Segundas e Quarta, 9:25 - 11:05, ICEx 2007.
Professor: Renato Ferreira, ICEx 4022.

 

Descrição Geral e Pré-requisitos

Essa disciplina visa introduzir o aluno ao computador. Aqui os alunos terão o contato direto com a máquina e estudarão os mecanismos necessários para a execução de programas no computador. Ao final dessa disciplina o aluno terá um conhecimento sólido a respeito dos computadores, como funcionam e como são construídos. Os objetivos dessa disciplina estão no baixo nível do hardware e como influencia as decisões de programação em linguagens de alto nível. Como pré-requisitos o aluno precisa ter conhecimento sólido de programação de computadores e noções básicas de sistemas lógicos.

 

Tópicos abordados

 

 Bibliografia

 

Programa

#

Data

Assunto

Referências

Obs.

1

17/08

Introdução à disciplina Software Básico

 


2

19/08

Não houve aula

 


3

24/08

Introdução aos sistemas de computadores

Capítulo 1


4

26/08

Evolução histórica dos computadores

Capítulo 1


5

31/08

Arquiteturas de processadores

Capítulo 2

 

6

02/09

Hierarquia de memória

Capítulo 2


7

07/09

Recesso - Independência do Brasil


 

8

09/09

Prova 1

 

 

9

14/09

Linguagem de montagem

Capítulo 7

 

10

16/09

Montador

Capítulo 7

 

11

21/09

Sistema de programação

Capítulo 7

 

12

23/09

Revisão do capítulo 7

Capítulo 7

TP 1

13

28/09

Prova 2



14

30/09

Arquitetura de conjunto de instruções

Capítulo 5


15

05/10

Conjunto de instruções

Capítulo 5

 

16

07/10

Modos de endereçamento

Capítulo 5

TP 2

17

12/10

Recesso - Nossa Senhora Aparecida

 

 

18

14/10

Tipos de instrução

Capítulo 5


19

19/10

Entrada e saída

Capítulo 5

 

20

21/10

Revisão do capítulo 5

Capítulo 5


21

26/10

Recesso - Dia do Servidor Público

 

 

22

28/10

Prova 3

 


23

02/11

Recesso - Finados



24

04/11

Sistema operacional

Capítulo 6


25

09/11

Controle de memória

Capítulo 6


26

11/11

Alocação de Memória

 


27

16/11

Controle de processos

Capítulo 6


28

18/11

Programação Paralela

 


29

23/11

Controle de entrada e saída

Capítulo 6

 

30

25/11

Exemplos e implementação

Capítulo 6


31

30/11

Revisão do Capítulo 6

Capítulo 6

TP 3

32

02/12

Prova 4

 


33

07/12

Recesso - Imaculada Conceição

 


34

09/12

Camada de microprograma

Capítulo 4


35 14/12 Organização de Cache Capítulo 4  
36 16/12 Prova 5    

 

Trabalhos Práticos

Serão 4 trabalhos práticos para construir um mini sistema de programação de baixo nível e mais um trabalho adicional a ser definido ao longo do curso, para escrever um programa em linguagem de montagem, totalizando 5 trabalhos práticos. Os enunciados dos trabalos serão disponibilizados abaixo:

Os trabalhos valem 40% da nota total do semestre. Serão todos individuais, e por favor, sigam as régras básicas de honestidade acadêmica.

A entrega de cada trabalho prático deve ser realizada até a data mostrada no programa da disciplina, acima. A penalização pelo atraso será geométrica com o atraso conforme a fórmula 2^(d-1)/0.32. Essa fórmula dá a porcentagem de desconto para d dias de atraso. Note que depois de 6 dias, o trabalho passa valer 0.

Para entregar o trabalho produza uma coleção compactada com todos os arquivos correspondentes ao código fonte do seu programa. Inclua nessa coleção, também, um Makefile para compilar o seu trabalho usando o GCC que existe em qualquer plataforma. Para aqueles que utilizam Windows, recomendo fortemente mudar de sistema operacional, e enquanto não muda, instale o CYGWIN. Nele tem o GCC. Essa "coleção" pode ser no formato ZIP ou no formato TAR.GZ, e deve conter também o arquivo README que é solicitado na especificação de cada trabalho.

Envie essa coleção em anexo a um email para renato@dcc.ufmg.br com o subject "SBAS-TP*". Onde está o *, substitua para o número do TP que está enviando, por exemplo, TP1 ou TP2, etc. E não coloque as aspas! É importante não enviar programa compilado nessa coleção pois o sistema de email pode interpretar seu anexo como um virus e descartar a sua mensagem.

 

Avaliação

Além dos trabalhos práticos, haverão 5 provas escritas cujas datas estão especificadas no programa da disciplina. Essas provas serão curtas e serão corrigidas pelos próprios alunos no mesmo dia da aplicação. Cada prova vale 15 pontos e haverão mais 3 pontos extras pela correção da prova, que serão verificadas por amostragem pelo professor. Todos os alunos terão pelo menos 1 prova e 1 correção avaliada pelo professor. Não haverão provas suplementares. Das 5 provas serão consideradas apenas as 4 maiores notas, ou seja, se o aluno perder uma prova, ela será automaticamente eliminada e as outras 4 serão consideradas. Casos em que o aluno perde mais de uma prova durante o semestre não devem acontecer, e serão considerados caso a caso. A revisão de cada prova pode ser solicitada ao professor, e será realizada conforme necessidade.

 

Notas parciais

 

 

 


Última atualização: 30/08/2009