5305O3 - Sistemas Operativos I (2006 - 2007)
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
- Carlos Baquero
Teóricas: 6a-feira, 10H00-12H00, CP1-A5
- Teste (10%) + Exame Final (90%)
- Os alunos que não estão inscritos nas aulas práticas realizam apenas exame, que vale 100% da nota final.
Num sentido lato, o objectivo da disciplina é ajudar a ter uma visão coerente e integrada de como funcionam os computadores: o que é, em termos físicos, uma aplicação informática, que recursos necessita, como interage com outras, que políticas de gestão são mais adequadas a cada tipo de carga, razões para o sistema estar lento, que atitudes tomar, etc.
Começa-se por sensibilizar os alunos para o 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. Parte-se então para o estudo detalhado dos vários componentes de um sistema operativo clássico, procurando-se perceber os "porquês" das diversas políticas de gestão, que compromissos estão em jogo, que ajuda se poderá esperar do hardware. Investe-se ainda na programação concorrente, a "arte" que consiste em criar aplicações onde várias actividades executam ao mesmo tempo. Além do estudo da comunicação e sincronização entre actividades, desenvolvem-se em Linux pequenos programas constituídos por processos ou threads.
Sendo uma disciplina de Engenharia, é mais importante perceber os "porquês", os compromissos e a forma geral de atacar os problemas do que decorar conceitos teóricos ou reproduzir cegamente as soluções académicas.
Ao longo da disciplina são apresentados inúmeros casos de estudo inspirados em sistemas operativos como o Linux, MacOS, Windows XP, MSDOS, etc.
- 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.
- Apontamentos das Aulas Teóricas
- Apontamentos das Aulas Teóricas
- Exames de anos anteriores
- Alguns exames de anos anteriores
- Inscrição nos Turnos Práticos CP1- A3, 2006-09-15 10:00:00 - 2006-09-15 10:30:00
- A inscrição nos turnos praticos de SO1 terá lugar na aula teórica da próxima 6ª-feira, dia 15 de Setembro. O primeiro(a) a inscrever-se será o aluno(a) sentado na fila da frente, cadeira mais à esquerda para quem está virado para o professor.
- Dúvidas SO1
- 2ª-feira, 10Set2007, 10H00, lab SO