Buscar

Aula Revisão2 av1

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Revisão 2
Prof. Manoel Pedro
Sistemas Operacionais
Componentes do sistema
Podemos Criar um sistema tão grande e complexo quanto um sistema operacional apenas particionando-o em módulos menores. Cada módulo deve ser uma porção bem delineada do sistema, com entradas, saídas e funções cuidadosamente definida.
sexta-feira, 30 de abril de 2010
2
Componentes do Sistema
Gerenciamento de Processos
Gerenciamento da Memória
Gerenciamento de Arquivos
Gerenciamento do Sistema de I/O
Gerenciamento de Memória Secundaria
Conexão de Rede
Sistemas de Proteção 
Sistemas Interpretador de Comandos
Gerenciamento de Processos 
 Um programa, por si só, não é considerado um processo; um programa é uma entidade passiva, com os conteúdos de um arquivo armazenado em um disco, enquanto um processo é uma entidade ativa, com um contador de programa indicando a próxima instrução a ser executada. 
A execução de um processo deve ser seqüencial. A CPU executa uma instrução do processo após a outra, até que o processo se complete.
Em cada momento no maximo uma instrução relacionada ao processo é executado.
sexta-feira, 30 de abril de 2010
4
Gerenciamento de Processos 
 O sistema operacional é responsável pelas seguintes atividades, juntamente com o gerenciamento de processos;
Criar e apagar os processos tanto de sistema como de usuários;
Suspender e recomeçar processos;
Fornecer mecanismos para a sincronização de processos;
Fornecer mecanismos para a comunicação entre processos;
Fornecer mecanismos para a manipulação de deadlock. 
Deadlock – quando dos processos conflitam e bloqueiam o sistema
sexta-feira, 30 de abril de 2010
5
Gerenciamento da Memória Principal
 A memória principal um repositório de dados rapidamente acessíveis, compartilhados entre a CPU e os dispositivos de I/O. O processador central lê instruções a partir da memória principal durante o ciclo de busca de instruções, e tanto lê como grava dados também a partir da memória principal durante o ciclo de busca dos dados. 
Em dado momento, o programa termina sua execução, seu espaço de memória é declarada disponível, e o próximo programa pode se carregado e executado.
sexta-feira, 30 de abril de 2010
6
Gerenciamento da Memória Principal
O sistema operacional é responsável pelas seguintes atividades relacionadas ao gerenciamento de memória:
Monitorar as porções de memória que estão sendo corretamente usadas e por quem estão sendo usadas.
Decidir que processos estão prontos para ser carregados na memória quando o espaço de memória tornar-se disponível.
Alocar e desalocar espaço de memória conforme necessário.
sexta-feira, 30 de abril de 2010
7
Gerenciamento de Arquivos
O Gerenciamento de arquivos é um dos componentes mais visíveis de um sistema operacional. 
Os computadores podem armazenar informações em diferentes tipos de mídia física. Fita magnética, discos magnéticos e disco ótico são as mídias mais comuns. 
Cada uma delas tem suas próprias características e suas própria organização física.
Cada mídia é controlada por um dispositivos, como um driver de disco, que também tem características únicas.
Essas características incluem velocidade de acesso, capacidade de armazenamento, taxa de transferência e método de acesso. (seqüencial ou randômico)
sexta-feira, 30 de abril de 2010
8
Gerenciamento de Arquivos
Quando múltiplos usuários fazem acesso aos arquivos, podemos querer exercer controle sobre quem pode acessar estes arquivos e de que modo (por exemplo, para ler, gravar, anexar) eles podem ser acessados .
O sistema operacional é responsável pelas seguintes atividades relacionadas ao gerenciamento de arquivos.
Criar e apagar arquivos;
Criar e apagar diretórios;
Suportar primitivos para manipulação de arquivos e diretórios;
Mapear arquivos em memória secundaria;
Criar cópias de arquivos em mídias de armazenamento estáveis. 
sexta-feira, 30 de abril de 2010
9
Gerenciamento do Sistema de I/O.
Um dos objetivos de um sistema operacional é torna transparente ao usuários as peculiaridades dos dispositivos especificamente de hardware.
Cada sistema operacional trata esse gerenciamento de uma forma diferente, porem todos devem seguir uma linha que informa o driver correto para cada dispositivo de hardware, bem como um bom gerenciamento de memória para geração de Buffers, Cache e Spooling.
sexta-feira, 30 de abril de 2010
10
Gerenciamento do Sistema de I/O.
 Buffers – É uma região da memória temporária utilizada para escrita e leitura de dados. Os dados podem ser originais de dispositivos (ou processos) externos ou internos ao sistema.
