Sistemas Operacionais · 2014. 2. 2. · magnética de entrada. A fita de entrada era colocada no...

Preview:

Citation preview

SISTEMAS OPERACIONAIS

Conteúdo

Introdução ao S.O

Gerenciamento de processos.

Gerenciamento de memória.

Dispositivos de Entrada/Saída.

Sistemas de arquivos.

Definição do problema

Um sistema de computação consiste de diversos

dispositivos.

Todos os dispositivos são complexos de manipular.

Escrever programas que fazem usos desses

dispositivos é uma tarefa difícil.

Como solucionar o problema?

Utilizar uma camada de software chamada

sistema operacional.

Ele gerencia todos esses dispositivos e fornece uma

interface de mais alto nível para acesso ao

hardware.

O que é um Sistema Operacional?

É um software que realiza duas funções:

Estende a máquina, isto é, esconde do programador a

“verdade” sobre a programação do hardware e

apresenta uma forma mais simples de acessar o

hardware.

Gerencia recursos, isto é, controla todo o hardware e

controla a concorrência entre os diversos processos que

tentam usar esse hardware.

Exemplo de acesso ao hardware

Queremos gravar dados em um disquete sem um

S.O:

O controlador do disquete tem 16 funções de baixo

nível;

Funções de leitura/escrita têm 13 parâmetros;

Retornam 23 informações de status.

É preciso verificar o status do motor.

Resumindo...

Sistema operacional é um software utilizado para

facilitar a utilização do hardware, fornecendo ao

usuário uma abstração maior, evitando que o

programador acesse as instruções de hardware.

O SO gerencia os recursos de hardware, como por

exemplo: endereçamento de memória, fila de

processos para execução, concorrência entre

processos.

Estrutura de um computador moderno

Estrutura de um computador moderno

Dispositivos físicos: circuitos, unidades de disco

etc.

Microprogramação: constituída por softwares

capaz de interpretar e executar as instruções de

máquina recebidas da camada superior.

Estrutura de um computador moderno

Linguagem de máquina: instruções que movem os

dados pela maquina efetuando operações lógicas

e aritméticas.

Sistema operacional: esconde a complexidade do

hardware e gerencia os recursos compartilhados.

Estrutura de um computador moderno

Utilitários: compiladores, editores texto,

interpretador de comando.

Aplicativos: navegador web, bate-papo etc.

Evolução dos S.O

Os sistemas operacionais evoluíram com o passar

dos anos, acompanhando a arquitetura dos

computadores que executavam.

1ª geração (1940 – 1955)

Foi marcada pelo invento das válvulas.

Computadores eram formados por milhares de

válvulas ocupando salas imensas.

Não havia conceito de sistema operacional.

O acesso era feito diretamente nos painéis do

equipamento, onde o usuário programa seus

cálculos.

Surge o ENIAC, onde a programação era por fios e

pinos.

1ª geração (1940 – 1955) (cont.)

Computador baseado em válvulas

Computador ENIAC

2ª geração (1955 – 1965)

Marcada por três avanços:

Utilização dos transistores em grande quantidade.

Sistema de processamento em batch.

Surgimento de linguagens de programação de alto

nível (Fortran, Algol e Cobol).

Criação de mainframes.

Programas deixam de ter relação direta com o

hardware.

2ª geração (1955 – 1965)

Processamento em batch:

Programas eram gravados em cartões perfurados.

Após a leitura, eles eram salvos em uma fita

magnética de entrada.

A fita de entrada era colocada no computador de

grande porte (IBM 7094). Ao final do processamento,

gravava o resultado em uma segunda fita (de saída).

A segunda fita (de saída) era colocada em um

computador (IBM 1401) que lia a fita de saída e

imprimia seu conteúdo.

2ª geração (1955 – 1965) (cont.)

Sistema de processamento batch

3ª geração (1965 – 1980)

Surgimento dos circuitos integrados.

Surgimento das técnicas de:

Multiprogramação: execução de vários programas por

meio da divisão de memória em partes.

Timesharing: divide o tempo de uso do processador

entre todos os programas.

4ª geração (1980 – 1990)

Surgimentos dos PCs (personal computers).

Surgimento dos sistemas operacionais mais

modernos:

MS-DOS: linha de comando.

Novel network : sistemas operacional de rede.

Macintosh: baseado em janelas.

5ª geração (1990 – ...)

Surgimento da computação distribuída

Um programa em execução que pode ser dividido em

subprocessos para serem executados em outros

computadores na rede.

Surgimento do protocolo TCP/IP, padrão Ethernet e

o modelo cliente/servidor.

Surgimento da computação ubíqua.

Conceitos básicos de S.O

Monotarefa

Os primeiros S.O executavam um programa de

cada vez.

Os outros programas deveriam esperar o termino

para poder executar.

Todos os recursos ficavam dedicados a uma única

tarefa.

Multitarefa

Suporta a execução concorrente de vários

programas, dividindo os recursos.

Classificado como:

Monousuário e Multiusuário.

Pode ser:

Cooperativo: o processo libera a CPU voluntariamente

(i.e não há interrupções)

Preemptivo: quando o sistema gera uma interrupção e

dá lugar a outro processo na CPU.

Processos

É uma abstração de um programa em execução.

Cada programa tem ao menos um processo

concorrendo os recursos de sistema.

Possui um espaço de endereçamento na memória.

Pode assumir três estados:

Execução

Bloqueado

Pronto

Multiprocessamento

Sistemas com múltiplos processadores.

Compartilham a mesma memória e dispositivos de

entrada.

Aumentam a capacidade computacional.

Interpretador de comandos (Shell)

Interface entre o usuário e o sistema operacional.

É onde o usuário solicita a execução de programas.

Chamadas do sistema

(System Calls)

Interface entre softwares aplicativos e o sistema

operacional.

Exemplo:

Criar arquivos.

Acessar drive de disquete, CD-Rom etc.

Sistemas Operacionais e suas

Características

Recommended