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

Software Básico


2o Semestre de 2008

Professora: Jussara M. Almeida (sala 4036)
Carga Horária: 60 cr
Horário: Segundas e Quartas, 09:25 às 11:05
Local: ICEx, sala 2013
Estagiário em Docência: Flávio Vinícius


Programa Calendário Avaliação Transparências Referências Versão PDF

Avisos

 

 

  • Exame Especial: 18/12 as 10:00 na sala 2013
  • Notas das provas disponíveis aqui
  • TP3 já está disponível
  • Lista de exercícisios 3 já está disponível!
  • TP2 já está disponível
  • Prova 1 marcada para dia 17 de Setembro
  • Lista de Exerícios 1 disponível
  • Não haverá aula no dia 02 de Setembro
  • Bem vindos ao site da disciplina Software Básico, 2o semestre de 2008

  • Informações gerais


    Objetivo

    Essa disciplina visa introduzir o aluno aos detalhes de funcionamento do computador. Nela os alunos terão contato direto com a máquina e estudarão os mecanismos necessários para a criação e execução de programas no computador. Ao final da disciplina o aluno terá um conhecimento sólido a respeito dos princípios gerais dos computadores, como funcionam e como são construídos. O foco da disciplina está no baixo nível do hardware e software e como eles influenciam as decisões de programação em linguagens de alto nível.


    Ementa

    Noções básicas de arquitetura de computadores. Linguagens de máquina e de montagem ("Assembly"). Montadores, macroprocessadores, carregadores e ligadores. Programação de entrada e saída. Nível de máquina de sistemas operacionais.


    Pré-requisitos
    Conhecimento sólido de programação de computadores e noções básicas de sistemas lógicos


    Programa

    A disciplina pretende oferecer uma visão sistêmica dos princípios básicos de funcionamento dos computadores modernos. Nesse sentido, aspectos de hardware são apresentados sempre considerando seu impacto sobre o desenvolvimento de software e os princípios de desenvolvimento de programas são analisados no contexto da sua interação com o hardware. A organização dos sistemas de computação é discutida usando a abordagem de níveis de abstração, onde cada novo nível de abstração define uma máquina virtual sobre a qual novos serviços se tornam disponíveis. Uma visão geral de sistemas operacionais como um nível de abstração importante no entendimento dos computadores modernos também é apresentada. Os novos recursos de virtualização também são discutidos nesse contexto. Finalmente, dada sua importância crescente no cenário de computação atual, conceitos de processamento paralelo são discutidos ao longo de todo o curso, com ênfase na disponibilidade cada vez maior de máquinas com múltiplas unidades de processamento (em soluções como hyper-threading e multi-core, por exemplo).


    Avaliação




    Referências



  • About this document ...
    Jussara Marques de Almeida 2008-08-15