5305O3 - Sistemas Operativos I (2005 - 2006)
Up one level- Docente Responsável
- Francisco Soares de Moura
- Docente da aulas teóricas
- Francisco Soares de Moura
- Docentes das aulas teórico práticas
- José Pedro Oliveira
- Teste (10%) + Exame Final (90%)
- Os alunos dispensados das aulas práticas realizam apenas exame, que vale 100% da nota final.
- Introdução aos sistemas operativos modernos
- Gestão de processos: objectivos, estratégias de escalonamento
- Noções de programação concorrente: comunicação e sincronização de processos e threads
- Gestão de memória: sistemas de memória real e virtual, paginação e segmentação
- Gestão de periféricos
- Introdução
- Objectivos e funções de um sistema operativo
- Evolução e estrutura dos sistemas operativos modernos
- Gestão de processos
- Objectivos e critérios de escalonamento
- Estados de um processo, desafectação forçada
- Estratégias de escalonamento: FIFO, SJN, RR, etc
- Estudo de casos: Unix, VMS, Windows NT, etc
- Multiprocessamento: benefícios, impacto no sistema operativo
- Noções de programação concorrente
- Processos versus Threads
- Exclusão mútua, comunicação e sincronização
- Estudo de casos: processos e threads em Unix e Windows NT
- Gestão de memória
- Objectivos, ligação compilador/sistema operativo
- Sistemas de memória real
- Monoprogramação, swapping e overlaying
- Multiprogramação com partições de dimensão fixa e variável
- Sistemas de memória virtual
- Princípios gerais
- Segmentação e paginação
- Objectivos e realização
- Estratégias de alocação/rejeição de memória
- Desempenho de sistemas de memória virtual
- Estudo de casos: gestão de memória em Linux e Windows.
- Gestão de periféricos
- Hardware e software de I/O
- Disco: organização física e escalonamento de pedidos
- Estudo de casos: device drivers em Unix
- Silberschatz et al., Applied Operating System Concepts, John Wiley & Sons, 2000
- A. S. Tanenbaum, Modern Operating System,Prentice Hall, 1992.
- R. Stevens, Advanced Programming in the Unix Environment,Addison Wesley, 1990.
- U. Vahalia, Unix Internals,Prentice Hall, 1996.
Esta disciplina surgiu pela primeira vez no ano lectivo de 1995/96, como consequência da restruturação das Licenciaturas em Engenharia de Sistemas e Informática e Matemática e Ciências da Computação. O seu programa é em grande parte coincidente com o do primeiro semestre da antiga disciplina de Sistemas Operativos, ao qual foram feitas algumas actualizações de modo a acompanhar quer a evolução dos sistemas operativos actuais quer o novo figurino dos dois cursos.
Continua a insistir-se no papel que o sistema operativo tem na definição da "personalidade" de um computador, como fornecedor de serviços às aplicações e como gestor de recursos, e introduzem-se as noções básicas de programação concorrente. O tempo libertado pela transferência da gestão de ficheiros para o segundo semestre é agora aproveitado para explorar o desenvolvimento de aplicações baseadas threads. Esta interface está disponível na generalidade de sistemas operativos actuais (Linux, Solaris, Windows NT, etc).
- Apontamentos das Aulas Teóricas
- Apontamentos das Aulas Teóricas
- Exames de anos anteriores
- Alguns exames de anos anteriores