Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS OPERACIONAIS Siste m a sO p e ra cio n ais Introdução Prof. Mateus Novaes (Adaptação dos slides de Silberschatz) O p e ra cio n ais CAPÍTULO 1: INTRODUÇÃO � O que é um sistema operacional? � Sistemas em lote � Sistemas de tempo compartilhado � Sistemas de computadores pessoais � Sistemas paralelos Siste m a sO p e ra cio n ais � Sistemas paralelos � Sistemas distribuídos � Sistemas de tempo real � Sistemas portáteis O p e ra cio n ais O QUE É UM SISTEMAOPERACIONAL? �Um sistema que age como intermediário entre o usuário do computador e o seu hardware. �Objetivos de um sistema operacional Siste m a sO p e ra cio n ais �Objetivos de um sistema operacional � Excecutar programas de usuário e facilitar a resolução de problemas � Fazer o sistema computacional fácil de utilizar. � Utilizar o hardware do computador de maneira eficiente. O p e ra cio n ais COMPONENTES DE UM SISTEMA DE COMPUTAÇÃO 1. Hardware – Provê os recursos básicos de computação (CPU, Memória, Dispositivos de I/O) 2. Sistema Operacional – Controla e coordena o uso do hardware para vários programas aplicativos e para vários usuários. Siste m a sO p e ra cio n ais aplicativos e para vários usuários. 3. Programas Aplicativos – Definem a forma como os recursos dos sistema são utilizados para resolver os problemas dos usuários. . 4. Usuários – São as pessoas, dispositivos externos ou outros computadores O p e ra cio n ais VISÃO DE UM SISTEMA OPERACIONAL � O objetivo fundamental de um sistema computacional é facilitar a criação dos programas de usuário � Facilitar a resolução de problemas � Funcionalidades secundárias foram criadas nos sistemas modernos: Comunicação remota, acesso a recursos remotos, … Siste m a sO p e ra cio n ais recursos remotos, … � É difícil dar uma definição adequada de um SO � Mais fácil definí-lo pelo que ele faz do que pelo que ele é � Muitas vezes existem conflitos de requisitos � Eficiência vs. Conveniência O p e ra cio n ais VISÃO ABSTRATA DOS COMPONENTES DO SISTEMA Siste m a sO p e ra cio n ais O p e ra cio n ais DEFINIÇÕES DE UM SISTEMAOPERACIONAL � Alocador de recursos – gerencia e aloca recursos � Sistema controlador – controla a execução dos programas de usuário e das operações de I/O Siste m a sO p e ra cio n ais programas de usuário e das operações de I/O � Um programa que está sempre em execução � Kernel O p e ra cio n ais SISTEMAS EM LOTE (BATCH) VISÃO HISTÓRICA � Existia um operador que preparava as tarefas para execução � Cartões perfurados � A otimização no uso dos recursos era feita agrupando tarefas (programas) similares � Diminuia o tempo com a reconfiguração do ambiente Siste m a sO p e ra cio n ais � Diminuia o tempo com a reconfiguração do ambiente � Os primeiros sistemas operacionais foram utilizados � Tarefa única de transferir o controle de uma tarefa para outra � Sistema monitor � Controle inicial do monitor � O controle é então passado para a tarefa � Quando a tarefa é finalizada o controle é passado ao monitor O p e ra cio n ais DISPOSIÇÃO DA MEMÓRIA DE UM SISTEMA EM LOTE Siste m a sO p e ra cio n ais O p e ra cio n ais SISTEMAS EM LOTE MULTIPROGRAMADOS Siste m a sO p e ra cio n ais Várias tarefas são colocadas na memória e o SO divide o uso da CPU entre elas. O p e ra cio n ais FUNCIONALIDADES NECESSÁRIAS PARA A MULTIPROGRAMAÇÃO � Atividades de I/O providas pelo sistema � I/O realizada pelo kernel via drives dos dispositivos � O SO executa concorrentemente com a aplicação � Espera por I/O gera uma troca de contexto � Gerência de memória – O sistema deve alocar a memória para diversas tarefas. Siste m a sO p e ra cio n ais Gerência de memória – O sistema deve alocar a memória para diversas tarefas. � Escalonamento de CPU – O sistema deve escolher entre diversas tarefas prontas para execução � Diminuir trocas de contexto � Alocação de recursos para as tarefas � Deadlock O p e ra cio n ais SISTEMAS DE TEMPO COMPARTILHADO COMPUTAÇÃO INTERATIVA � O tempo de CPU deve ser compartilhado entre diversas tarefas que podem estar na memória ou no disco. � Tarefas jogadas para o disco caso demorem executando I/O. Tarefas prontas para serem executadas na memória se Siste m a sO p e ra cio n ais � Tarefas prontas para serem executadas na memória se chamam processos � Swap-in/Swap-out � Provida comunicação on-line entre o usuário e o sistema. Quando uma tarefa é terminada o SO procura pela proxima tarefa indicada pelo usuário. � Os sistemas on-line precisam estar prontos para responder aos pedidos dos usuários. O p e ra cio n ais SISTEMAS DE COMPUTADORES PESSOAIS � Computadores Pessoais – Sistema de computador dedicado a um único usuário. � Disposisitvos de I/O – Teclados, mouses, monitores, pequenas impressoras. Siste m a sO p e ra cio n ais � Conveniência do usuário. � Podem utilizar tecnologias desevolvidas para sistemas de grande porte. � Podem utilizam uma variedade de Sistemas Operacionais (Windows, MacOS, UNIX, Linux) O p e ra cio n ais SISTEMAS PARALELOS � Sistemas multiprocessados com mais de um processador se comunicando. � Sistemas fortemente acoplados � Processadores compartilham memória e clock; Siste m a sO p e ra cio n ais� Vantagens de sistemas pararelos � Aumento de processamento (throughput) � Mais economia (compartilhamento de recursos) � Aumento da confiabilidade � Mais complexidade para o SO O p e ra cio n ais SISTEMAS PARALELOS � Multiprocessamento Simétrico (SMP) � Há compartilhamento do kernel através da memória compartilhada � Vários processadores podem trabalhar em paralelo � A maioria dos SOs suportam SMP Siste m a sO p e ra cio n ais � Multiprocessamento Assimétrico � Cada processador é atribuído a uma tarefa designada pelo processador master � Encontrado em sistemas extremamente grandes (Centenas de processadores) O p e ra cio n ais SISTEMAS PARARELOS Siste m a sO p e ra cio n ais O p e ra cio n ais ARQUITETURA DE MULTIPROCESSAMENTO SIMÉTRICO Siste m a sO p e ra cio n ais O p e ra cio n ais SISTEMAS DISTRIBUÍDOS � Distribui o processamento entre vários processadores físicos � Sistemas fracamente acoplados � Cada processador tem sua própria memória. Siste m a sO p e ra cio n ais � Vantagens dos sistemas distribuídos � Compartilhamento de recursos � Velocidade de processamento – compartilhamento da carga � Confiabilidade O p e ra cio n ais SISTEMAS DISTRIBUÍDOS � Requer uma infra-estrutura de rede � LAN – Local Area Network � WAN – Wide Area Network � Podem adotar um modelo cliente-servidor ou peer- to-peer Siste m a sO p e ra cio n ais O p e ra cio n ais ESTRUTURA DO MODELO CLIENTE-SERVIDOR Siste m a sO p e ra cio n ais O p e ra cio n ais SISTEMAS EM CLUSTER � Alternativa para o SMP � Objetivo é a confiabilidade, disponibilidade e desempenho � Simula um grande computador � Permite que os sistema compartilhem discos Siste m a sO p e ra cio n ais � Permite que os sistema compartilhem discos � Clustering assimétrico: um servidormonitora a execução nos outros servidores � Clustering simétrico: todos os servidores estão executando a aplicação O p e ra cio n ais SISTEMAS DE TEMPO REAL � Utilizados como controladores de uma aplicação dedicada de uso crítico. � Equipamentos médicos, sistema de injeção eletronica, controle industrial, etc… Siste m a sO p e ra cio n ais � Tempos bem limitados para as respostas � Diferente gerenciamento de tarefas e recursos. � Sistemas de tempo real podem ser rígidos ou flexíveis. O p e ra cio n ais SISTEMAS DE TEMPO REAL � Tempo real rígido: � Falha dos requisitos temporais gera grandes prejuízos � Armazenamento secundário limitado ou inexistente. � Pode gerar conflito com os requisitos se adotar tempo compartilhado Siste m a sO p e ra cio n ais compartilhado � Tempo real flexível: � Pequeno atraso é tolerado � Não garante deadline, mas dá alta prioridade para a tarefa crítica. � Útil em jogos, aplicações multimídea e realidade virtual O p e ra cio n ais SISTEMAS PORTÁTEIS � PDA � Telefones celulares Siste m a sO p e ra cio n ais � Problemas relacionados: � Memória limitada � Processadores lentos � Pequenos displays � Bateria O p e ra cio n ais
Compartilhar