Baixe o app para aproveitar ainda mais
Prévia do material em texto
Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Conceitos Básicos de Sistemas Operacionais (Revisão) Prof. Marcus Fábio Fontenelle, M.Sc. Mestre em Informática Aplicada LPIC-1, NCLA, MCSE Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Conceito de Sistema Operacional • Um sistema operacional (SO) é o software executado pelo processador que tem como principal função controlar o funcionamento de um computador, gerenciando a utilização e o compartilhamento de seus diversos recursos (processadores, memórias e dispositivos de entrada e saída). 2 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Modo Kernel x Modo Usuário • Para garantir a execução apropriada de um SO é preciso ser feita uma distinção entre a execução do código do sistema operacional e o código do usuário. • A maioria dos SOs possuem dois níveis de operação: modo kernel e modo usuário. • O modo kernel (também chamado modo núcleo, modo supervisor, modo monitor, modo do sistema ou modo privilegiado) é um conjunto de rotinas que oferece serviços aos usuários e às suas aplicações. • O modo usuário possui apenas um subconjunto de instruções para executar tarefas que não afetem o controle da máquina ou realizem entrada e saída (E/S). O programa de interface com o usuário (shell ou GUI – Graphical User Interface) é o nível mais inferior do software do modo usuário. • O bit de modo é adicionado para indicar o modo em que uma determinada tarefa está sendo executada. 3 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Classificação dos Sistemas Operacionais 4 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Monoprogramáveis ou Monotarefas • Todos os recursos (processador, memória e dispositivos de E/S) estão dedicados a uma única tarefa. • Apenas um usuário interage com o SO. 5 Memória Principal Dispositivos de E/ S UCP programa/ tarefa Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Multiprogramáveis ou Multitarefas • Recursos compartilhados. • O SO gerencia o acesso concorrente aos seus recursos (processador, memória e dispositivos de E/S) de forma ordenada e protegida. 6 Memória Principal Dispositivos de E/ S UCP programa/ tarefa programa/ tarefa programa/ tarefa programa/ tarefa programa/ tarefa Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Multiprogramáveis ou Multitarefas • A partir do número de usuários que interagem com o sistema operacional, podemos classificar os sistemas multiprogramáveis como monousuário ou multiusuário. • Sisemas multiprogramáveis monousuário são encontrados em computadores pessoais e estações de trabalho, onde apenas um único usuário interage com o sistema. Existe a possibilidade de execução de diversas tarefas ao mesmo tempo. • Sisemas multiprogramáveis multiusuário são ambientes interativos que possibilitam a diversos usuários conectarem-se ao sistema simultaneamente. Encontrados em servidores. 7 Um Usuário Dois ou Mais Usuários Monoprogramação/Monotarefa Monousuário ― Multiprogramação/Multitarefa Monousuário Multiusuário Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Multiprogramáveis ou Multitarefas 8 Sistemas Multiprogramáveis/ tarefaMulti Sistemas Batch Sistemas de Tempo Real Sistemas de Tempo Compartilhado Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Batch ou Lote • Executados sequencialmente pela leitura de uma fita ou disco. • Normalmente não exigem interação com o usuário. As entradas e saídas de dados da aplicação são implementadas por algum tipo de memória secundária. • Podem ser bastante eficientes devido à melhor utilização do processador. • Podem oferecer tempos de respostas longos. • Ex: Ordenações, cálculos numéricos, backup, compilação etc. 9 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas de Tempo Compartilhado (Time Sharing) • Para cada usuário o SO aloca uma fatia de tempo (time-slice) dos recursos (processador, memória e dispositivos de E/S). • Permitem interação do usuário com o sistema através de terminais via teclado, vídeo e/ou mouse. • Possuem uma linguagem de controle que permite ao usuário comunicar-se diretamente com o SO através de comandos, sendo possível verificar arquivos armazenados em disco ou cancelar a execução de um programa. Conhecidos também como sistemas on-line. • Ex: Aplicações comerciais 10 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas de Tempo Real (Real Time) • Semelhantes em implementação aos SOs de tempo compartilhados. Diferença fundamental é o tempo de resposta exigido no processamento das aplicações. – Em sistemas de tempo compartilhado o tempo de processamento pode variar sem comprometer as aplicações em execução. – Nos sistemas de tempo real os tempos de processamento devem estar dentro de limites rígidos, caso contrário poderão ocorrer problemas irreparáveis. • Não existe a ideia de fatia de tempo. Um programa detém o processador o tempo que for necessário ou até um programa mais importante precisar ser executado. – Quem determina a prioridade é a própria aplicação e não o SO como nos sistemas de tempo compartilhado. • Ex: Monitoramento de refinarias de petróleo, controle de tráfego aéreo, usinas nucleares etc. 11 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Monoprocessados • A maioria dos sistemas utiliza um único processador. • Existe uma CPU principal capaz de executar um conjunto de instruções de uso geral, incluindo instruções de processos do usuário. • Ex: PDAs, Mainframes, Primeira geração de Smartphones etc. 12 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Multiprocessados • Duas ou mais CPUs interligadas, trabalhando em conjunto. • Escalabilidade, Disponibilidade e Balanceamento de Carga. • Fatores chaves: Forma de comunicação entre as CPUs Grau de compartilhamento da memória e dos dispositivos de E/S • Em função dos fatores chaves podem ser classificados como: Sistemas fortemente acoplados Sistemas fracamente acoplados • Ex: Simulações, processamento de imagens etc. 13 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Fortemente Acoplados (Tightly Coupled) • Dois ou mais processadores compartilhando uma única memória e dispositivos de E/S controlados por um único SO. Também conhecidos como multiprocessadores. • Usados no processamento de aplicações que fazem uso intensivo da CPU. Processamento para a solução de um único problema. • Podem ser: Assimétricos Simétricos 14 UCP UCP Memória Principal Dispositivos de E/ S Dispositivos de E/ S Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Fortemente Acoplados Assimétricos • Cada processador recebe uma tarefa específica. • Um processador mestre (master) controla o sistema, os outros processadores (escravos – slaves) procuram instruções com o mestre ou possuem tarefas predefinidas. Relacionamento mestre-escravo(master-slave). O processador mestre escalona e aloca trabalho para os processadores escravos. • Se o processador mestre falhar o sistema para o processamento e o SO atribui a função de mestre a outro processador. 15 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Fortemente Acoplados Simétricos • Todos os processadores são iguais, ou seja, não existe hierarquia entre eles. Possuem tempo uniforme de acesso à memória principal. Conhecidos como SMP (Symetric Multiprocessors) • Operação de boot feita por um único processador. • Ocorrência de acessos simultâneos às mesmas áreas de memória. A solução desses conflitos ficam a cargo do hardware e do SO. Um programa pode ser executado por qualquer processador, inclusive por vários processadores ao mesmo tempo (paralelismo). • Se um processador falhar o sistema continua normalmente, mas com menor poder computacional. São mais poderosos que os assimétricos. Permitem um melhor balanceamento do processamento e de E/S Implementação complexa. 16 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Fracamente Acoplados (Loosely Coupled) • Possuem dois ou mais sistemas computacionais interligados através de linhas de comunicação. • Cada sistema funciona de forma independente, possuindo seu próprio SO gerenciando seus recursos (processadores, memórias e dispositivos de entrada e saída). • Também conhecidos como multicomputadores. Cada sistema computacional pode ser formado por um ou mais processadores. • Divididos em: Sistemas Operacionais de Rede (SOR) Sistemas Operacionais Distribuídos 17 UCP UCP Memória Principal Memória Principal Dispositivos de E/ S link de comunicação Dispositivos de E/ S Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Operacionais de Rede (SOR) • Cada nó possui seu próprio SO, hardware e software que possibilitam ao sistema ter acesso a outros componentes da rede. Permitem que um nó compartilhe seus recursos (Ex: impressora, diretório etc) • O SO pode ser diferente em cada Nó. • Caso haja problema em um Nó o sistema computacional pode operar normalmente. 18 Prof. Marcus Fábio, M.Sc Faculdade Estácio do Ceará Arquitetura de Sistemas Distribuídos Sistemas Operacionais Distribuídos • Cada componente da rede possui seu próprio SO e recursos (processadores, memórias e dispositivos de entrada e saída). • O que define um sistema distribuído é a relação mais forte entre seus componentes, onde geralmente os SOs são os mesmos. O SO esconde os detalhes dos nós individuais e passa a tratá-los como um conjunto único, como se fosse um sistema fortemente acoplado. • Uma grande vantagem é balanceamento de carga (o processador mais livre é escolhido). • Ex: Cluster, DNS etc 19
Compartilhar