PLANEJAMENTO 2011 – REVISÃO DE PLANOS DISCIPLINARES Ano Letivo: 2011 Curso: AS Série: 3 Disciplina: AS300309 Carga Anual: 132 SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Ementa: Conceitos básicos de sistemas distribuídos, arquiteturas de núcleo monolítico e de micronúcleo, gerenciamento de processos e threads, escalonamento distribuído, comunicação entre processos, chamada de procedimento remota, envio de mensagens, comunicação de grupo, algoritmos de eleição, sincronização entre processos, serviços distribuídos (serviço de nomes, de arquivos, de gerenciamento de recursos, etc.), segurança, autenticação. Sistemas para computação distribuída de alto desempenho ("grid computing"). Sistemas de objetos distribuídos. Justificativa: Computadores não funcionam sem sistemas operacionais. Diversas técnicas de programação, como programação paralela, tiveram sua origem nos sistemas operacionais. Um Sistema Operacional combina conhecimentos de arquitetura de computadores, linguagens, estruturas de dados, teoria de filas, etc. Um Sistema Operacional é certamente o maior exemplo de programa que cria máquinas abstratas mais confortáveis e seguras que as máquinas reais (memória virtual, NFS, ...). Técnicas usadas na construção de Sistemas Operacionais podem e estão sendo cada vez mais utilizadas em outras áreas. Objetivos Gerais: Dar uma visão geral da arquitetura de sistemas operacionais distribuídos modernos e de estudar os mecanismos, estratégias e protocolos usados para realizar as funções de tais sistemas. Em particular será estudado como as funções tradicionais de sistemas operacionais centralizados, tais como o gerenciamento de processos e a sua sincronização, são implementadas em um sistema distribuído e quais os problemas adicionais que surgem com esta distribuição. Além disto, serão analisados os problemas ligados às exigências adicionais impostas a sistemas operacionais distribuídos, e discutidas as possíveis soluções, a partir de sistemas existentes. Conteúdo Programático Sem. Tópico 1 01 Nº de Carga Aulas Horária Descrição 3 150 Organização e Planejamento didático-pedagógico da disciplina. Elaboração dos instrumentos de avaliação semestral. 1 02 3 150 Apresentação da disciplina, objetivos, conteúdo programático, bibliografia, critérios e sistema de avaliação. Conceitos introdutórios. 1 - - 60 Exercícios de fixação 1 03 3 150 Tipos de Sistemas Operacionais: sistemas monoprogramáveis/monotarefa. Tipos de Sistemas Operacionais: sistemas multiprogramáveis/multitarefa. Sistemas com múltiplos processadores Sistemas Operacionais em lote; Sistemas Operacionais de tempo compartilhado. 1 04 3 150 Licenças de software (Software livre, GPL, proprietário e demais) Sistemas Operacionais proprietários (Microsoft Windows 2003 Server e demais Windows): conceito de sistema operacional proprietário, suas vantagens e desvantagens, e sua forma de comercialização. Sistema Operacional de código aberto (LINUX): conceito de sistema operacional de código aberto, suas vantagens e desvantagens e sua forma de comercialização (distribuições). Conceituar termos referentes a licenças (autor, proprietário.). Ética. 1 - - 60 Exercícios de fixação 150 Laboratório/Sala Inteligente: Demonstração de um sistema operacional proprietário e um sistema operacional de código aberto. Demonstração da interface gráfica de ambos, aplicativos nativos dos sistemas operacionais. 1 05 3 1 06 3 150 Estrutura do Sistema Operacional: shell (interpretador de comandos), systems calls, modos de acesso. Arquitetura monolítica, de camadas, microkernel e máquina virtual. Utilizar o conceito de máquina virtual do Java. 1 - - 60 Exercícios de fixação 1 07 3 150 Estrutura do Sistema Operacional: shell (interpretador de comandos), systems calls, modos de acesso. Arquitetura monolítica, de camadas, microkernel e máquina virtual. Utilizar o conceito de máquina virtual do Java. 1 08 3 150 Virtualização I – Desafios nos negócios e em TI, Desafios Técnicos, Benefícios e Limitações. 1 - - 60 Exercícios de fixação 1 09 3 150 Virtualização II – Desafios nos negócios e em TI, Desafios Técnicos, Benefícios e Limitações. 1 10 3 150 Programas Compactadores : compactadores com perda e sem perda. Tipos de arquivos compactados : MP3, JPG, AVI. Exemplos de compactadores : Zip, Tar, gzip, rar. Explicar um algoritmo de compactação simples por substituição (RLE) 1 - - 60 Exercícios de fixação 1 11 3 150 1 12 3 150 1 - - 60 Exercícios de fixação Sistemas Operacionais Distribuídos e Computação em Grade. Sistemas Operacionais Distribuídos e Computação em Grade. 1 13 3 150 Gerência de Memória: fundamentos, alocação contígua simples, overlay, alocação particionada dinâmica e estática. Estratégias de alocação. Swapping. Obs: A parte relacionada ao Hardware de memória ja foi devidamente explicada na disciplina Organização de Computadores no primeiro ano. 1 14 3 150 Gerência de Memória Virtual: espaço de endereçamento virtual, mapeamento, memória virtual por paginação, política de busca, alocação e substituição de páginas. Conceito de Working set. Bit de validade e TLB. 1 - - 60 Exercícios de fixação 1 15 3 150 Memória virtual por segmentação. Memória virtual por segmentação com paginação). Trashing 1 16 3 150 Sistema de Arquivos: conceito de arquivo, métodos de acesso, estrutura de diretório, estrutura do sistema de arquivos, métodos de alocação e gerência de espaço livre. Exemplos práticos: Microsoft Windows (FAT32, NTFS, NTFS5) e Linux (ext2 e ext3), diferenças e comparações. 1 - - 60 Exercícios de fixação 150 Sistema de Arquivos: conceito de arquivo, métodos de acesso, estrutura de diretório, estrutura do sistema de arquivos, métodos de alocação e gerência de espaço livre. Exemplos práticos: Microsoft Windows (FAT32, NTFS, NTFS5) e Linux (ext2 e ext3), diferenças e comparações. 1 17 3 1 18 3 150 Sistema de Arquivos: Hierarquia de diretórios da família linux (/, /bin, /boot, /dev, /etc, /home, /lib ,/mnt, /lost+found, /proc, /root, /sbin, /tmp ,/usr ,/var Hierarquia de diretórios da família Windows (Especificar) 1 - - 60 Exercícios de fixação 1 19 3 150 Sistema de Arquivos: Hierarquia de diretórios da família linux (/, /bin, /boot, /dev, /etc, /home, /lib ,/mnt, /lost+found, /proc, /root, /sbin, /tmp ,/usr ,/var Hierarquia de diretórios da família Windows (Especificar) 1 20 3 150 Avaliação da Coordenação (AC). 1 - - 60 Exercícios de fixação 1 21 3 150 Aulas de revisão das avaliações da coordenação. Correção e Vista de provas. 1 22 3 150 Encerramento e balanço do semestre. 1 - - 60 Exercícios de fixação 2 23 3 150 Organização e Planejamento didático-pedagógico da disciplina. Elaboração dos instrumentos de avaliação semestral. 2 24 3 150 Laboratório ou Sala Inteligente:: Configuração do sistema operacional para trabalhar em rede. MS Windows (Configurações de rede e comando ipconfig), Linux (arquivos /etc/networks, /etc/hosts e comando ifconfig).Os conceitos mais teóricos de redes, neste momento do semestre, ja foram devidamente explicados na matéria de Redes. 2 - - 60 Exercícios de fixação 2 25 3 150 Subsistema de E/S do kernel. Tratamentos de pedidos de E/S. Sistema de camadas. 150 Laboratório ou Sala Inteligente: comandos básicos do Linux: navegação em diretórios (man, cd, ls, mkdir, cp, mv, rm, wc), comandos para trabalhar com arquivos de texto (cat, less, grep) e conectores de comandos ("|", ">"). Laboratório ou Sala Inteligente: permissões de arquivos: conceitos de dono de arquivo: MS Windows (Gerenciador de Arquivos); 2 26 3 Linux (chmod (com parâmetros com letras e com octais), chown e chgrp) 2 - - 60 Exercícios de fixação 2 27 3 150 Threads Processo (estados do processo, mudança de estados, criação e eliminação de processos, processos independentes, processos foreground e background) 2 28 3 150 Processo (estados do processo, mudança de estados, criação e eliminação de processos, processos independentes, processos foreground e background) 2 - - 60 Exercícios de fixação 2 29 3 150 Gerência do Processador: Critérios de Escalonamento, escalonamento não-premptivo e preemptivo, escalonamento FIFO, escalonamento circular, escalonamento por prioridades. 2 30 3 150 Gerência do Processador: Escalonamento circular com prioridades, política de escalonamento em Sistemas de Tempo Compartilhado e Sistemas de Tempo Real. 2 - - 60 Exercícios de fixação 150 Gerência do Processador (continuação): Escalonamento circular com prioridades, política de escalonamento em Sistemas de Tempo Compartilhado e Sistemas de Tempo Real. 2 31 3 2 32 3 150 Laboratório ou Sala Inteligente: Demonstração dos processos em tempo de execução do sistema operacional proprietário (Gerenciador de Tarefas) e do sistema operacional de código aberto (comandos: ps (parâmetros a, u, x), top, kill). 2 - - 60 Exercícios de fixação 150 Sincronização e Comunicação entre processos: aplicações concorrentes, exclusão mútua, sincronização condicional, conceitos de semáforos, conceitos de monitores, conceitos de troca de mensagens e deadlock (o que é, detecção, prevenção e recuperação) 2 33 3 2 34 3 150 Sincronização e Comunicação entre processos: aplicações concorrentes, exclusão mútua, sincronização condicional, conceitos de semáforos, conceitos de monitores, conceitos de troca de mensagens e deadlock (o que é, detecção, prevenção e recuperação) 2 - - 60 Exercícios de fixação Módulos do Kernel. Gerenciamento de pacotes de software. Vantagens e desvantagens da abordagem do mundo GNU/Linux e da abordagem do mundo Windows (facilidade, confiança, atualizações automáticas). Instalando e removendo novos softwares. 2 35 3 150 2 36 3 150 2 - - 60 2 37 3 150 Virtualização e TI VERDE Exercícios de fixação SERVIDORES DE APLICAÇÃO: configurações de servidores mais ligados a camadas de aplicação 2 38 3 150 Comparação entre servidores LINUX x MICROSOFT 2 - - 60 2 39 3 150 2 40 3 150 Exercícios de fixação DOMINIO, Active Directory e atividades de cadastro de usuários e permissões MÁQUINAS VIRTUAIS: Criação 2 - - 60 2 41 3 150 2 42 3 150 Avaliação da Coordenação (AC). 2 - - 60 Exercícios de fixação 2 43 3 150 Aulas de revisão das avaliações da coordenação. Correção e Vista de provas. 2 44 3 150 Encerramento e balanço da disciplina. 2 - - 60 Exercícios de fixação Total Aulas 132 Hs|Min Exercícios de fixação MÁQUINAS VIRTUAIS: demonstração de outros sistemas operacionais 7920 Avaliação: Média Final (MF) = 5,0 e Frequência mínima de 75% (= Aprovado). Média Final (MF) = 7,0 e Frequência mínima de 70% (= Aprovado). Média Final (MF) = 8,0 e Frequência mínima de 65% (= Aprovado). Média Final (MF) = 9,0 e Frequência mínima de 60% (= Aprovado). MF = [(MS1 x 4) + (MS2 x 6)] / 10 (onde, MS1 = avaliação AC do 1º sem. e MS2 = avaliação AC do 2º sem.). Escala de notas de 0 a 10, com intervalos de 0,5. Estratégias Metodológicas: Aulas expositivas dialogadas. Aulas práticas em laboratório Atividades individuais e em grupo. Análise e simulação de situações reais de trabalho. Suporte Laboratorial: Suporte laboratorial poderá ser utilizado, por meio de máquina virtual, coordenação e acompanhamento do docente. Material de Consumo: Há necessidade de material de consumo. Atividades Externas: Não é necessário a realização de atividades externas. Bibliografia Básica MACHADO, Francis Janeiro: LTC, 2005. Berenger. Arquitetura de sistemas operacionais. Rio de TANENBAUM, Andrew S.. Sistemas operacionais modernos. São Paulo: Pearson Prentice Hall, 2006. SILBERSCHATZ, Abraham. Sistemas Janeiro: Elsevier, 2004. operacionais com Java. Rio de Bibliografia Complementar DEITEL, H.M.. Sistemas operacionais. São Paulo: Pearson Prentice Hall, 2005. MORIMOTO, Carlos E.. Redes e servidores Linux : guia prático. Porto Alegre: Sul, 2006. NEMETH, Evi. Manual completo do Linux : guia do administrador. São Paulo: Pearson Prentice Hall, 2007. BADDINI, Francisco. Windows server administração. São Paulo: Érica, 2007. 2003 em português : implementação e CORTES, Pedro Luiz. Sistemas operacionais : fundamentos. São Paulo: Érica, 2003. Sugestão de Leitura GUIMARÃES, Célio Cardoso. Princípios Janeiro: Campus, 1989. de sistemas operacionais. Rio de TOSCANI, Simão Sirineo. Sistemas operacionais e programação concorrente. Porto Alegre: Sagra Luzzatto, 2003. DAVIS, William S.. Sistemas Janeiro: Campus, 1991. operacionais : uma visão sistemática. Rio de NORTON, Peter. Guia do DOS 5. Rio de janeiro: Campus, 1992. NORTON, Peter. Guia completo do Linux. São Paulo: Berkeley, 2000. CARISSIMI, Alexandre; OLIVEIRA, Romulo Silva De; TOSCANI, Simao. Sistemas Operacionais. Porto Alegre: Bookman Companhia Ed, 2010. 11 v. (LIVROS DIDATICOS INFORMATICA UFRGS). CAMARGO, Raphael Yoqoingawa de. Armazenamento distribuído de dados e checkpoint de aplicações paralelas em grades oportunistas. Dissertação. São Paulo, USP: 2007. Revista de Informática Teórica e Aplicação - RITA - Volume VIII, Número 3, Dezembro de 2001 . UFSC Revista Brasileira de Computação. São Paulo, Sociedade Brasileira de Computação.