25
1 Sistemas Operacionais e Sistemas Operacionais e Introdução à Introdução à Programação Programação Módulo 1 – Sistemas Módulo 1 – Sistemas Operacionais Operacionais

Sistemas Operacionais e Introdução à Programaçãomsobral/SOP/aula1.pdf · Resumo do sistema computacional: 12 Sistema Operacional ... História dos sistemas operacionais

Embed Size (px)

Citation preview

1

Sistemas Operacionais e Sistemas Operacionais e Introdução à Introdução à ProgramaçãoProgramação

Módulo 1 – Sistemas Módulo 1 – Sistemas OperacionaisOperacionais

2

SOPSOPCompetências:Competências:

1. Compreender as abstrações de um sistema operacional e 1. Compreender as abstrações de um sistema operacional e operar um sistema operacional operar um sistema operacional Unix/Linux Unix/Linux como usuário como usuário

avançado.avançado.

2. Desenvolver pequenos programas em linguagem de alto nível, 2. Desenvolver pequenos programas em linguagem de alto nível, acessando a acessando a Interface de Programação de Aplicações (API) Interface de Programação de Aplicações (API) do do

sistema operacional.sistema operacional.

3

Visão geral de um computadorVisão geral de um computadorComputador comum: máquina que executa programasComputador comum: máquina que executa programas

● Programas são receitas com instruçõesProgramas são receitas com instruções

Início do programa:

Leia linha do teclado;Compare texto lido com usuários cadastrados;Se encontrou um usuário então mostre seus dados na tela,senão mostre mensagem de “Usuário desconhecido”;

Fim do programa.

4

Visão geral de um computadorVisão geral de um computadorElementos básicos de um computador:Elementos básicos de um computador:● Processador:Processador: controla a operação do computador e controla a operação do computador e

processa os dados (executa as instruções)processa os dados (executa as instruções)● Memória principal:Memória principal: armazena dados e programas; armazena dados e programas;

tipicamente volátiltipicamente volátil● E/S:E/S: transfere dados entre o computador e seu ambiente transfere dados entre o computador e seu ambiente

externo (ex: discos, monitor, teclado, mouse, ...)externo (ex: discos, monitor, teclado, mouse, ...)● Interconexão do sistema: Interconexão do sistema: estruturas e mecanismos para estruturas e mecanismos para

comunicação entre os componentes acimacomunicação entre os componentes acima

5

Visão geral de um computadorVisão geral de um computador● Elementos básicos de um computador:Elementos básicos de um computador:

6

Visão geral de um computadorVisão geral de um computador● Memória principal:Memória principal:

● Como uma tabela onde estão guardadas palavras de Como uma tabela onde estão guardadas palavras de tamanho fixo (em bits)tamanho fixo (em bits)

● Cada palavra possui seu endereço: linha da tabela onde Cada palavra possui seu endereço: linha da tabela onde está a palavraestá a palavra

985600FFE3712024A6F0DE71006411985B394501886A2355

Palavra “00641198”: endereço 3Palavra “985600FF”: endereço 0

• Palavras são números (aqui em hexadecimal)

7

Visão geral de um computadorVisão geral de um computador● Hierarquia de memória:Hierarquia de memória:

● Velocidade x Custo X CapacidadeVelocidade x Custo X Capacidade

8

Visão geral de um computadorVisão geral de um computador● Processador:Processador:

● Executa instruções que estão Executa instruções que estão armazenadas em memória principalarmazenadas em memória principal

● Cada instrução é buscada (“Cada instrução é buscada (“fetchfetch”) da ”) da memória sequencialmentememória sequencialmente

● Um registrador especial contém Um registrador especial contém endereço da próxima instrução a ser endereço da próxima instrução a ser buscadabuscada

9

Visão geral de um computadorVisão geral de um computador● E/S:E/S:

● Dispositivos para entrada e saída de dadosDispositivos para entrada e saída de dados● Discos, teclado, mouse, monitor, placa de rede, Discos, teclado, mouse, monitor, placa de rede,