Cache –É um dispositivos de acesso rápido, interno a um sistema, que serve de intermediário entre um operador de um processo e o dispositivo de armazenamento ao qual esse operador acesse.
Spooling (Spool) – refere-se a um processo de transferência de dados colocando-se em uma área de trabalho temporária onde outro programa pode acessá-lo para processá-lo em um tempo futuro. 
sexta-feira, 30 de abril de 2010
11
Gerenciamento de Memória Secundaria
 O principal objetivo de um sistema de computação é executa programa . Estes programas, como os dados que acessam devem esta na memória principal durante a execução.
Como a memória principal é pequena é volátil, o sistema de computação deve fornecer uma memória secundaria, para armazenamento.
A maior parte dos arquivos e programas é armazenada em disco até que seja carregada na memória principal e desse modo utiliza o disco tanto como fonte de dados como destino de seu processamento.
sexta-feira, 30 de abril de 2010
12
Gerenciamento de Memória Secundaria
 O sistema operacional é responsável pelas seguintes atividades relacionadas ao gerenciamento de disco:
Gerenciamento de espaço livre 
Alocação de espaço de armazenamento
Programas de alocação do disco.
Como a memória secundaria é utilizada com freqüência, precisa ser utilizada de modo eficiente. A velocidade de operação de um computador pode depender das velocidades do subsistema de disco e dos algoritmos que manipulam este subsistema. 
sexta-feira, 30 de abril de 2010
13
Conexão em Rede
Os processadores no sistema operacional são conectados por intermédio de uma rede de comunicação, que pode ser configurada de diferentes modos. 
O projeto de rede de comunicações deve considerar o roteamento das mensagens e as estratégias de conexão, além dos problemas do concorrência e segurança.
sexta-feira, 30 de abril de 2010
14
Sistema de Proteção 
A proteção defini-se por qualquer mecanismo que objetive controlar o acesso dos programas, processos ou usuários aos recursos de um sistema de computação. Este mecanismo deve oferecer os meios para especificação dos controladores a serem impostos e os meios para sua imposição
sexta-feira, 30 de abril de 2010
15
Sistema Interpretador de Comandos
Este programa á algumas vezes denominado interpretador de cartões de controle ou interpretador de linhas de comando e é freqüentemente conhecido como SHELL
Para sistemas operacionais, um dois mais importantes programas de sistema é o interpretador de comando, que é a interface entre o usuário e o sistema operacional
sexta-feira, 30 de abril de 2010
16
Sistema Interpretador de Comandos
Este programa á algumas vezes denominado interpretador de cartões de controle ou interpretador de linhas de comando e é freqüentemente conhecido como SHELL
Para sistemas operacionais, um dois mais importantes programas de sistema é o interpretador de comando, que é a interface entre o usuário e o sistema operacional
sexta-feira, 30 de abril de 2010
17
Serviço do Sistema Operacional
Serviço do Sistema Operacional
Execução do programa: O sistema deve ser capaz de carregar um programa na memória e executá-lo
Operação de I/O: Um programa em execução pode requerer I/O. Este I/O pode envolver um arquivo ou um dispositivo.
Manipulação de Arquivos: Os Programas precisam ler, grava criar e apagar arquivos e diretórios. 
Comunicação: Os processos precisam troca informação entre si. Essa troca de mensagens é fornecida por esse serviço.
sexta-feira, 30 de abril de 2010
19
Serviço
do Sistema Operacional
Detecção de Erros: O sistema operacional precisa esta constantemente atendo a possíveis erros, sejam de hardware ou de software;
Alocação de Recursos: Muitos tipos de recursos diferentes são gerenciados pelo sistema operacional( memória principal, ciclo da CPU, armazenamento de arquivos)
Contabilização: Esse serviço registra e controla os usuários e os recursos utilizados.
Proteção: Serviço que procurar resolver problemas de conflito de processo e segurança do sistema contra influencia externas; 
sexta-feira, 30 de abril de 2010
20
Chamadas de sistemas
Chamadas de Sistemas
Estas Chamadas estão em geral disponível como instruções em linguagem de montagem (assembly language) e são usualmente incluídas nos diversos manuais usados pelos programadores dessa linguagem.
Chamadas de sistemas ocorrem de diferenças maneiras, dependendo do computador em uso.
As chamadas de sistemas podem ser classificadas, de modo geral em cinco grandes principais categorias: Controle de Processo, Gerenciamento de Arquivos, Gerenciamento de dispositivo, Manutenção de informação e Comunicação.
sexta-feira, 30 de abril de 2010
22
Chamadas de Sistemas
Estas Chamadas estão em geral disponível como instruções em linguagem de montagem (assembly language) e são usualmente incluídas nos diversos manuais usados pelos programadores dessa linguagem.
Chamadas de sistemas ocorrem de diferenças maneiras, dependendo do computador em uso.
As chamadas de sistemas podem ser classificadas, de modo geral em cinco grandes principais categorias: Controle de Processo, Gerenciamento de Arquivos, Gerenciamento de dispositivo, Manutenção de informação e Comunicação.
sexta-feira, 30 de abril de 2010
23
Programas de Sistemas
Programas de Sistemas
Uma outra característica de um sistema moderno é a presença de uma coleção de programas de sistema.
sexta-feira, 30 de abril de 2010
25
Usuário
1
Usuário
2
Usuário
3
Usuário
n
Editor de Texto
Montador
Compilador
Editor de Texto
Programas de sistemas e aplicativos
Sistema Operacional
Hardware do 
Computador
Programas de Sistemas
No nível mais baixo está o hardware. O nível seguinte é o sistema operacional, depois vêm os programas de sistema e, finalmente, os programas aplicativos. Os programas de sistema proporcionam um ambiente eficiente para o desenvolvimento e a execução de programas.
Eles podem ser divididos nas seguintes categorias:
Gerenciamento de Arquivos, Informação de Estado, Modificação de arquivos, Suporte a Linguagem, de Programação, Carga e execução de programas e comunicações 
sexta-feira, 30 de abril de 2010
26
Programas de Sistemas
Gerenciamento de arquivos: Estes programas criam apagam, copiam, renomeiam, imprimem, descarregam, listam e, geralmente, manipulam arquivos e diretórios.
Informação de estado: Alguns programas simplesmente solicitam ao sistema a data, a hora, a quantidade de memória ou de espaço em disco disponível, o número de usuários ou outra informação de estado semelhante. Essa informação é então formatada e é impressa no terminal ou em outro dispositivo ou arquivo saída.
sexta-feira, 30 de abril de 2010
27
Programas de Sistemas
Modificação de Estado: Diversos editores de texto podem esta disponíveis para criar e modificar o conteúdo de arquivos armazenados em disco ou fita. 
Suporte a linguagem de programação: Compiladores, montadores e interpretadores para linguagens de programação comuns (como C, C++, Java, Visual Basic e Perl) são freqüentemente oferecidos ao usuário como o sistema operacional. Alguns destes programas são atualmente cotados e fornecidos em separado.
sexta-feira, 30 de abril de 2010
28
Programas de Sistemas
Carga e execução de programa: Uma vez que um programa esteja montado ou com pilado, ele deve ser carregado na memória para execução.
Comunicação: Estes programas fornecem o mecanismo para criar conexões virtuais entre processos, usuários, e diversos sistemas de computadores. Elas permitem aos usuários transmitir mensagens de uma tela para outra, navegar em paginas da WEB, enviar mensagens de correio eletrônicos, conectar-se remotamente ou transferir arquivos de uma maquina para outra. 
sexta-feira, 30 de abril de 2010
29
Programas de Sistemas
A maioria do sistemas operacionais conta com programas que resolvem problemas comuns ou desenvolvem operações comuns. Tais programas incluem navegadores de Web, processadores e formatadores de texto, geradores de planilhas, sistemas de banco de dados dentre outros.
Esses programas são conhecidos como Utilitários de sistemas ou programas aplicativos.
Talvez o mais importante programa de sistema de um SO seja o interpretador de comandos, cujo sua principal função é obter e executa o próximo comando especificado pelo usuário.
sexta-feira, 30 de abril de 2010
30
Programas de Sistemas
Estrutura do Sistema
Um sistema tão grande e complexo como um moderno sistema operacional deve ser cuidadosamente desenvolvido para funcionar apropriadamente e ser facilmente modificado.
sexta-feira, 30 de abril de 2010
32
Programa Aplicativo
Drives de Dispositivos ROM da BIOS
Programa de Sistemas Residente
Drives de Dispositivos do MS_DOS
A estrutura do MS-DOS
Estrutura do Sistema
A abordagem em camadas 
A modularização de um sistema pode ser feita de muitas maneiras. Um dos métodos é a abordagem em camadas na qual o sistema operacional é particionado em um número de camadas (ou níveis), cada um delas construída sobre camadas mais baixas. 
A camada da base (camada zero) é o hardware; a mais alta (camada N) é a interface com o usuário.
33
Estrutura do Sistema
A abordagem em camadas 
A principal vantagem da abordagem em camadas é a modularidade. As camadas são selecionadas de tal modo que cada uma delas use apenas funções (ou operações) e serviços das camadas de nível mais baixo. Este enfoque simplifica a depuração e a verificação do sistema. 
A primeira camada pode ser depurada sem qual quer preocupação com o restante do sistema por que, por definição, ela usa somente o hardware básico para implementar suas funções.
34
Estrutura do Sistema
A abordagem em camadas 
A principal dificuldade da abordagem de camadas diz respeitos ao cuidado na definição das camadas, porque uma camada só pode usar as que estão abaixo dela. 
Por exemplo, o driver do dispositivo para o espaço em disco, utilizado pelos algoritmos de memória virtual, deve estar em nível inferior aos das rotinas de gerenciamento da memória por que o gerenciamento da memória requer a habilidade de usar o espaço em disco.
35
Estrutura do Sistema
MICROKERNELS 
Este método estrutura o sistema operacional removendo todos os componentes não essenciais de kernel e implementando como programas de nível de sistema e de usuário. O resultado é um kernel menor. 
Há pouco consenso sobre quais serviços deveriam permanecer no kernel e quais deveriam ser implantados no espaço do usuário. 
Entretanto os microkernels provêem, em geral, gerenciamento de processos e de memória mínimos, adicionalmente a facilidades de comunicação. 
36
Estrutura do Sistema
MICROKERNELS 
Os benefícios da opção microkernels incluem a facilidade de expandir o sistema operacional. Todos os novos serviços são adicionados ao espaço do usuário e, conseqüentemente, não exigem a modificação do kernel.
Quando o kenel precisa ser modificado, as mudanças tendem a ser menores, por que o microkernel é um kernel reduzido.
O sistema operacional resultante é fácil de ser transportado de um hardware para outro.
O microkernel também proporciona maior segurança e confiabilidade.
37
Maquinas Virtuais
Máquinas Virtuais
 Como antes, embora os programas de sistemas estejam em um nível mais alto do que os das demais rotinas, os programas aplicativos podem visualizar tudo que está abaixo de si próprio na hierarquia, como se fossem parte da própria máquina.
