# Sistemas Operacionais * Curso: Tecnologia em Sistemas para Internet * Disciplina: Sistemas Operacionais * Carga-Horária: 60h (80h/a) Pré-Requisito(s): --- Número de créditos: 4 ## EMENTA Conceitos de Sistemas Operacionais. Gerenciamento de Memória. Processamento de Entrada e Saída. Escalonamento. Concorrência. Gerenciamento de Armazenamento Auxiliar. Estudos de Caso: Windows XP Professional – histórico objetivo e pretensões futuras, noções do projeto, definição e funções de cada camada e dos subsistemas de proteção e emulação, forma de gerenciamento da memória, estratégias de escalonamento dos fluxos de execução, limitações do sistema, comparativo com outros sistemas de mesmo porte, vantagens e desvantagens da sua utilização. Conhecer os princípios básicos do sistema operacionais livres e proprietários. ## PROGRAMA ### Objetivos • Descrever características técnicas e arquitetura de sistemas operacionais; • Conhecer os métodos de gerenciamento de memória e de armazenamento auxiliar, além das principais estratégias de escalonamento de processos, conhecendo os diversos métodos de implementação e gerenciamento da concorrência entre processos; • Estudo de caso: Sistemas Operacionais Windows e Linux. ### Bases Científico-Tecnológicas (Conteúdos) 1. Introdução aos Sistemas Operacionais 1.1. Histórico 1.2. Tipos de SO 1.3. Conceitos Básicos 1.4. Concorrência, Critérios de Projeto. 1.5. Sistemas Distribuídos 1.6. Exemplos de SO 2. Gerenciamento de Memória Conceitos de Memória 2.1. Partições Fixas 2.2. Partições Variáveis 2.3. Memória Virtual 2.4. Proteção, Segmentação e Paginação 2.5. Estratégia de Substituição de Páginas 2.6. Swapping e tamanho do Working Set 3. Processamento de Entrada e Saída (E/S) 3.1. Recursos Básicos de E/S 3.2. Dispositivos Controladores 3.3. E/S Programada 3.4. E/S Por Interrupção 3.5. Acesso Direto à Memória (DMA) 4. Gerenciamento do Processador 4.1. Objetivos - Produção, Consistência e Prioridades 4.2. Estados do Processo 4.3. Estratégias de Escalonamento 5. Concorrência, Sincronização e Comunicação Entre Processos. 5.1. Objetivo e Conceituação 5.2. Exclusão Mútua 5.3. Abordagem de Software 5.4. Exclusão Mútua 5.5. Algoritmos de Dekker, Dijkstra, McGuire, Hoare 5.6. Semáforos 5.7. Monitores 5.8. Paralisações (Deadlocks): Prevenção, Detecção e Correção. 6. Gerenciamento de Armazenamento Auxiliar 6.1. Organização de um HD 6.2. Cilindro, Trilhas, Setores 6.3. Fator de Entrelaçamento 6.4. Raid 6.5. Escalonamento do Acesso ao HD 6.6. Cachês, Diretórios Lineares e Hierárquicos. 6.7. Técnicas de Acesso 6.8. Segurança ### Procedimentos Metodológicos Aulas teóricas expositivas, aulas práticas em laboratório. ### Recursos Didáticos Livros didáticos, projetor multimídia, TV e vídeo, quadro branco, computador, revistas e periódicos, tecnologias da informação e comunicação, entre outros recursos coerentes com a atividade proposta. ### Avaliação • Avaliações escritas e práticas. • Trabalhos individuais e em grupo. • Apresentação dos trabalhos desenvolvidos. ### Bibliografia Básica 1. TANENBAUM, A. Sistemas Operacionais Modernos. São Paulo: Prentice Hall, 2004. 2. SILBERSCHATZ, A. et al. Sistemas Operacionais - Conceitos. São Paulo: Prentice Hall, 2000. 3. OLIVEIRA, R. S. et al. Sistemas Operacionais. Porto Alegre: Sagra Luzzatto, 2001. ### Bibliografia Complementar 1. SILBERSCHATZ, A.; GALVIN, P. B.; GAGNE, G. Fundamentos de Sistemas Operacionais: princípios básicos. Rio de Janeiro: LTC, 2013. 2. FLYNN, I. M.; MCHOES, A. M. Introdução aos sistemas operacionais São Paulo: Cengage Learning, 2008. 3. MACHADO, F. B.; MAIA, L. P. Arquitetura de sistemas operacionais 4. ed. Rio de Janeiro: LTC, 2007. 4. BOWER, T. Operating Systems Study Guide. Disponível em http://faculty.salina.k-state.edu/tim/ossg/index.html. 5. SYDOW, D. P. Programming the Be Operating System: Writing Programs for the Be Operating System. Disponível em http://www.oreilly.com/openbook/beosprog/book/index.html. Software(s) de Apoio: • Sistemas Operacionais Linux e Windows.