SO-01 Introdução aos Sistemas Operacionais
-
Upload
eduardo-nicola-f-zagari -
Category
Technology
-
view
8.540 -
download
3
description
Transcript of SO-01 Introdução aos Sistemas Operacionais
Introdução
2 Sistemas Operacionais Eduardo Nicola F Zagari
Programa do Curso Bibliografia Funções do SO Componentes do Sistema System Calls
3 Sistemas Operacionais Eduardo Nicola F Zagari
Gerência de Processos: compartilhamento de recursos, comunicação e sincronização entre processos e algoritmos de escalonamento.
Gerência de memória: alocação, proteção, memória virtual, paginação e segmentação.
Sistemas de Arquivos. Camada de Entrada e Saída. Laboratório: Estudos de Casos
4 Sistemas Operacionais Eduardo Nicola F Zagari
F. Machado; L. Maia - “Arquitetura de Sistemas Operacionais”, LTC, 3a Edição, 2002
G. Gagne, A. Silberschatz; P. Galvin - ”Sistemas Operacionais – com Java" - Campus, 2004
A. Tanenbaum - “Sistemas Operacionais Modernos”, Pearson Brasil, 2003
A. Tanenbaum; A. Woodhull - “Sistemas Operacionais: Projeto e Implementação”, Bookman, 2a edição, 2000
5 Sistemas Operacionais Eduardo Nicola F Zagari
Um SO é uma “interface” entre o hardware e os processos, que o usuário desenvolve, ou mesmo entre o hardware e o usuário
Um SO objetiva a utilização conveniente e eficiente dos recursos da máquina
6 Sistemas Operacionais Eduardo Nicola F Zagari
Função de apresentar ao usuário uma máquina com características: Facilidade de Operação
Interface de programação mais amigável – Escrita em disco flexível
Extensão das Capacidades da Máquina Múltiplos usuários e sistemas de proteção de acesso
7 Sistemas Operacionais Eduardo Nicola F Zagari
Função de controlar (ou gerenciar) a utilização de todos os recursos fornecidos pelo hardware e a sua distribuição entre os diversos programas que competem por ele de forma a garantir: a execução correta dos diversos programas alta eficiência na utilização dos recursos
Dentro deste ponto de vista, então, ao S.O. compete: cuidar de quem está usando que recurso, aceitar (ordenadamente) requisições de um dado recurso, realizar a contagem de utilização de recursos, mediar conflitos nos pedidos de recursos por vários programas.
8 Sistemas Operacionais Eduardo Nicola F Zagari
Gerência de Processos Gerência da Memória Principal Gerência de Arquivos Gerência do Sistema de I/O Gerência de Armazenamento Secundário Rede Sistema de Proteção Sistema Interpretador de Comandos
9 Sistemas Operacionais Eduardo Nicola F Zagari
Um processo é um programa em execução Um processo necessita de certos recursos, incluindo tempo
de CPU, memória, arquivos e dispositivos de I/O para realizar sua tarefa
O sistema operacional é responsável pelas seguintes atividades em relação à gerência de processos: Criar e excluir processos Suspender e retomar processos Fornecer mecanismos para:
Sincronização de processos Comunicação de processos
10 Sistemas Operacionais Eduardo Nicola F Zagari
A Memória é um grande vetor de bytes ou palavras (words), cada um com seu próprio endereço É um repositório de dados rapidamente acessíveis
compartilhados pela CPU e pelos dispositivos de I/O O sistema operacional é responsável pelas seguintes
atividades em relação à gerência de memória: Manter registro de quais partes da memória que estão
sendo usados no momento e por quem Decidir que processos deverão ser carregados na memória
quando houver espaço disponível Alocar e desalocar espaço na memória, conforme
necessário
11 Sistemas Operacionais Eduardo Nicola F Zagari
Um arquivo é uma coleção de informações relacionadas definidas por seu criador Normalmente, arquivos representam programas (fonte e objeto) e
dados O sistema operacional é responsável pelas seguintes atividades
em relação à gerência de arquivos: Criar e excluir arquivos Criar e excluir diretórios Fornecer suporte a primitivas para manipular arquivos e diretórios Mapear arquivos no armazenamento secundário Fazer backup de arquivos em meios de armazenamento estáveis
(não-voláteis)
12 Sistemas Operacionais Eduardo Nicola F Zagari
O sistema de I/O consiste de: Um componente de gerência de memória que inclui buffering,
armazenamento em cache e spooling Uma interface geral de driver de dispositivo Drivers para dispositivos de hardware específicos
13 Sistemas Operacionais Eduardo Nicola F Zagari
Como a memória principal (armazenamento primário) é volátil e pequena demais para acomodar todos os dados e programas permanentemente, o sistema de computação deve fornecer armazenamento secundário para dar suporte à memória principal
A maioria dos sistemas de computação modernos usam discos como o principal meio de armazenamento on-line, para programas e para dados
O sistema operacional é responsável pelas seguintes atividades em relação à gerência de disco: Gerência de espaço livre Alocação de espaço (armazenamento) Escalonamento de disco
14 Sistemas Operacionais Eduardo Nicola F Zagari
Um sistema distribuído é uma coleção de processadores que não compartilham memória ou um clock Cada processador tem sua própria memória local
Os processadores no sistema são conectados através de uma rede de comunicação
A comunicação se faz usando-se um protocolo Um sistema distribuído fornece ao usuário acesso a vários
recursos do sistema Acesso a recursos compartilhados permite:
Maior velocidade de computação Aumento da disponibilidade de dados Melhor confiabilidade
15 Sistemas Operacionais Eduardo Nicola F Zagari
Proteção se refere a um mecanismo para controle de acesso de programas, processos ou usuários aos recursos do sistema de computação
O mecanismo de proteção deve: Distinguir entre uso autorizado e não-autorizado Especificar os controles a serem impostos Fornecer meios para o cumprimento dos controles
16 Sistemas Operacionais Eduardo Nicola F Zagari
Muitos comandos são dados ao sistema operacional através de instruções de controle que lidam com: Criação e gerência de processos Tratamento de I/O Gerência de armazenamento secundário Gerência de memória principal Acesso ao sistema de arquivos Proteção Rede
17 Sistemas Operacionais Eduardo Nicola F Zagari
O programa que lê e interpreta instruções de controle é chamado de:
Interpretador de linha de comando shell (no UNIX)
Sua função é obter e executar a próxima instrução de comando
18 Sistemas Operacionais Eduardo Nicola F Zagari
System calls (ou Chamadas de Sistema) fornecem a interface entre um programa em execução e o sistema operacional Normalmente disponível como instruções em linguagens de
montagem Linguagen definidas para substituir linguagens de montagem para
programação de sistemas permitem as chamadas de sistema serem feitas diretamente (p.ex., C, C++)
Três métodos são usados para se passar parâmetros entre um programa em execução e o sistema operacional Passagem de parâmetros em registradores Armazenamento de parâmetros em uma tabela dentro da memória
e o endereço da tabela é passado como um parâmetro dentro do registrador
Push (armazenamento) de parâmetros na pilha pelo programa e pop (recuperação) da pilha pelo sistema operacional
19 Sistemas Operacionais Eduardo Nicola F Zagari
20 Sistemas Operacionais Eduardo Nicola F Zagari
Controle de processo Gerenciamento de arquivos Gerenciamento de dispositivos Manutenção de informação Comunicações