sistemas operativos. software conjunto de instruções ou programas capazes de fazerem funcionar o...

Post on 17-Apr-2015

111 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

SISTEMAS OPERATIVOS

SOFTWARE

• Conjunto de instruções ou programas capazes de fazerem funcionar o HARDWARE

• Software de SISTEMA• Software de APLICAÇÃO

SOFTWARE de APLICAÇÃO

• Engloba todos os programas que efectuam tarefas mas que não têm acesso directo aos recursos da máquina.

• Processadores de Texto, Folhas de Cálculo, Programas de Desenho, Jogos, entre outros.

Conceito de Sistema Operativo

• Sistema Operativo – Pode ser definido como um conjunto de programas

que permitem uma interacção simplificada entre o utilizador e a máquina

Dispositivos físicos

Sistema Operativo

Aplicações Utilizador

Hardware

• Responsável por gerir os recursos de Hardware• Tornar os recursos de Hardware acessíveis ao

utilizador e ao Software de aplicação• Composto por Utilitários de Sistema,

Controladores de Dispositivos, Compiladores de Linguagem, entre outros

SISTEMA OPERATIVO

SISTEMA OPERATIVO

• 1ª camada (e indispensável ) de Software• Gere o processador, memória, comunicação

entre componentes internos e periféricos• Controla e atribui recursos físicos da máquina

segundo as solicitações das diversas aplicações• Responsável pela organização e fiabilidade de

armazenamento dos dados de uma forma hierárquica nos vários suportes de armazenamento.

UTILIZADORAPLICAÇÕES

SISTEMA OPERATIVO

INTERFACE(Shell de comandos)

NÚCLEO (Kernel)

Hardware

SISTEMA OPERATIVO

Funções do Sistema Operativo

Um sistema operativo possui as seguintes funções:• gestão de processos; • gestão de memória; • sistema de arquivos; • entrada e saída de dados.

Gestão de processos• O sistema operativo multitarefa é preparado para dar a

ilusão que o número de processos em execução simultânea no computador é maior que o número de processadores instalados. Cada processo recebe uma fatia do tempo e a alternância entre vários processos é tão rápida que pensamos que a sua execução é simultânea.

• São utilizados algoritmos para determinar qual o processo que será executado em determinado momento e por quanto tempo.

Funções do Sistema Operativo

Gestão de memóriaOs algoritmos de alocação de memória devem ter como objectivo reduzir a fragmentação da memória• First Fit - Aloca o primeiro pedaço de memória livre que

tenha espaço suficiente• Best Fit - Aloca o pedaço de memória livre mais

pequeno mas com espaço suficiente para conter os dados

• Worst Fit - Aloca o maior pedaço de memória livre

Funções do Sistema Operativo

Sistema de arquivos• Funções do Sistema de Gestão de Ficheiros:

– Criar/Apagar ficheiros e directórios– Operações de leitura e escrita em ficheiros– Mapeamento dos ficheiros no disco– Escalonamento do acesso ao disco– Protecção de acesso aos ficheiros

Funções do Sistema Operativo

Gestão de I/OA implementação das operações de I/O é complexa, uma vez que interactuam com o hardware dos dispositivos.Uma das principais funções do SO é esconder as especificidades do hardware ao utilizador

– Implementado através de Device Drivers

Componentes de I/O:– Sistema de buferização, caching e spooling– Interface genérica para device drivers– Device Drivers específicos

Funções do Sistema Operativo

• Parte visível do sistema operativo com a qual o utilizador interage

• CLI (“Command Line Interface”)– Ecrã de texto em que os comandos são

digitados manualmente através de uma linha de comando

• GUI (“Graphics User Interface”)– Interacção com o utilizador é feita

através de um ambiente gráfico– Comandos inseridos através de acções

com outros dispositivos (rato, touchpad...) para além do teclado

SISTEMA OPERATIVO

Conceitos associados

Conceito de Sistema Operativo

• O Sistema Operativo pode ser visto como– Máquina virtual

• Dar ao utilizador a ilusão de dispor de uma máquina muito mais fácil de utilizar e programar do que o hardware.

– Gestor de recursos• Efectuar a gestão dos diversos componentes da

arquitectura de um computador, impondo ordem na atribuição de recursos aos programas.

• Tirar máximo partido dos recursos disponíveis– Tempo de CPU, memória, etc

Conceitos de processador e processo

• Processador e Processos– Um processo é basicamente um programa em execução– Num sistema multi-programado, vários processos

podem estar a correr simultaneamente– Contudo, quando existe um só processador, apenas um

processo pode utilizá-lo em cada instante– Os processos concorrem pelo processador e cooperam

entre si para realizar tarefas mais complexas

17

• Processador e Processos– Processador (CPU)

• Elemento activo do sistema que executa processos– Modo utilizador (User Mode)

• Disponível um subconjunto das instruções do CPU. É neste modo que correm as aplicações

– Modo núcleo (Kernel Mode)• Modo privilegiado do processador, para o qual todas as

instruções estão disponíveis. Só o Sistema Operativo é que tem acesso a este modo

Conceitos de processador e processo

Conceitos associados

• Memória e Gestão de memória– Divisão estruturada da memória de modo a ser possível o

carregamento de diversos programas na memória principal• Colocação e Protecção

– Existência de mecanismos que permitam o crescimento da memória de dados de um programa• Reserva de memória

– Gestão do espaço de endereçamento de modo a que se possa ter uma capacidade de memória superior à da memória principal (a RAM) • Memória Virtual

– Hierarquia da memória

Registos

Cache

Memória principal

Discos

Tapes

Maiorrapidez

Maiorcapacidade

Conceitos associados

Sistemas mono-programados e multi-programados

SistemaOperativo

Programa Programa 1

Dados

Programa 2

SistemaOperativo

Dados 1

Dados 2

SistemaMono-programado

SistemaMulti-programado

Memória principal Memória principal

Conceitos associados

Sistemas de ficheiros– Gestão da informação não-volátil armazenada

em memória secundária (discos, tapes)– Providenciar um nível de abstracção para que

o utilizador não se preocupe com os detalhes da utilização de discos, disquetes, etc.

– Chamadas ao sistema:• Criação, remoção, cópia, escrita e leitura de

ficheiros

Conceitos associados

– Estrutura hierárquica (em árvore) - directóriosdirectório raíz

(root)

Trabalhos Jogos

AC SO Quake Half-Life

trab1.txt prog.cpp trabf.doc

Conceitos associados

• Periféricos e I/O– Gestão das operações de escrita e leitura nos

diversos periféricos• Teclado, impressora, terminais de texto e gráficos,

discos, etc.– Tratamento de interrupções e de erros– Device drivers

• Programas para gestão de periféricos específicos

Conceitos associados

Sistemas Operativos

Classificação

Classificação de SOs

• Multi-utilizador– O tempo de processamento do CPU de um

computador pode ser partilhado por mais do que um utilizador de forma interactiva.• Unix, Linux

• Mono-utilizador– O CPU só pode estar dedicado de forma interactiva

a um conjunto de processos do mesmo utilizador• MS-DOS, todos os Windows

Classificação de SOs

• Multi-programação– Capacidade de correr vários programas

simultaneamente (em concorrência)• Unix, Linux, todos os Windows

• Mono-programação / Processamento por lotes– Cada programa monopoliza o processador até

terminar• Spectrum• DOS

Classificação de SOs

• Dedicado– Sistema Operativo projectado para aplicações específicas– Exemplos:

• Controlo de uma linha de montagem - SOs em tempo real• Gestão de transacções numa companhia aérea - SOs para

Mainframes• Interface para um telemóvel – SO embedded

• Uso geral– Projectados para uma fácil utilização– Permitem a execução de uma grande variedade de programas– Reconhecem uma grande diversidade de periféricos

Classificação de SOs

• Centralizado– O Sistema Operativo cria uma máquina virtual sobre

um único computador• Distribuído

– O Sistema Operativo que corre sobre um conjunto de computadores, dando a ilusão de que este conjunto é uma entidade única• Sistemas distribuídos puros• Sistemas em rede• Sistemas multi-processador

Arquitectura• Quando se desenvolve um sistema operativo, são

obrigatoriamente observados pelo menos dois tipos de requisitos:

– REQUISITOS DE UTILIZADOR Procura-se um sistema fácil de utilizar, com uma aprendizagem fácil,

rápido e suficientemente dinâmico para se adaptar às tarefas a que se destina.

– REQUISITOS DE SOFTWARE Procura-se facilidade de manutenção, forma de funcionamento,

restrições de utilização, eficiência, tolerância ou intolerância a erros e flexibilidade.

Arquitectura• Para além dos requisitos a observar, também a sua estrutura

varia, sendo as estruturas mais comuns:

– Estrutura MONOLÍTICA

– Estrutura MODULAR

Arquitectura

• Estrutura MONOLÍTICA É o tipo de estrutura que caracterizava os primeiros

sistemas operativos, composto por um único programa e sub-rotinas. As suas características são:– Programa Final resultado da Linkagem de módulos

compilados separadamente– Boa definição de parâmetros de ligação entre rotinas o que

permite índices maiores de acoplamento.– Precisam de protecções e previlégios de execução das rotinas

de manipulação de recursos de sistema– Geralmente são sistemas desenvolvidos à medida, o que

resulta numa elevada eficiência mas baixa flexibilidade.

Arquitectura• Estrutura MONOLÍTICA

Nível de Procedimento Principal

Nível de Procedimento de Serviços

Nível de Procedimento de Utilidades e Utilitários

Modelos de Sistemas Operativos

• Monolítico– O exemplo mais comum de sistema operativo, no qual

aparentemente não existe estrutura...– Qualquer função do sistema operativo pode comunicar

com qualquer uma das outras.

Procedimentoprincipal

Procedimentosde serviço

Procedimentosauxiliares

• Camadas (Layers)– O SO encontra-se estruturado segundo um

conjunto de camadas funcionais– Cada camada utiliza serviços de camadas que lhe

são interiores– Em suma, cada camada é uma máquina virtual com

uma interface bem definida– À camada mais baixa (gestão de processos)

corresponde o núcleo do sistema operativo

Modelos de Sistemas Operativos

• Camadas (Layers)

Gestão de processos

Gestão de memória

Comunicação e I/O

Sistema de ficheiros

Chamadas ao sistema

Hardware

Aplicações e utilizadores

Modelos de Sistemas Operativos

• Modular– O SO encontra-se organizado segundo módulos à volta de um

núcleo (kernel)– O núcleo é geralmente pequeno (Micro-kernel), comunicando

com o hardware e estabelecendo a comunicação entre os diversos módulos

– Pode introduzir-se o conceito de processo cliente e de processo servidor que correm em modo utilizador

– Facilmente adaptável a sistemas distribuídos– Estrutura mais estável

Modelos de Sistemas Operativos

• Modular

Micro-Kernel

Chamadas ao sistema

Hardware

Gestãode

Processos

Gestãode

MemóriaI/O

Sistemade

Ficheiros

Aplicações e utilizadores

Modelos de Sistemas Operativos

38

Modelo de um SO

• Modular (Cliente-Servidor)

Servidorde

Processos

Servidorde

Memória

Servidorde I/O

Servidorde

Ficheiros

ProcessoCliente

ProcessoCliente

Micro-Kernel

Modo Utilizador

Modo Núcleo

Mensagens

Sistemas Operativos

• Como vimos, o Hardware de um computador comporta a possibilidade de executar diferentes funções mediante as instruções que lhe são fornecidas

• Quando o Computador é ligado, a CPU vai à primeira posição de memória procurar as primeiras instruções que deve executar.

• A primeira posição de memória está alojada em ROM e o código chama-se Firmware

• O Firmware contém as instruções necessárias ao arranque da máquina e serve de base para o funcionamento do Sistema Operativo

Por definição, o BIOS (Basic Input Output System) ou Sistema Básico de Entrada e Saída é um circuito ROM no qual residem as instruções básicas necessárias para o arranque do sistema.

É possível alterar alguns parâmetros de configuração de baixo nível acedendo ao setup da BIOS, durante o arranque.

Sistemas Operativos

Quando inicializamos o sistema, a BIOS conta a memória disponível, identifica dispositivos plug-and-play e realiza uma verificação geral dos componentes instalados. Este procedimento é chamado POST e destina-se a verificar se existe algo de errado com algum componente, além de verificar se foi instalado algum dispositivo novo. Somente após o POST, a BIOS entrega o controle do computador ao Sistema Operativo.

Sistemas Operativos

Surge então a mensagem: “Iniciando o Windows .....”, dependendo do sistema operativo instalado. Após o término do POST, a BIOS emite um relatório com várias informações sobre o hardware instalado. Este relatório é uma maneira fácil e rápida de verificar a configuração de um computador. Para parar a imagem tempo suficiente para conseguir ler asinformações, basta pressionara tecla “pause/break”.

Sistemas Operativos

Sistemas Operativos

As configurações da BIOS encontram-se guardadas na CMOS, Complementary Metal Oxide Semicondutor, que é uma memória volátil (perde os dados quando deixa de ser alimentada electricamente), é composta por cerca de 128 ou 256 bytes de RAM. Sempre que o computador é ligado a BIOS lê a CMOS recebendo então os valores guardados.Na BIOS reside a primeira camada de software de sistema (o Firmware) que é responsável pelas configurações iniciais da máquina e o reconhecimento dos vários subsistemas (CPU, FD e HDs, Memória, sistema de vídeo…)

Sistemas Operativos

Entre outras funções o papel mais importante do BIOS é o

carregamento do sistema operativo. Quando o computador é

ligado e o microprocessador tenta executar a primeira

instrução, ele tem que obtê-la de algum lado. Não é possível

obter essa instrução do sistema operativo, porque este está

localizado no disco rígido, e o microprocessador não pode

comunicar com ele sem que algumas instruções o digam

como fazê-lo. É o BIOS o responsável por fornecer essas

instruções.

Sistemas Operativos

Quando o computador é ligado, o BIOS segue a seguinte sequência:

1. Verifica as informações armazenadas numa pequenissima

memória RAM, que se localiza num chip fabricado com

tecnologia CMOS. A memória CMOS armazena informações

relativas à configuração de hardware, que podem ser alteradas

de acordo as mudanças do sistema. Essas informações são usadas

pelo BIOS para modificar ou complementar a

sua programação padrão, conforme

necessário.

Sistemas Operativos

2. POST (Power-On Self-Test ou Autoteste de Arranque),

que são os diagnósticos e testes realizados aos

componentes físicos (disco rígido, processador, etc). Os

problemas são comunicados por uma combinação de

sons (bipes) numa determinada sequência e se possível,

exibidos no ecrã. O manual do fabricante permite a

identificação do problema descrevendo a mensagem

que cada sequência de sons representa.

Sistemas Operativos

3. Activação de outros BIOS presentes em dispositivos

instalados no computador (ex. discos SCSI e placas de

vídeo).

4. Descompactação para a memória principal. Os dados,

armazenados numa forma compactada, são

transferidos para a memória, e só aí descompactados.

Isso serve para evitar a perda de tempo na

transferência dos dados.

Sistemas Operativos

5. Leitura dos dispositivos de armazenamento, cujos

detalhes e ordem de inicialização são armazenados na

CMOS. Se há um sistema operativo instalado no

dispositivo, no seu primeiro sector (o Master Boot

Record) estão as informações necessárias para o BIOS a

encontrar (este sector não deve exceder 512 bytes).

Sistemas Operativos

• Códigos de erro da BIOS

Sistemas Operativos

• Códigos de erro da BIOS

Sistemas Operativos

Sistemas Operativos

• Uma vez carregado em memória, o Sistema Operativo assume o controlo da máquina funcionando como uma interface entre os programas/utilizadores e a camada de hardware.

HardwareFirmWare

Sistema Operativo

Utilizadores

Aplicações

Sistemas Operativos

• Ao assumir o controlo de hardware, o Sistema Operativo passa a ter de garantir alguns serviços às camadas superiores, tendo por isso que desempenhar algumas tarefas, tais como:– Gerir tempo de processador atribuído– Gerir o espaço de memória a alocar– Estabelecer um modelo de organização de informação que

seja eficiente no que respeita à utilização dos dispositivos de armazenamento.

– Gerir as permissões de acesso e garantir a segurança de dados bem como a sua integridade

Sistemas Operativos

• Como todos sabemos a arquitectura dos sistemas informáticos é digital e binária, pelo que no seu estado original, a informação está presente na forma de 0 e 1.

• Como esta representação não é facilmente compreendida pelo utilizador, é também tarefa do S.O. Organizar a informação de acordo com os códigos humanos.

• Desta forma, a informação é geralmente organizada em contentores (ou pastas) e arquivos organizados e identificados segundo o seu conteúdo.

Sistemas Operativos – MS-DOS

• No que respeita ao mercado doméstico, foram várias as gerações e tipos de Sistemas Operativos, no entanto, alguns destacaram-se pela sua utilização massificada…

• Um desses casos é o velhinho MS-DOS

Sistemas Operativos – MS-DOS

• O MS-DOS (Microsoft Disk Operating System) foi o primeiro SO da Microsoft e cabia numa disquete

• Era um sistema mono-utilizador e mono-tarefa

Sistemas Operativos

• O UNIX é um sistema desenvolvido na década de 70 que tem a particularidade de, à semelhança do MS-DOS, ter uma CLI mas era já um sistema multi-utilizador e multi-tarefa.

• Para ter um GUI, o sistema permite a utilização de um componente (aplicação) denominado de servidor X que nada mais é do que a representação gráfica do interface de comandos.

• Mas existem outros, como por exemplo:

Sistemas Operativos

AmigaOS

PLATAFORMA Computadores AMIGA

CARACTERÍSTICAS SMP – Symetric Multiprocessing

COMPOSIÇÂO Kernell + Bibliotecas de 32 bits

É considerado, devido ao seu tempo de resposta, como um Sistema Operativo “em Tempo Real”

Sistemas Operativos

BeOS

PLATAFORMAPC com processador INTEL ou compativel (x86)

CARACTERÍSTICAS Sistema Modular (pagam-se os módulos)

COMPOSIÇÂO Um único ficheiro na pasta windows

É distribuído gratuitamente na sua versão não comercial

Sistemas Operativos

FreeBSD

PLATAFORMA x86, DEC Alpha, IA-64, UltraSpark

CARACTERÍSTICAS Deriva do BSD Unix (Univ. da Califórnia)

COMPOSIÇÂO Kernell + Bibliotecas de 32 bits

Sistema gratuito mesmo para uso comercial - funciona tanto em estações de trabalho como em servidores - é um sistema open source

Sistemas Operativos

Linux

PLATAFORMA x86, DEC Alpha, UltraSpark, MIPS e Power PC

CARACTERÍSTICAS Apenas o Kernell é Linux, o S.O. Chama-se GNU/Linux

COMPOSIÇÂO Kernell + Aplicativos GNU

DISTRIBUIÇÕES Red Hat, Suse, Caldera, Corel, Slackware, Mandrake, Debian…

INTERFACES GRAFICOS Gnome, KDE, Window Maker, Enlightment, Blackbox, Afterstep …

Sistema opensource (código aberto) e muito robusto.Tem vindo a ganhar terreno no que respeita ao utilizador domésticoAs aplicações estão directamente relacionadas com a distribuição / interface gráfico usado

Sistemas Operativos

MacOS (X)

PLATAFORMA Computadores Apple (MACs) – worstation e server

CARACTERÍSTICAS Desenvolvido a partir de UNIX

COMPOSIÇÂO Kernell + Bibliotecas de 32 bits

Graficamente é um sistema muito apelativo - O próprio sistema é acompanhado de aproximadamente 5.000 aplicações - O sistema consegue emular o Windows e correr aplicações para PC – Sistema de rede multiplataformaSegue uma linha “Click and Go”

Sistemas Operativos

E claro os mais conhecidos…

top related