Sistemas Operacionais IProf. José Gonçalves P. FilhoLPRM/DI/UFES 2004/2
Apresentação
Aula 1
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Objetivo
Apresentar os fundamentos teóricos dos sistemas operacionais modernos, enfatizando os seus aspectos de organização interna (arquitetura conceitual) e de estruturas e mecanismos de implementação.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Horários
Ciência da Computação 2as. de 13:00 às 15:00h 5as. de 17:00 às 19:00h
Engenharia de Computação 2as. de 11:00 às 13:00h 5as. de 9:00 às 11:00h
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Programa da Disciplina (1)
1. Introdução 4h Visão abstrata e Organização Interna Histórico e classificação Mono x Multiprogramação Mecanismo de Interrupção e Modos de Operação da UCP
2. Gerência de Processos12h Processo, estados de um processo, filas do sistema Políticas de escalonamento de processos
3. Concorrência e Paralelismo 8h Técnicas de comunicação e sincronização de processos Programação com Threads
4. Deadlocks 6h Métodos de prevenção, detecção e recuperação de deadlocks
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Programa da Disciplina (2)
5. Gerência de Memória 10h Conceitos básicos Técnicas de gerência de memória real e virtual Aspectos de implementação
6. Sistema de Arquivos 6h Arquivos e diretórios Implementação de sistemas de arquivos Segurança e mecanismos de proteção
7. Gerência de Entrada e Saída 6h Controladoras de periféricos Políticas de E/S e Drivers de dispositivos Organização do software de E/S
8. Estudo de Caso 8h
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Bibliografia
Operating systems concepts - sixth edition. Abraham Silberschatz, Peter B. Galvin and Greg Gagne, USA: John Wiley & Sons, 2002.
Operating systems: internals and design principles – fourth edition. William Stallings, USA: Prentice-Hall, 2001.
Sistemas operacionais: projeto e implementação - 2a. Edição. Andrew S. Tanenbaum e Albert S. Woodhull, Porto Alegre: Bookman, 2000.
Sistemas Operacionais - 2ª Edição (série didática – UFRGS), Rômulo S. de Oliveira, Alexandre S. Carissimi e Simão S. Toscani, Editora Sagra-Luzzato, 2001.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Critério de Avaliação
Quatro provas parciais (P1,P2,P3,P4 ) P1 = assuntos 1 e 2 P2 = assuntos 3 e 4 P3 = assunto 5 P4 = assuntos 6 e 7
Média parcial = (P1 + P2 + P3 + P4)/ 4
Observações: 1) Média parcial < 7,0 prova final.2) Não haverá provas de reposição (à exceção dos casos previstos em lei).3) Pedidos de revisão devem ser formalizados junto ao DI (observar os prazos
legais).4) Trabalhos teóricos e práticos são obrigatórios. Listas de exercícios são
opcionais.5) Cada trabalho não entregue acarretará uma penalidade de -0,5 ponto na
média parcial.
Introdução (1)
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Sistema de Computação
Hardware Provê os recursos básicos de computação (UCP, memória, dispositivos
de E/S). Programas de aplicação
Definem as maneiras pelas quais os recursos do sistema são usados para resolver os problemas computacionais dos usuários (compiladores, sistemas de banco de dados, video games, programas financeiros, etc.).
Usuários: Pessoas, máquinas, outros computadores.
Fato: o hardware de um computador, sozinho, não fornece um ambiente simples, flexível e adequado para o desenvolvimento e uso dos programas de aplicação dos usuários.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Visão Abstrata (1)
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Um Sistema Operacional...
... possibilita o uso eficiente e controlado dos diversos componentes de hardware do computador (unidade central de processamento, memória, dispositivos de entrada e saída).
... implementa políticas e estruturas de software de modo a assegurar um melhor desempenho do sistema de computação como um todo.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Definição (1)
Nome dado a um conjunto de programas que trabalham de modo cooperativo com o objetivo de prover uma máquina mais flexível e adequada ao programador do que aquela apresentada pelo hardware sozinho.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Definição (2)
“A program that controls the execution of application programs.”
“An interface between applications and hardware.”
“Programa que age como um intermediário entre o usuário de um computador e o hardware deste computador”.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Definição (3)
“Resource allocator”Manages and allocates resources.
“Control program”Controls the execution of user programs and
operations of I/O devices . “Kernel”
The one program running at all times (all else being application programs).
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Função de um S.O.
“A principal função de um sistema operacional é prover um ambiente no qual os programas dos usuários (aplicações) possam rodar”.
“Isso envolve definir um framework básico para a execução dos programas e prover uma série de serviços (ex: sistema de arquivos, sistema de E/S) e uma interface de programação para acesso aos mesmos”.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Visão Abstrata (2)
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Características Desejáveis (1)
Eficiência Baixo tempo de resposta, pouca ociosidade da UCP
e alta taxa de processamento. Confiabilidade
Pouca incidência de falhas e exatidão dos dados computados.
Mantenabilidade Facilidade de correção ou incorporação de novas
características. Pequena dimensão
Simplicidade e baixa ocupação da memória
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Características Desejáveis (2)
Concorrência Existência de várias atividades ocorrendo
paralelamente. Ex: execução simultânea de “jobs”, E/S paralela ao
processamento. Compartilhamento de recursos
Uso coordenado e compartilhado de recursos de HW e SW.
Motivação: custo de equipamentos, reutilização de programas, redução de redundâncias, etc.
Armazenamento de dados a longo prazo.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Organização Típica
Núcleo Responsável pela gerência do processador, tratamento de interrupções,
comunicação e sincronização de processos. Gerente de Memória
Responsável pelo controle e alocação de memória aos processos ativos.
Sistema de E/S Responsável pelo controle e execução de operações de E/S e
otimização do uso dos periféricos. Sistema de Arquivos
Responsável pelo acesso eintegridade dos dados residentes na memória secundária.
Processador de Comandos / Interface com o Usuário Responsável pela interface conversacional com o usuário.
Prof. José Gonçalves - DI/UFESSist. Operacionais - 2003/2
Homework ...
Ler o texto sobre a evolução dos S.O. Ler o texto sobre a evolução do sistema
operacional Unix.