Sistemas Operacionais
Sistemas Operacionais
Tipos de Sistemas Operacionais
Conceitos
Sistemas Operacionais
Sistemas Operacionais
• Ao longo da história da computação foram
desenvolvidos diversos tipos de SOs, devido
ao fato de que existem diversas classes de
sistemas computadorizados cujas funções e
necessidades são diferentes.
• A seguir iremos estudar um pouco dos
principais tipos de SOs.
Sistemas Operacionais
• Sistemas Operacionais de Computadores de
Grande porte
– São os sistemas que rodam naqueles computadores gigantes que normalmente habitam o interior de grandes salas, encontrados em centros de processamento de dados e grandes corporações.
Sistemas Operacionais
• Sistemas Operacionais de Computadores de
Grande porte
– Sua principal diferença para os sistemas dos computadores pessoais é a capacidade de lidar com enormes quantidades de memória, armazenamento e volume de E/S.
– Atualmente seu maior uso é como Servidores Web, de E-commerce ou de Processos internos para grandes empresas
Sistemas Operacionais
• Sistemas Operacionais de Servidores
– Logo abaixo vem os SOs para servidores que são destinados a computadores com grandes capacidades de processamento.
– Sua função é atender múltiplos usuários e prover recursos e serviços para os mesmos, exemplo Servidor de hospedagem
– SOs como Solaris, Linux e Windows Server
Sistemas Operacionais
• Sistemas Operacionais de Multiprocessadores
– Um modo comum de se obter potência computacional é conectar múltiplas CPUs em um único sistema. Sendo assim os SOs para tal fim tem características especiais para poder lidar com multiprocessadores, tais aspectos são por exemplo comunicação, conectividade e compartilhamento.
Sistemas Operacionais
• Sistemas Operacionais de Multiprocessadores
– Recentemente com os chips multinúcleos para computadores pessoais e notebooks, os sistemas operacionais para PCs também foram obrigados a incorporar tais funcionalidades.
– Muitos sistemas operacionais comuns são capazes de trabalhar com multinúcleos.
Sistemas Operacionais
• Sistemas Operacionais de Computadores
Pessoais (PCs)
– São os mais conhecidos, pois são os utilizados nos computadores que temos nas nossas residências. – Dão suporte a multiprocessadores e a
multiprogramação mas seu principal trabalho é oferecer uma boa interface para um único
usuário.
– São exemplos destes Ubuntu, Linux, Mac OS X, Windows XP, Vista e 7
Sistemas Operacionais
• Sistemas Operacionais de Computadores
Portáteis
– O principal representante desta categoria é o PDA (Personal Digital Assistant), ele é um pequeno computador de mão e executa um número limitado de funções como uma agenda de endereços, um bloco de anotações e um leitor de e-mails.
Sistemas Operacionais
• Sistemas Operacionais de Computadores
Portáteis
– Recentemente os PDAs, os Tablets e os Smartphones se “fundiram” pois é um tanto quanto complicado separar ambos, pois eles tem funções semelhantes.
– Um diferença importante entre os portáteis e os PCs é que os primeiros não tem discos de milhares de gigabytes, o que faz muita diferença.
Sistemas Operacionais
• Sistemas Operacionais embarcados
– São sistemas executados em computadores que controla dispositivos que geralmente nem são vistos como computadores.
– São exemplos típicos fornos de micro-ondas, aparelhos de TV, carros, aparelhos de DVD, reprodutores de MP3, etc.
– Nestes SOs os usuários não podem adicionar softwares nem alterar as características deles, sendo assim eles costumam ser mais simples.
Sistemas Operacionais
• Sistemas Operacionais de tempo real
– São sistemas onde o tempo é um parâmetro fundamental. Por exemplo sistemas de controle de processos industriais.
– Na linha de produção de um carro, se um dos robôs perde o tempo e não realiza sua função (soldar por exemplo) este carro estará condenado. – Sendo assim este exemplo é um sistema de
tempo real crítico
Sistemas Operacionais
• Sistemas Operacionais de tempo real
– Há ainda uma variação que é o sistema de tempo
real não crítico que consiste num sistema onde o
descumprimento do prazo não é desejável mas é aceitável.
– Exemplo um sistema de transmissão de TV
Sistemas Operacionais
• Revisando os tipos de Sistemas Operacionais:
– SOs de Computadores de Grande porte – SOs de Servidores
– SOs de Multiprocessadores
– SOs de Computadores Pessoais (PCs) – SOs de Computadores Portáteis
– SOs embarcados – SOs de tempo real
Sistemas Operacionais
CONCEITOS SOBRE SISTEMAS
OPERACIONAIS
Sistemas Operacionais
• Todos os tipos SOs estudados até aqui
possuem certos conceitos e abstrações
básicos e em comum que são fundamentais
para o entendimento de um SO.
• A seguir veremos uma breve introdução sobre
alguns destes conceitos.
Sistemas Operacionais
• Gerência de Processos
– Um processo é um programa em execução, uma unidade ativa.
– Um processador de textos (Word) executado por um usuário é um processo.
– Um processo precisa de recursos, tempo de CPU, memória, arquivos, dispositivos de E/S para realizar usa tarefa
Sistemas Operacionais
• Gerência de Processos
– Ele pode ser composta por uma ou mais threads. – O processo é a unidade de trabalho de um
sistema.
– O sistema operacional é uma coleção de processos (que executam código de sistema)
– Muitos processos podem ser executados ao mesmo tempo por meio da multiplexação de recursos
Sistemas Operacionais
• Gerência de Processos
– O Sistema operacional é responsável pelas seguintes atividades de gerência de processos:
• Criar e remover;
• Suspender e retomar;
• Prover mecanismos para o sincronismo; • Prover mecanismo para a comunicação;
• Prover mecanismos para o tratamento de deadlock
Conceitos
Sistemas Operacionais
• Gerência de Memória
– A memória principal (RAM) é um conjunto de bytes, um repositório de dados rapidamente acessíveis compartilhados pela CPU e dispositivos E/S.
– A memória é o único grande dispositivos que a CPU consegue endereçar, pois para ler do HD por exemplo é preciso que os dados sejam transferidos para a memória antes.
– Da mesma forma para que a CPU consiga executar um programa (processo) ele tem de estar na memória.
Sistemas Operacionais
• Gerência de Memória
– O Sistema operacional é responsável pelas seguintes atividades relacionadas a memória:
• Registrar quais partes da memória estão sendo usadas atualmente e por quem.
• Decidir quais processos (ou parte deles) e dados devem ser colocados e retirados da memória
• Alocar e desalocar espaço de memória conforme a necessidade.
Sistemas Operacionais
• Gerência de Sistemas de Arquivos
– É um dos comportamentos mais visíveis no sistema operacional. O computador pode armazenar informações em vários meios físicos diferentes (discos magnéticos, discos ópticos, fitas, memórias flash) cada um com suas características próprias.
– Um arquivo é uma coleção de informações relacionadas bem definidas, eles podem ser numéricos, alfanuméricos ou binários.
Sistemas Operacionais
• Gerência de Sistemas de Arquivos
– Sendo assim é papel do SO prover uma estrutura de organização do armazenamento destes arquivos (pastas) e também controlar quem e de qual maneira (leitura, escrita) acessa estes arquivos.
Sistemas Operacionais
• Gerência de Sistemas de Arquivos
– O Sistema Operacional é responsável pelas seguintes atividades relacionadas à gerências de arquivos:
• Criação e remoção;
• Criação e remoção de diretórios para organização;
• Suporte a primitivas para manipulação de arquivos e diretórios;
• Mapeamento de arquivos em armazenamento secundário;
• Backup (cópia de reserva) de arquivos em meios de armazenamento estáveis (não voláteis)
Sistemas Operacionais
• Gerência de Armazenamento em Massa
– Como visto os processos e dados que estão sendo utilizados num determinado instante residem na memória principal, mas essa memória não é estável, ou seja ela perde todos os dados assim que a energia é desligada. Sendo assim é necessário um meio de armazenamento estável. – Este armazenamento é na grande maioria das
vezes representado por um disco magnético (HD)
Sistemas Operacionais
• Gerência de Armazenamento em Massa
– Então um papel de crucial importância do SO é a gerência correta do armazenamento.
– Como este armazenamento é acessado muitas vezes outro ponto importante é que ele seja usado de forma eficiente caso contrário o desempenho geral de um computador pode ser largamente afetado.
Sistemas Operacionais
• Gerência de Armazenamento em Massa
– Então um papel de crucial importância do SO é a gerência correta do armazenamento.
– Como este armazenamento é acessado muitas vezes outro ponto importante é que ele seja usado de forma eficiente caso contrário o desempenho geral de um computador pode ser largamente afetado.
Sistemas Operacionais
• Gerência de Armazenamento em Massa
– O Sistema Operacional é responsável pelas seguintes atividades relacionadas ao gerenciamento de disco:
• Gerencia de espaço livre
• Alocação de armazenamento • Escalonamento de disco
Sistemas Operacionais
• Gerência dos Sistemas de E/S
– Uma outra finalidade do SO é ocultar do usuário as peculiaridades dos dispositivos de hardware.
– Sendo assim o mecanismo do SO responsável por gerenciar E/S é composto por alguns componentes:
• Um componente de gerência de memória que inclui o uso de buffers, caches e spools
• Uma interface genérica controladora de dispositivos • Drivers para dispositivos de hardwares específicos
Sistemas Operacionais
• Resumindo o SO é responsável por prover as
seguintes funcionalidades :
– Gerência de Processos – Gerência de Memória
– Gerência de Sistemas de Arquivos
– Gerência de Armazenamento em Massa – Gerência dos Sistemas de E/S