Esta abordagem em camadas chega à sua conclusão lógica no conceito de Máquina Virtual.
39
Máquinas Virtuais
 A Principal dificuldade na abordagem da máquina virtual reside nos sistemas de disco. Suponha que a máquina física tenha três
drives de disco mas queria sete máquinas virtuais. 
A solução é oferecer discos virtuais, idênticos em todos os aspectos aos outros discos, exceto em tamanho – eles são chamados de minidiscos.
Um outro aspecto da dificuldade é que a soma dos tamanhos dos minidiscos não poderá superar o tamanho do disco físico. 
40
Máquinas Virtuais
 A principal diferença entre uma máquina real e a máquina virtual é o tempo. 
Enquanto o I/O real pode levar 100 milissegundos, I/O virtual pode ter ocupado menos tempo (por que é spool) ou mais tempo (por que é interpretado) Além disso, a CPU está sendo multiprogramada entre muitas máquinas virtuais, retardando esta máquinas virtuais de maneiras imprevisíveis.
41
Máquinas Virtuais
 A utilização de máquinas virtuais traz duas vantagens primordiais. Em primeiro lugar a máquina virtual oferece um nível de segurança robusto, pela completa proteção que fornece aos recursos do sistema. 
Em segundo lugar , a máquina virtual permite que os sistemas seja desenvolvido sem corromper a sua operação normal.
Cada máquina virtual é completamente isolada das demais máquinas virtuais, portanto não temos problemas de segurança, pois diversos recursos do sistema ficam inteiramente protegidos.
42
Máquinas Virtuais
 Uma desvantagem deste ambiente é que não há compartilhamento direto dos recursos. 
Dois enfoques para prover compartilhamento foram implementados, no primeiro é possível compartilhar um minidisco. Este esquema é modelado sobre o disco físico compartilhado, mas é implementado por software. 
No segundo, é possível definir uma rede de máquinas virtuais, cada um delas podendo transmitir informações ao longo da rede de comunicações virtual. Novamente, a rede é modelada sobre redes de comunicação físicas, mas é implementada por software.
43
Prof. Manoel Pedro
Obrigado

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes