resumidamente, um sistema operativo é um programa ou conjunto de programas cuja função é servir...

34
Sistemas Operativos

Upload: thais-bicalho-de-almada

Post on 07-Apr-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Sistemas Operativos

Page 2: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

O que é um sistema operativo?

…e quais são as suas funções?

Resumidamente, um Sistema Operativo é um

programa ou conjunto de programas cuja função é

servir de Interface entre um computador e o utilizador

e gerir os recursos e componentes de hardware de

modo a tornar o computador mais eficiente para o

acesso do utilizador. Se quiser saber mais…

Page 3: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Funções de um S.O.Mais detalhadamente, um SO tem várias funções tais como:

Partilha de recursos com protecção:

- físicos: processador, memória, discos, periféricos diversos;

- lógicos: programas de uso geral (editores, compiladores) e bibliotecas partilhadas por diversos programas.

Gestão da concorrência – controlar diversos fluxos de actividade independentes que se executam "em paralelo", sem que os mesmos interfiram não intencionalmente.

Gestão de informação persistente – armazenamento fiável e seguro da informação não volátil em suportes magnéticos, ópticos, etc.

Controlo dos gastos – contabilização e limitação da utilização dos recursos físicos.

Page 4: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Noção de um S.O.

Os computadores funcionam com dois tipos de software:

• software de sistema ou sistema operativo;

• software de aplicação.

Page 5: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

TIPOS DE SISTEMAS OPERATIVOS

Mainframes Servidores Multiprocessadores

Computadores Pessoais Embebidos e Smart CardsTempo Real

Page 6: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

MainframesUm Mainframe é um computador de grande porte, dedicado normalmente

ao processamento de um volume grande de informações.

Os mainframes são capazes de oferecer serviços de processamento a milhares de

utilizadores utilizando para isso milhares de terminais conectados directamente a ele

ou através de uma rede.

O termo mainframe refere-se ao gabinete principal que alojava a unidade central de

processamento nos primeiros computadores.

Embora venham perdendo espaço para os computadores pessoais (PCs) e para as

estações de trabalho, de custo bem menor, ainda são muito usados em ambientes

comerciais e grandes empresas (Bancos, Empresas de aviação, Universidades, etc.),

bem como para processamento científico.

Page 7: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Características:

geralmente ocupam um grande espaço;

necessitam de um ambiente especial para seu funcionamento, que incluiinstalações de refrigeração (alguns usam refrigeração a água);

são capazes de realizar operações em grande velocidade e sobre umvolume muito grande de dados;

possuem uma grande capacidade de processamento, e uma grandecapacidade de armazenamento primário (memória primária de trabalho) esecundário (unidades de armazenamento de dados e programas).

Actualmente o uso de Mainframes dá-se em processamento de dadosmeteorológicos, universidades, centros de pesquisa, unidades governamentais,bancos e outros sectores que demandam uma grande quantidade de dadosprocessados e que exigem rapidez.

Mainframes

Se quiser saber mais…

Page 8: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Correm em servidores que podem ser máquinas com grandes capacidades, workstations ou mesmo mainframes.

Servem múltiplos utilizadores através da rede e permitem a partilha de hardware ou de recursos de software.

Podem fornecer serviços de impressão, de ficheiros ou Web.

Servidores

Hiperligações (Internet) :

Tipos de ServidoresHardware e software de

servidoresSoftware de Servidores

Page 9: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

MultiprocessadoresMultiprocessamento é a capacidade de um sistema operativo executar simultaneamente dois ou mais processos.

Pressupõe a existência de dois ou mais processadores.

Difere da multitarefa, pois esta simula a simultaneidade, utilizando-se de vários recursos, sendo o principal o compartilhamento de tempo de uso do processador entre vários processos.

Hiperligações (Internet) :

ArquitecturaReferências

Page 10: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Características:

Envolve dois ou mais processadores físicos (sejam processadores separados ou

múltiplos núcleos encapsulados no mesmo chip) ou lógicos (processador(es) com a

tecnologia HyperThreading da Intel) com o mesmo poder computacional e cada um

capaz de executar processos autonomamente. Isto implica que não há nenhuma

unidade central de controle; cada processador contém sua própria unidade de

controle. Assim, efectivamente, a lógica de controle é distribuída pelo sistema.

Os processadores compartilham um único espaço de endereçamento de memória.

O sistema de hardware é como um todo gerido por um único sistema operativo.

O sistema operacional com suporte a multiprocessamento deve ser capaz de suportar

multitarefa e de manter múltiplas filas de processos, uma para cada processador.

Multiprocessadores

Page 11: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Este tipo de sistema operativo tem como objectivo servir de interface para um único utilizador.

São largamente utilizados para tarefas comuns tais como processamento de texto, desenho, acesso à Internet, etc.

Os Sistemas Operacionais predominantes são Microsoft Windows, Mac OS e Linux e as principais arquitecturas são as baseadas nos processadores x86, x64 e PowerPC.

Computadores Pessoais

Se quiser saber mais…

Page 12: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Sistemas de tempo real são sistemas cujas características dependem

do cumprimento de requisitos temporais e lógicos e onde as

consequências do não cumprimento desses mesmos requisitos

podem causar prejuízos nefastos, como sejam a segurança de

pessoas.

Nesta perspectiva, um Sistema Operativo de Tempo Real (SOTR) é

uma aplicação multitarefa na qual várias tarefas críticas devem ser

processadas em simultâneo. O sistema deve assegurar que as

tarefas críticas sejam tratadas em tempo útil.

Tempo Real

Hiperligações (Internet) :

S.O. de Tempo RealS.O. de Tempo Real 2

Page 13: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Este tipo de Sistema Operativo é nada mais nada menos um ambiente gráfico contendo também um conjunto reduzido de tarefas para permitir uma maior interacção entre o utilizador e o acessório/máquina – telecomandos, palmtop ou PDA – PalmOS, Windows CE

Embebidos

Hiperligações (Internet) :

PDA

Windows Mobile

Page 14: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

São Sistemas Operativos mais pequenos / pequenos CPUs – cartões de crédito.

Além de ser usado em cartões bancários e de identificação pessoal, é encontrado

também nos celulares GSM (o "chip" localizado normalmente atrás da bateria).

A grande diferença é que ele possui capacidade de processamento pois

embute um microprocessador e memória (que armazena vários tipos de

informação na forma electrónica), ambos com sofisticados mecanismos de

segurança.

É cada vez maior o número de cartões de crédito que utilizam a tecnologia.

Smart Cards

Se quiser saber mais…

Page 15: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Em relação ao Utilizador:

fácil de utilizar e aprender rápido e adequado às tarefas que se destina

A nível de Software:

manutenção forma de funcionamento restrições de utilização eficiência tolerância aos erros flexibilidade

Requisitos do S.O.

Page 16: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Estruturas dos S. O.

Monolítica

Hierárquica (Dijkstra)

Máquina virtual

Cliente-servidor

(Microkernel)

Page 17: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Estrutura MonolíticaCaracterísticas fundamentais:

• Construção do programa final com base em módulos compilados separadamente unidos através do linker;

• Boa definição dos parâmetros de ligação entre as diversas rotinas;

• Carece de protecções e privilégios de execução das rotinas;

• Feitos por medida (eficientes e rápidos na execução e gestão, mas têm pouca flexibilidade ao suportar diferentes ambientes de trabalho).

Primeiros S.O. constituídos por um único programa de várias sub-rotinas. (cada uma pode chamar qualquer uma das outras)

Page 18: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Exemplo da estrutura Monolitica

Page 19: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Estrutura Hierárquica (Dijsktra)Surgiu devido à necessidade de maior organização. O S.O contém várias sub-partes organizadas em forma de níveis. Pequenos blocos bem definidos com uma interface clara para permitir a ligação com outros blocos.

Estrutura hierárquica ou de níveis/camadas (layers).

O primeiro foi construído (para fins didácticos) na Holanda por E. W. Dijsktra (1968) e seus alunos e foi denominado THE (Technische Hogeschool, Eindhoven)

A maior parte dos S.O. actuais baseiam-se neste tipo de estrutura.

Neste modelo, as zonas/níveis mais internos estão protegidos contra acessos indesejados a partir de níveis mais externos.

Page 20: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Estrutura Máquina VirtualDisponibiliza uma interface a cada processo, mostrando ao utilizador uma máquina idêntica ao hardware existente – permite integrar diferentes SO dando ao utilizador a sensação de várias máquinas diferentes.

O núcleo destes SO denomina-se monitor virtual – tem por objectivo a multiprogramação.

Os níveis superiores apresentam várias máquinas virtuais – réplicas da máquina real – cada uma executa um S.O. diferente

Page 21: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Exemplo da estrutura Máquina Virtual

Page 22: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Estrutura Cliente-Servidor (Microkernel) Parte I de II

Mais recente

Pode ser executado na maior parte dos computadores

S.O. de propósitos gerais, servindo todo o tipo de aplicações e cumprindo as mesmas funções dos S.O. Convencionais.

No contexto Cliente/Servidor, um Cliente é um programa que pede um determinado serviço (por exemplo, a transferência de um ficheiro) a um Servidor, outro programa. O Cliente e o Servidor podem estar em duas máquinas diferentes, sendo esta a realidade para a maior parte das aplicações que usam este tipo de interacção.

Page 23: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Estrutura Cliente-Servidor (Microkernel) Parte II de II

Um processo Cliente pode actuar como Servidor para outro processo.

Grande flexibilidade nos serviços oferecidos ao utilizador final.

O núcleo serve apenas as funções mais básicas de memória, In/Out, ficheiros e processos, deixando para os servidores os outros serviços que o utilizador final ou o programador podem utilizar

Os servidores têm mecanismos de segurança e protecção que serão filtrados pelo núcleo que controla o hardware.

Page 24: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Conceitos de S.O.

Núcleo (Kernel) Processos System

CallsProtecções

Ficheiros Shell Interrupçãoexcepção

Page 25: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Conceitos de S.O. (Núcleo)

Conjunto de rotinas (procedimentos) que oferecem serviços aos utilizadores/aplicações (bem como outras rotinas do próprio SO) – núcleo do sistema ou kernel (cérebro).

Principais funções:

tratamento de interrupções;criação e eliminação de processos;sincronização e comunicação de processos;escalonamento e controlo de processos;gestão de memória;operações de In/Out;contabilização e segurança do sistema.

Page 26: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Um processo é um programa em execução.

Um processo tem associado o espaço de endereçamento:

onde pode ler e escrever;contém o programa executável;contém os dados do programa;contém a informação acerca da stack associada;contém informação sobre outros registos:

- program counter, stack pointer e outros registos de hardware, contém todas as informações necessárias à execução do programa.

Conceitos de S.O. (Processos)

Page 27: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

System Calls

Chamadas do sistema – a porta de entrada que permite (ou não) o acesso ao núcleo do S.O.

Constitui um conjunto de mecanismos de protecção do núcleo do sistema e de acesso aos seus serviços – evita que uma aplicação realize uma operação que danifique todo o S.O.

Quando um utilizador (ou processo) deseja solicitar algum serviço do sistema, realiza uma chamada a uma das suas rotinas (ou serviços) através das system calls.Para cada serviço existe uma system call associada e cada S.O. tem o seu conjunto (biblioteca) de chamadas (nomes, parâmetros, formas de activação específicos)O mecanismo é semelhante à chama de um procedimento/função num programa.

Conceitos de S.O. (System Calls)1ª parte

Page 28: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Conceitos de S.O. (System Calls)

System Calls

Podem ser divididos em grupos de função:

Gestão de processos:Criação/eliminação de processosAlteração das características do processoSincronização e comunicação entre processos

Gestão de memória:Alocação e libertação de memória

Gestão de entrada/saída:Operações de entrada/saídaManipulação de arquivos e directórios

2ª parte

Page 29: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Protecções

Mecanismo de protecção existente em sistemas multiprogramáveis onde vários utilizadores partilham os mesmos recursos e que garante a integridade dos dados pertencentes a utilizador ou processo. O recurso pode ser memória, CPU ou um dispositivo I/O.

No caso de vários processos concorrerem ao mesmo periférico (p.ex. impressora), o sistema operativo tenta prevenir um acesso concorrente (deadlock) através de uma política de controle de modos de acesso.

Gestão de memória - mecanismos de protecção que visam impedir a violação de espaços de memória reservados aos programas em execução.

Entrada/saída - o acesso a dispositivos físicos de I/O é feito através das seguintes técnicas:

Buffering – utilização de uma área de memória para a transferência de dados entre os periféricos e a memória principal.

Spooling – simultaneous peripherical operation on-line (spool).

Conceitos de S.O. (Protecções)

Page 30: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Ficheiros

Mecanismo de abstracção que fornece soluções para armazenar e recuperar informações em disco.Para encontrar um espaço para os ficheiros, existe em muitos S.O. o conceito de directório, que é a forma encontrada para agrupar vários ficheiros.

Conceitos de S.O. (Ficheiros)

Page 31: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Conceitos de S.O. (Shell)

Page 32: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Conceitos de S.O. (Interrupção/Excepção)

Page 33: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Outras curiosidades…

História dos S.O.

Evolução dos S.O.

Hiperligações:(Internet)

Page 34: Resumidamente, um Sistema Operativo é um programa ou conjunto de programas cuja função é servir de Interface entre um computador e o utilizador e gerir

Trabalho realizado por…

Pedro Rocha

Nº 1

11º C