scanner, ...scanner, ...

10

Visão geral de um computadorVisão geral de um computador● Diversas técnicas de E/S:Diversas técnicas de E/S:

● E/S programadaE/S programada● E/S orientada a interrupçãoE/S orientada a interrupção● Acesso direto à memória (DMA)Acesso direto à memória (DMA)

11

Visão geral de um computadorVisão geral de um computador● Resumo do sistema computacional:Resumo do sistema computacional:

12

Sistema OperacionalSistema Operacional● Conceituação básica:Conceituação básica:

● Um programa que controla a execução de programas Um programa que controla a execução de programas aplicativosaplicativos

● Uma interface entre o usuário e a máquinaUma interface entre o usuário e a máquina● Esconde os detalhes do hardwareEsconde os detalhes do hardware

13

Sistema OperacionalSistema Operacional● Camadas de um sistema computacionalCamadas de um sistema computacional

14

Sistema OperacionalSistema Operacional● Objetivos de um sistema operacionalObjetivos de um sistema operacional

● Conveniência:Conveniência: tornar um computador mais fácil de tornar um computador mais fácil de usarusar

● Eficiência: Eficiência: aproveitar de forma eficiente os recursos aproveitar de forma eficiente os recursos do hardwaredo hardware

● Capacidade de evoluir: Capacidade de evoluir: poder incorporar novas poder incorporar novas funcionalidadesfuncionalidades

15

Sistema OperacionalSistema Operacional● Serviços providos por um SO:Serviços providos por um SO:

● Criação e execução de programasCriação e execução de programas● Acesso a dispositivos de E/SAcesso a dispositivos de E/S● Acesso controlado a arquivosAcesso controlado a arquivos● Acesso ao próprio sistemaAcesso ao próprio sistema● Detecção e tratamento de erros (hardware e software)Detecção e tratamento de erros (hardware e software)● Contabilização para monitoramento de desempenho e Contabilização para monitoramento de desempenho e

de uso de recursosde uso de recursos

16

Sistema OperacionalSistema Operacional● SO é também um programa (software):SO é também um programa (software):

● Dirige o processador no uso dos recursos da máquinaDirige o processador no uso dos recursos da máquina● Dirige o processador para a execução de programasDirige o processador para a execução de programas

17

Sistema OperacionalSistema Operacional● Abstrações típicas de SO:Abstrações típicas de SO:

● ProcessosProcessos: programa em execução: programa em execução● Arquivos e diretóriosArquivos e diretórios: repositórios de dados : repositórios de dados

identificados por nomesidentificados por nomes● Memória virtualMemória virtual: memória secundária (disco) usada : memória secundária (disco) usada

como se fosse memória principalcomo se fosse memória principal● E/SE/S: dispositivos vistos como se fossem arquivos : dispositivos vistos como se fossem arquivos

especiaisespeciais● RedeRede: conexões de rede e facilidades para envios de : conexões de rede e facilidades para envios de

mensagensmensagens

18

Sistema OperacionalSistema Operacional● História dos sistemas operacionaisHistória dos sistemas operacionais

● 1a geração: 1945-19551a geração: 1945-1955

● Válvulas e painéis de programaçãoVálvulas e painéis de programação

● 2a geração: 1955-19652a geração: 1955-1965

● Transistores e sistemas em lote (Transistores e sistemas em lote (jobsjobs))

● 3a geração: 1965-19803a geração: 1965-1980

● CIs e multiprogramação (CIs e multiprogramação (timesharingtimesharing))

● 4a geração: 1980 – 19954a geração: 1980 – 1995

● Computadores pessoaisComputadores pessoais

● 5a geração: 1995 – presente5a geração: 1995 – presente

● Computadores em rede e InternetComputadores em rede e Internet

19

Sistema OperacionalSistema Operacional● História dos sistemas operacionaisHistória dos sistemas operacionais

● Antigos sistemas em loteAntigos sistemas em lote

● Insere cartões perfurados na leitora de fitaInsere cartões perfurados na leitora de fita

