Objetivos / Competências
A disciplina de Sistemas Operativos tem como objectivo possibilitar a formação em vários aspectos relacionados com os sistemas operativos, reconhecida que é a importância desta componente dos sistemas computacionais.
Um desses aspectos é a própria compreensão do sistema operativo do ponto de vista da sua utilização. Na medida do possível, concretizar-se-á este ponto pelo estudo de sistema(s) operativo(s) considerado(s) pedagogicamente relevante(s).
Outro aspecto tem a ver com a compreensão dos mecanismos internos dos sistemas operativos, colocando ênfase nas diferentes soluções encontradas para as diversas componentes da respectiva arquitectura.
Finalmente, o aspecto relacionado com a programação de aplicações recorrendo a mecanismos próximos do sistema operativo, bem como a programação e/ou configuração do próprio sistema operativo.
Conteúdos programáticos resumidos
- História, Evolução e Filosofia
- Definição e Objetivos do Sistema Operativo; Evolução dos Sistemas Operativos
- Estrutura do Sistema Operativo: Componentes dos Sistemas Operativos, Programas do sistema, Chamadas ao sistema, Classificação dos SO quanto à estrutura
- Processos e Tarefas
- Escalonamento e Despacho
- Sincronização entre Processos
- Interblocagem (Deadlocks)
- Comunicação entre Processos
- Gestão de Memória
- Gestão de Dispositivos
- Sistemas de Ficheiros
- Acontecimentos Assíncronos e Excepções
- Núcleo do Sistema Unix
- Sistema Operativo UNIX - Nível de Utilização
- Sistema Operativo UNIX - Nível de Programação.
Metodologias de ensino e critérios de avaliação
Apresentando uma elevada componente prática esta é orientada para o método demonstrativo com trabalhos em laboratório onde o aluno, após demonstração, executa a tarefa proposta, desempenhando um papel activo através da realização dos exercícios propostos de modo a complementar de forma efectiva os conceitos ministrados na componente teórica.
A componente teórica com uma abordagem clara do método expositivo, complementada de acordo com a oportunidade com a realização de fichas de trabalho relacionadas com as componentes práticas.
A avaliação dos alunos passa por:
Realização trabalhos práticos em Laboratório para avaliação.
Avaliação na Época normal e recurso:
Trabalhos práticos: 65%
Prova de Conhecimentos teóricos: 30%
Assiduidade: 5%
Avaliação nas restantes épocas:
Trabalho prático: 65%
Prova escrita de conhecimentos teóricos: 35%
Bibliografia resumida
MARQUES, José et al. Sistemas Operativos. 2ª Ed. FCA – Editora de Informática, 2012. ISBN 978-972-722-756-3
TANENBAUM, Andrew S; BOS,Herbert , "Modern Operating Systems (4th Edition)", Pearson Prentice-Hall, 2014. ISBN 978-0133591620
Silberschatz, Abraham; Galvin, Peter: Gagne, Greg, Operating Systems Concepts Essentials, 2nd edition, Wiley, 2014
BACH, M.J. The Design of the Unix Operating System, Prentice Hall, 87, 0-13-201799-7
CURRY, D.A. UNIX Systems Programming for SVR4, O'Reilly, 96, 1ºed, ISBN: 1-56592-163-1
GRAY, John Shapley. Interprocess Communication in UNIX: the Nooks and Crannies, Prentice-Hall, 98, 2ª ed, 0-13-899592-3
MAUERER, Wolfgang. Professional Linux Kernel architecture. Indianapolis : Wiley Publishing, 2008 ISBN: 978-0-470-34343-2.
NIXON, Robin. Ubuntu : Up and running. Sebastopol, Calif. : O'Reilly, 2010 437 p. CD-ROMISBN: 978-0-596-80484-8.
PEREIRA, Fernando; GUERREIRO, Rui. Linux : Curso completo. Lisboa : FCA -Editora de Informática, 2012, 7ª Ed.