● Lê cartões para a fitaLê cartões para a fita

● Coloca fita na CPU para processamentoColoca fita na CPU para processamento

● Coloca fita na leitora de fita que imprime a saídaColoca fita na leitora de fita que imprime a saída

20

Sistema OperacionalSistema Operacional● História dos sistemas operacionaisHistória dos sistemas operacionais

● Multiprogramação – 3a geraçãoMultiprogramação – 3a geração

● Sistema com 3 jobs na memóriaSistema com 3 jobs na memória

● Uso de interupçõesUso de interupções

● Surgimento de discos magnéticosSurgimento de discos magnéticos

21

Sistema OperacionalSistema Operacional● História dos sistemas operacionaisHistória dos sistemas operacionais

● Uniprogramação: apenas um processo executa por vez (e Uniprogramação: apenas um processo executa por vez (e até o fim)até o fim)

● Uso ineficiente dos recursos da máquinaUso ineficiente dos recursos da máquina

● Processo em espera por E/S prende o processadorProcesso em espera por E/S prende o processador

22

Sistema OperacionalSistema Operacional● História dos sistemas operacionaisHistória dos sistemas operacionais

● Multiprogramação: vários processos executam por vezMultiprogramação: vários processos executam por vez

● Uso eficiente dos recursos da máquinaUso eficiente dos recursos da máquina

● Processo em espera por E/S libera o processador para Processo em espera por E/S libera o processador para outro processooutro processo

23

Sistema OperacionalSistema Operacional● História dos sistemas operacionaisHistória dos sistemas operacionais

● Características de SO para multiprogramaçãoCaracterísticas de SO para multiprogramação

● Deve saber escolher algum dos processos ativos para Deve saber escolher algum dos processos ativos para usar o processadorusar o processador

● Deve cuidar para que um processo não interfira no Deve cuidar para que um processo não interfira no funcionamento de outros processosfuncionamento de outros processos

● Deve alocar a memória da melhor forma entre os Deve alocar a memória da melhor forma entre os processosprocessos

● Deve coordenar o acesso dos processos aos dispositivos Deve coordenar o acesso dos processos aos dispositivos de E/Sde E/S

24

Sistema OperacionalSistema Operacional● História dos sistemas operacionaisHistória dos sistemas operacionais

● Computadores pessoais – 4a geraçãoComputadores pessoais – 4a geração

● Dispositivos de E/S: mouse, impressora, teclado, monitorDispositivos de E/S: mouse, impressora, teclado, monitor

● Baseado em microprocessadorBaseado em microprocessador

● Microprocessador Intel 8080 (CP/M): 1974Microprocessador Intel 8080 (CP/M): 1974

● IBM PC-DOS (MS-DOS): 1980IBM PC-DOS (MS-DOS): 1980

● Pode rodar diferentes tipos de SO: Windows, Linux, MS-Pode rodar diferentes tipos de SO: Windows, Linux, MS-DOSDOS

25

Sistema OperacionalSistema Operacional● História dos sistemas operacionaisHistória dos sistemas operacionais

● Computadores em rede – 5a geraçãoComputadores em rede – 5a geração

● Comunicação em rede incorporada ao computador e ao Comunicação em rede incorporada ao computador e ao sistema operacionalsistema operacional

● SO com funcionalidades de sistemas distribuídosSO com funcionalidades de sistemas distribuídos

● Acesso a dispositivos remotos: discos de rede Acesso a dispositivos remotos: discos de rede (compartilhamentos), impressoras(compartilhamentos), impressoras

● Execução de processos remota: Terminal Service, X11Execução de processos remota: Terminal Service, X11

● Aplicações cliente-servidor: web, FTP, email, ...Aplicações cliente-servidor: web, FTP, email, ...

● Aplicações P2P: BitTorrent, eMule, ...Aplicações P2P: BitTorrent, eMule, ...

● SOs: Linux, Windows, MacOS, Sun Solaris, ...SOs: Linux, Windows, MacOS, Sun Solaris, ...