sistemas operacionais professor - airton kuada email - [email protected]

191
SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - [email protected]

Upload: internet

Post on 17-Apr-2015

170 views

Category:

Documents


36 download

TRANSCRIPT

Page 1: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS OPERACIONAIS

PROFESSOR - AIRTON KUADA

EMAIL - [email protected]

Page 2: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

EMENTA DA DISCIPLINA

• HISTÓRICO E EVOLUÇÃO• TIPOS DE SISTEMAS OPERACIONAIS• SERVIÇOS DO SISTEMA OPERACIONAL• ESTRUTURA DE UM SISTEMA OPERACIONAL• CONCEITOS DE HARDWARE E SOFTWARE• PROCESSOS, COMUNICAÇÃO INTERPROCESSOS• ESCALONAMENTO• GERENCIAMENTO DE MEMÓRIA, PAGINAÇÃO,

MULTIPROGRAMAÇÃO MEMÓRIA VIRTUAL• SISTEMAS DE ARQUIVOS• GERÊNCIA DE DISPOSITIVOS

Page 3: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

BIBLIOGRAFIA

• ARQUITETURA DE SISTEMAS OPERACIONAIS– FRANCIS B. MACHADO– LUIZ PAULO MAIA

• SISTEMAS OPERACIONAIS MODERNO– ANDREW S. TANENBAUM

Page 4: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

INTRODUÇÃO

Page 5: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

O QUE É UM SISTEMA OPERACIONAL ???

CONJUNTO DE PROGRAMAS EXECUTADOS PELO PROCESSADOR DA MESMA FORMA QUE QUALQUER OUTRO PROGRAMA

QUAL A FUNÇÃO DE UM SISTEMA OPERACIONAL ??

CONTROLAR O FUNCIONAMENTO DO COMPUTADOR, COMO UM GERENTE DOS DIVERSOS RECURSOS DISPONÍVEIS NO SISTEMA (IMPRESSORA, DISCO, VÍDEO, TECLADO, FITA)

Page 6: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

VISÃO DE UM SISTEMA DE COMPUTAÇÃO

Page 7: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

VISÃO DO COMPUTADOR PELO USUÁRIO

Page 8: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MÁQUINAS DE NÍVEIS

Page 9: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

HISTÓRICO

Page 10: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PRIMEIRA FASE (1945-1955)

INÍCIO DA SEGUNDA GUERRA SURGEM OS PRIMEIROS COMPUTARES: MILHARES DE VÁLVULAS, NECESSIDADES DE GRANDES ÁREAS, ALTO CONSUMO, LENTO

PRIMEIRO COMPUTADOR DE PROPÓSITO GERAL - ENIAC

- CALCULO BÁLISTICO

- 18 MIL VÁLVULAS

- 10 CAPACITORES

- 70 MIL RESISTORES

- PESAVA 30 TONELADAS

- CONSUMO DE 140 KVA EM FUNCIONAMENTO

- 5 MIL ADIÇÕES POR SEGUNDO

Page 11: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SEGUNDA FASE (1956-1965)

- CRIAÇÃO DO TRANSISTOR E MEMÓRIA MAGNÉTICA

- SURGIMENTO DOS PRIMEIROS SISTEMAS OPERACIONAIS

- PRIMEIRAS LINGUAGENS ASSEMBLY E FORTRAN FACILITARAM A PROGRAMAÇÃO

- PROCESSAMENTO BATCH

- OS SISTEMAS OPERACIONAIS PASSARAM A TER O SEU PRÓPRIO CONJUNTO DE ROTINAS PARA OPERAÇÃO DE ENTRADA/SAIDA (INPUT/OUTPUT CONTROL - IOCS)

- COM O IOCS O PROGRAMADOR NÃO NECESSITA ESCREVER A ROTINAS DE I/O (INDEPENDÊNCIA DO DISPOSITIVO)

Page 12: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TERCEIRA FASE (1966-1980)

- APARECIMENTO DOS CIRCUITOS INTEGRADOS E MICROPROCESSADORES, REDUÇÃO DE CUSTO E TAMANHO E AUMENTO DE PODER DE PROCESSAMENTO DAS MÁQUINAS

-IBM LANÇA A SÉRIE 360 (PEQUENA, PODERASA E COMPATÍVEL) QUE DURANTE A EVOLUÇÃO GARANTIA A COMPATIBILIDADE COM AS GERAÇÕES ANTERIORES (PRESERVA O INVESTIMENTO)

- DESENVOLVIMENTO DO OS/360 QUE TENTAVA ATENDER TODOS OS TIPOS DE APLICAÇÕES E PERIFÉRICOS

- DEC LANÇA PDP-8

Page 13: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TERCEIRA FASE (1966-1980)

- COMPARTILHAMENTO DA MEMÓRIA PRINCIPAL E PROCESSADOR PERMITE A MULTIPROGRAMAÇÃO

- SUBSTITUIÇÃO DE FITA MAGNÉTICAS POR DISCO INTRODUZ MELHORIA NO SISTEMA EM BATCH, PODES-SE ALTERAR A ORDEM DA SEQUENCIA DE PROCESSAMENTO

- COMUNICAÇÃO COM O USUÁRIO (SISTEMAS ON-LINE)

- TIME-SHARING

- SURGIMENTO DO SISTEMA OPERACIONAL UNIX (1969) (ASSEMBLER DEPOIS C) EM UM PDP-7 BASEADO NO MULTICS (DEC)

- SURGIMENTO DOS PRIMEIROS MICROCOMPUTADORES (CPM, 8 BITS)

Page 14: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

QUARTA FASE (1981-1990)

- PROJETO DE MINIATURIZAÇÃO (LSI, VLSI) DE COMPONENTE

- MINI E SUPERMINI COMPUTADORES GANHAM ESPAÇO

- SURGIMENTO DO PC (PERSONAL COMPUTER) DE 16 BITS DA IBM E O SISTEMA DOS (DISK OPERATION SYSTEM).

- OS SISTEMAS UNIX LIKE DOMINAM OS MINIS E SUPERMINIS

- INTRODUÇÃO DO CONCEITO DE MULTIPROCESSAMENTO

- REDES DISTRIBUIDAS (WAN) COM PROTOCOLOS SNA, DECNET, TCP/IP COMEÇA A DESPONTAR

- PRIMEIROS SISTEMAS OPERACIONAIS DE REDE (NETWARE).

Page 15: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

QUINTA FASE (1991 - ????)

- A REDE MUNDIAL DE COMPUTADORES (INTERNET)

- SISTEMAS ESPECIALISTAS (INTELIGÊNCIA ARTIFICIAL)

- REDES NEURAIS

- PROCESSAEMENTO DE GRANDES VOLUMES DE DADOS

- PROCESSAMENTO DISTRIBUÍDO (RPC, CORBA)

- ARQUITETURA CLIENT/SERVER

- SURGIMENTO DA INTERFACE GRÁFICO (WINDOWS)

- MULTIMÍDIA

- IMPLEMENTAÇÃO DE CONCEITOS UTILIZADOS EM COMPUTADORES GRANDES COMPUTADORES, AGORA NO DESKTOP

Page 16: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

CONCEITOS DE HARDWARE E SOFTWARE

Page 17: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

HARDWAREÉ COMPOSTO POR UM CONJUNTO DE COMPONENTES INTERLIGADOS: PROCESSADOR, MEMÓRIA PRINCIPAL, REGISTRADORES, TERMINAIS, IMPRESSORAS, DISCOS MAGNÉTICOS, FITAS MAGNÉTICAS, ETC.

COMPONENTES SÃO DIVIDIDOS EM UNIDADES FUNCIONAIS:

- UCP

- MEMÓRIA PRINCIPAL

- DISPOSITIVOS DE ENTRADA E SAÍDA

Page 18: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

UNIDADES FUNCIONAIS DE UM COMPUTADOR

Page 19: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

UCP- UNIDADES DA UCP:

UC - CONTROLA AS ATIVIDADES DE TODOS OS COMPONENTES DO COMPUTADOR, MEDIANTE A EMISSÃO DE PULSOS ELÉTRICOS GERADO POR UM DISPOSITIVO CHAMADO DE CLOCK.

ULA - REALIZAÇÃO DE OPERAÇÕES LÓGICAS (TESTES E COMPARAÇÕES) E ARITMÉTICAS (SOMAS E SUBTRAÇÕES)

- VELOCIDADE DO PROCESSADOR É MEDIDA EM NÚMERO DE INSTRUÇÕES EXECUTADAS EM UMA UNIDADE DE TEMPO (SEGUNDOS), PODE SER MIPS, MEGFLOPS

Page 20: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

CLOCK

- DISPOSITIVO DE ALTA VELOCIDADE, LOCALIZADO NA UCP

- GERA PULSOS ELÉTRICO SINCRONOS EM DETERMINADO INTERVALO DE TEMPO

- A QUANTIDADE DE VEZES QUE ESTE PULSO SE REPETE EM UM SEGUNDO DEFINE A FREQUENCIA DO CLOCK (MEDIDO EM HERTZ).

A UC UTILIZA O SINAL DE CLOCK PARA A EXECUÇÃO DAS INSTRUÇÕES

QUANTO MAIOR A VELOCIDADE, MAIOR A QUANTIDADE DE INSTRUÇÃO EXECUTADO EM UMA UNIDADE DE TEMPO

Page 21: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

REGISTRADORES

- MEMÓRIA DE ALTA VELOCIDADE

- LOCALIZADO NO INTERIOR DO PROCESSADOR

- ARMAZENAMENTO TEMPORÁRIO DE DADOS

- O NÚMERO DE PROCESSADOR VARIA EM FUNÇÃO DA ARQUITETURA DE CADA PROCESSADOR

- REGISTRADORES COMUNS A TODAS ARQUITETURAS:

- CONTADOR DE INSTRUÇÃO (IP)

- STACK POINTER (SP)

- REGISTRADOR DE ESTADO (FLAGS)

Page 22: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DESCRIÇÃO DOS REGISTRADORES DO PC 8086 - 16 BITS

Page 23: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DESCRIÇÃO DOS REGISTRADORES DO PC 80386 - 32 BITS

Page 24: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ARQUITETURA DO PC

Page 25: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MEMÓRIA PRINCIPAL (RAM)

- ORGANIZADO EM CÉLULAS

- CADA CÉLULA POSSUI UM NÚMERO DE BITS

- BIT É A UNIDADE BÁSICA DE MEMÓRIA E POSSUI

VALOR 0 OU 1

- ATUALMENTE TODOS OS COMPUTADORES

TRABALHAM COM CÉLULAS DE 8 BITS (PODE

EXISTIR COM 32, 64)

- CADA CÉLULA POSSUI UMA IDENTIFICAÇÃO

Page 26: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MEMÓRIA PRINCIPAL

Page 27: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MEMÓRIA ROM

- MEMÓRIA NÃO VOLÁTIL

- NÃO NECESSITA DE ENERGIA PARA PRESERVAR O CONTEÚDO

- PODE SER GRAVADAS UMA ÚNICA VEZ

- GRAVAÇÃO ATRAVÉS DE LUZ ULTRA VIOLETA

- EXISTEM OUTRAS VARIANTES: EPROM, EAROM, EAPROM, NVRAM

Page 28: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MEMÓRIA CACHE

- MEMÓRIA VOLÁTIL DE ALTA VELOCIDADE (nano)

- TEMPO DE ACESSO MENOR QUE A MEMÓRIA

PRINCIPAL

- ANTES DE ACESSAR A MEMÓRIA PRINCIPAL É

VERIFICADO A MEMÓRIA CACHE

- A CADA ACESSO A MEMÓRIA PRINCIPAL, É LIDO

UM BLOCO DA MEMÓRIA E ATUALIZADO A

MEMÓRIA CACHE

- POSSUI ALTO CUSTO

Page 29: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MEMÓRIA SECUNDÁRIA

- MEIO PERMANENTE DE ARMAZENAMENTO DE PROGRAMAS E DADOS

- NÃO PRECISA DE ENERGIA PARA MANTER AS INFORMAÇÕES

- ACESSO LENTO (mili), BAIXO CUSTO

- GRANDE CAPACIDADE DE ARMAZENAMENTO

- EXEMPLO DE MEMÓRIA SECUNDÁRIA

- FITA MAGNÉTICA

- DISCO MAGNÉTICO

- DISCO ÓPTICO

Page 30: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

RELAÇÃO ENTRE OS TIPOS DE MEMÓRIAS

Page 31: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DISPOSITIVO DE ENTRADA/SAÍDA

- UTILIZADO PARA COMUNICAÇÃO ENTRE O COMPUTADOR E O MUNDO EXTERNO (TECLADO, IMPRESSORA, MONITOR, DISCOS, SCANNER, CANETA ÓTICA, MOUSE, MULTIMIDIA, FITAS)

- ATRAVÉS DESTES DISPOSITIVOS A UCP E MEMÓRIA PODEM COMUNICAR-SE COM OS USUÁRIOS (ANALISTAS, PROGRAMADORES, USUÁRIOS FINAIS)

- PODEM SER DIVIDIDOS DA SEGUINTE FORMA:

- INTERFACE HOMEM/MÁQUINA

- MEMÓRIA SECUNDÁRIA.

Page 32: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

BARRAMENTO

- AS UNIDADES FUNCIONAIS DO COMPUTADOR SÃO INTERLIGADAS ATRAVÉS DE LINHAS DE COMUNICAÇÃO DENOMINADAS BARRAMENTOS.

- NO BARRAMENTO TRAFEGAM INFORMAÇÕES COMO ENDEREÇOS, DADOS OU SINAIS DE CONTROLE

- A COMUNICAÇÃO NO BARRAMENTO PODE SER UNIDIRECIONAL OU BIDIRECIONAL

- ENTRE A UCP E MEMÓRIA EXISTE TRÊS BARRAMENTO: BARRAMENTO DE DADOS, BARRAMENTO DE ENDEREÇOS, BARRAMENTO DE CONTROLE

Page 33: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

BARRAMENTO

Page 34: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PIPELINING

- SEMELHANTE A UMA LINHA DE MONTAGEM, ONDE UMA TAREFA É DIVIDIDA EM SEQUENCIA DE SUBTAREFAS, E EXECUTADAS EM DIFERENTES ESTÁGIOS

- EXEMPLO DE PIPELINE: EXECUÇÃO DE UMA INSTRUÇÃO

- PODE SER UTILIZADA COMO TÉCNICA DE PARALELISMO EM SISTEMAS COM UM OU MAIS PROCESSADORES PARA AUMENTAR O DESEMPENHO DOS SISTEMA DE COMPUTADORES.

Page 35: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ARQUITETURA CISCxRISCRISC (REDUCED INSTRUCTION SET COMPUTER)

- POSSUI POUCAS INSTRUÇÕES DE MÁQUINA

- INSTRUÇÃO EXECUTADO DIRETAMENTE PELO HARDWARE

- GRANDE NÚMERO DE PROCESSADORES

- EXEMPLO: SUN, SPARC, RS-6000, PA-RISC, ALPHA, MIPS

CISC (COMPLEX INSTRUCTION SET COMPUTERS)

- INSTRUÇÕES COMPLEXAS QUE SÃO INTERPRETADAS POR MICROPROGRAMAS

NÚMERO DE REGISTRADORES PEQUENO

- QQUER INSTRUÇÃO PODE ACESSAR A MEMÓRIA RAM

- EXEMPLO: VAX, 80X86, PENTIUM, 68xxxx

Page 36: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SOFTWARE- O HARDWARE POR SI SÓ NÃO POSSUI UTILIDADE.

- DEVE EXISTIR UM CONJUNTO DE PROGRAMAS, UTILIZADO COMO INTERFACE ENTRE AS NECESSIDADES DO USUÁRIO E AS CAPACIDADES DO HARDWARE.

- TIPOS DE SOFTWARE

- TRADUTOR

- INTERPRETADOR

- LINKER

- LOADER

- DEPURADOR

- LINGUAGEM DE CONTROLE (SHELL)

- LINGUAGEM DE MÁQUINA

Page 37: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TRADUTOR-INICIALMENTE, PARA PROGRAMAR ERA NECESSÁRIO CONHECER O HARDWARE E PROGRAMAR EM PAINÉIS E FIOS

- A PROGRAMAÇÃO ERA FEITO EM LINGUAGEM DE MÁQUINA DIRETAMENTE E CARREGADO EM MEMÓRIA

- COM O SURGIMENTO DAS LINGUAGENS DE MONTAGEM E ALTO NÍVEL, O PROGRAMADOR NÂO NECESSITA CONHECER ASPECTOS DE HARDWARE

- OS PROGRAMAS EM LINGUAGEM DE MONTAGEM E ALTO NÍVEL NÃO PODEM SER EXECUTADOS DIRETAMENTE PELA UCP , NECESSITAM PASSAR POR UM PROCESSO DE TRADUÇÃO ONDE TODA REPRESENTAÇÃO SIMBÓLICA É TRADUZIDO PARA UM CÓDIGO BINÁRIO

Page 38: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TRADUTOR

- O MÓDULO GERADO PELO TRADUTOR É CHAMADO DE CÓDIGO OBJETO

- DEPENDENDO DA LINGUAGEM DE PROGRAMAÇÃO UTILIZADO, O TRADUTOR PODE SER CHAMADO DE

- MONTADOR

- COMPILADOR.

Page 39: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TRADUTOR

Page 40: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

dosseg.model small.stack 100h

.datahello_message db 'Hello, World!',0dh,0ah,'$'

.codemain proc mov ax,@data mov ds,ax

mov ah,9 mov dx,offset hello_message int 21h mov ax,4C00h int 21hmain endpend main

PROGRAMA HELLO.ASM

Page 41: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

#include <stdio.h>

main ( ){

char hello_message[] = "'Hello, World!";

printf ("%s\n", hello_message )

}

PROGRAMA HELLO.C

Page 42: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

19BB:0010 B8BD19 MOV AX,19BD19BB:0013 8ED8 MOV DS,AX19BB:0015 B409 MOV AH,0919BB:0017 BA0200 MOV DX,000219BB:001A D21 INT 2119BB:001C B8004C MOV AX,4C0019BB:001F CD21 INT 21

CÓDIGO BINÁRIO GERADO PELO MONTADOR

Page 43: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TRADUTOR

- LINGUAGEM DE MONTAGEM É UM CONJUNTO DE SÍMBOLOS MNEMÔNICOS ASSOCIADOS ÀS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA DO PROCESSADOR.

- A LINGUAGEM DE MONTAGEM DEPENDE DA ARQUITETURA DE CADA PROCESSADOR, ISTO É VARIA DE COMPUTADOR PARA COMPUTADO (MASM, TASM NA PLATAFORMA 80X86)

- A LINGUAGEM DE ALTO NÍVEL NÃO POSSUI LIGAÇÃO DIRETA COM A MÁQUINA, FICANDO ESSA PREOCUPAÇÃO COM O COMPILADOR. TODOS OS DETALHES DE ARQUITETURA DO PROCESSADOR FICA ESCONDIDO DO PROGRAMADOR QUE FICARÁ PREOCUPADO APENAS COM A APLICAÇÃO (COBOL, C, PASCAL).

Page 44: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

LINKER- O CÓDIGO BINÁRIO GERADO PELO TRADUTOR AINDA NÃO PODE SER EXECUTADO, APESAR DE ESTAR EM CÓDIGO DE MÁQUINA, PODE EXISTIR CHAMADAS DE SUB-ROTINAS EXTERNAS

- O LINKER É O RESPONSÁVEL POR GERAR, A PARTIR DE UM OU MAIS MÓDULOS-OBJETOS, UM ÚNICO PROGRAMA EXECUTÁVEL

FUNÇÕES BÁSICAS DO LINKER:

- RESOLVER TODAS AS REFERÊNCIAS SIMBÓLICAS EXISTENTES ENTRE OS MÓDULOS (PESQUISA EM BIBLIOTECAS)

- RESERVAR MEMÓRIA PARA A EXECUÇÃO DO PROGRAMA

Page 45: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

LINKER

Page 46: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

INTERPRETADOR

- O INTERPRETADOR É UM TRADUTOR QUE NÃO GERA CÓDIGO-OBJETO. A PARTIR DE UM PROGRAMA-FONTE ESCRITO EM LINGUAGEM DE ALTO NÍVEL, O INTERPRETADOR TRADUZ CADA INSTRUÇÃO NO MOMENTO DA EXECUÇÃO E EXECUTA A INSTRUÇÃO

- DESVANTAGEM

- TEMPO GASTO NA TRADUÇÃO DAS INSTRUÇÕES DO PROGRAMA A CADA VEZ QUE FOR EXECUTADO

VANTAGEM

- RAPIDEZ NOS TESTES DE APLICAÇÕES QUE ESTÃO EM DESENVOLVIMENTO

- EXEMPLOS: DBASE, BASI, APL,

Page 47: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

LOADER

- É O UTILITÁRIO RESPONSÁVEL EM COLOCAR FISICAMENTE NA MEMÓRIA UM PROGRAMA PARA EXECUÇÃO.

- O PROCEDIMENTO DE CARGA VARIA COM O CÓDIGO GERADO PELO LINKER, DESTA FORMA O LOADER É CLASSIFICADO COMO SENDO DO TIPO:

- ABSOLUTO: O PROGRAMA É CARREGADO EM UMA POSIÇÃO EXATA DA MEMÓRIA

- RELOCÁVEL - O PROGRAMA É CARREGADO EM QUALQUER POSIÇÃO DE MEMÓRIA

Page 48: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DEPURADOR

- DURANTE O DESENVOLVIMENTO DE PROGRAMAS ESTAMOS SUJEITO A ERROS

- O DEPURADOR É UM UTILITÁRIO QUE PERMITE A EXECUÇÃO CONTROLADA DE UM PROGRAMA PARA REALIZAR A CORREÇÃO DE EVENTUAIS ERROS DE PROGRAMAÇÃO

- FACILIDADES DE UM DEPURADOR

- EXECUÇÃO PASSO - A - PASSO

- ALTERAÇÃO/VISUALIZAÇÃO DE VARIÁVEIS

- BREAKPOINTS

- WATCHPOINT (AVISO DE ALTERAÇÃO DE VARIAVEL)

Page 49: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

LINGUAGEM DE CONTROLE

- É A FORMA COMO O USUÁRIO COMUNICA-SE COM O SO

- INTERPRETA TODOS OS COMANDOS EMITIDOS PELO USUÁRIO, DEVOLVE MENSAGENS DE ERRO OU FAZ CHAMADAS AS ROTINAS DO SISTEMA

- FORNECE A POSSIBILIDADE DE AUTOMAÇÃO DE COMANDOS (ARQUIVOS DE COMANDOS)

- INTERAÇÃO MAIS AMIGÁVEL ATRAVÉS DE JANELAS

- RECONHECIMENTO DE COMANDOS DE VOZ

Page 50: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TIPOS DE SISTEMAS OPERACIONAIS

OS SISTEMAS OPERACIONAIS PODEM SER CLASSIFICADOS LEVANDO OS SEGUINTES ASPECTOS:

- EVOLUÇÃO DE HARDWARE

- APLICAÇÕES SUPORTADAS

Page 51: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TIPOS DE SISTEMAS OPERACIONAIS

Page 52: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS MONOPROGRAMÁVEIS/MONOTAREFAS

- AS PRIMEIRAS MÁQUINAS ERAM DEDICADAS A UM ÚNICO TRABALHO (JOB), QUALQUER OUTRO PROGRAMA DEVERIA AGUARDAR O TÉRMINO.

- CARACTERÍSTICAS

- CPU OCIOSA A MAIOR PARTE DO TEMPO

- RECURSOS ALOCADOS A UM ÚNICO USUÁRIO

- MEMÓRIA SUBUTILIZADA

- IMPLEMENTAÇÃO SIMPLES

- NÃO EXISTE PREOCUPAÇÃO COM PROTEÇÃO DE RECURSOS

Page 53: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS MONOPROGRAMÁVEIS

Page 54: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS MULTIPROGRAMÁVEIS/MULTITAREFA

- VIERAM SUBSTITUIR OS SISTEMAS MONOPROGRAMÁVEIS

- SÃO MAIS COMPLEXOS E EFICIÊNTES, ISTO É PERMITEM QUE OS RECURSOS COMPUTACIONAIS (MEMÓRIA, PROCESSADOR, PERIFÉRICOS) SEJAM COMPARTILHADOS DE FORMA ORDENADA POR DIVERSOS PROGRAMAS

- CARACTERÍSTICAS

- IMPLEMENTAÇÃO COMPLEXA

- AUMENTO DA PRODUTIVIDADE

- REDUÇÃO DE CUSTOS

Page 55: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS MULTIPROGRAMÁVEIS/MULTITAREFA

A PARTIR DO NÚMERO DE USUÁRIOS QUE INTERAGEM COM O SISTEMA, OS SISTEMAS MULTIPROGRAMÁVEIS PODEMOS CLASSIFICAR COMO MONOUSUÁRIO x MULTIUSUÁRIO.

Page 56: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS MULTIPROMÁVEIS/MULTITAREFA

Page 57: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MEMÓRIA EM AMBIENTES MONO/MULTIPROGAMADO

Page 58: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS MULTITAREFA

OS SISTEMAS MULTIPROGRAMÁVEIS PODEM SER CLASSIFICADOS PELA FORMA COMO AS APLICAÇÕES SÃO GERENCIADAS

Page 59: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS BATCH

- PRIMEIRO SISTEMA UTILIZADO EM AMBIENTE MULTIPROGRAMADO

- OS TRABALHOS ARMAZENADOS EM FITA, ONDE ESPERAM PARA SER EXECUTADO SEQUENCIALMENTE.

- OS PROGRAMAS CHAMADOS DE JOB NÃO EXIGEM INTERASSÃO COM O USUÁRIO, LENDO E GRAVANDO DADOS EM FITAS OU DISCO

- UTILIZAM MELHOR O PROCESSADOR

- LONGO TEMPO DE RESPOSTA

- PROCESSAMENTO SEQUENCIAL

- EXEMPLO: COMPILAÇÃO, LINKEDIÇÃO, SORT, BACKUP

Page 60: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

EXEMPLO DE UM PROCESSO BATCH

FL001.EXE (ATUALIZA DADOS DE FUNCIONÁRIO)

FL002.EXE (ATUALIZA TAXAS DA FOLHA)

FL003.EXE (CALCULA VALORES DE PAGAMENTO)

FL004.EXE (EMITE RELATORIO DE PAGAMENTO)

FL005.EXE (EMITE CONTRACHEQUE)

Page 61: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMA DE TEMPO COMPARTILHADO

- TIME-SHARING OU ON-LINE

- PERMITE A INTERAÇÃO DOS USUÁRIOS COM O SISTEMA, ATRAVÉS DE TERMINAIS QUE INCLUEM VÍDEO, TECLADO E IMPRESSORA

- ESTE SISTEMAS UTILIZAM UMA LINGUAGEM DE CONTROLE QUE PERMITEM AO USUÁRIO COMUNICAR-SE DIRETAMENTE COM O SISTEMA OPERACIONAL, EXEMPLO: SOLICITAR A LISTAGEM DO DIRETÓRIO CORRENTE

- PARA CADA USUÁRIO O SISTEMA ALOCA UMA FATIA DE TEMPO DO PROCESSADOR (TIME-SLICE), DANDO A IMPRESSÃO QUE O SISTEMA ESTÁ DEDICADO

- IMPLEMENTAÇÃO COMPLEXA, AUMENTA PRODUTIVIDADE DO USUÁRIO E REDUZ CUSTO DE UTILIZAÇÃO DO SISTEMA .

Page 62: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br
Page 63: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS ON-LINE

Page 64: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMA DE TEMPO REAL

- REAL TIME

- SEMELHANTE AOS SISTEMAS DE TEMPO COMPARTILHADO, A DIFERENÇA É O TEMPO DE RESPOSTA EXIGIDO NO PROCESSAMENTO DAS APLICAÇÕES

- NOS SISTEMA DE TEMPO COMPARTILHADO O TEMPO DE RESPOSTA PODE VARIAR SEM COMPROMETER AS APLICAÇÕES EM EXECUÇÃO, NOS SISTEMAS DE TEMPO REAL AS RESPOSTAS DEVEM ESTAR DENTRO DE LIMITES RÍGIDOS.

- NÃO EXISTE FATIA DE TEMPO, O TRABALHO É BASEADO EM PRIORIDADE EM FUNÇÃO DA IMPORTÂNCIA NO SISTEMA, A PRIORIDADE É CONTROLADO PELA APLICAÇÃO E NÃO PELO SISTEMA.

EXEMPLO: USINA, REFINARIA, TRÁFEGO AÉREO

Page 65: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS MULTIPROCESSADOS

- SISTEMAS QUE POSSUEM MULTIPLOS PROCESSADORES INTERLIGADOS E TRABALHANDO EM CONJUNTO.

- OS SISTEMAS MULTIPROCESSADOS PODEM SER CLASSIFICADOS DA SEGUINTE FORMA:

- COMUNICAÇÃO ENTRE AS CPUs

- GRAU DE COMPARTILHAMENTO DE MEMÓRIA

- GRAU DE COMPARTILHAMENTO DE DISPOSITIVOS DE

E/S

Page 66: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS MULTIPROCESSADOS

Page 67: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS FORTEMENTE ACOPLADOS

- EXISTEM DOIS OU MAIS PROCESSADORES COMPARTILHANDO UMA ÚNICA MEMÓRIA E CONTROLADOS POR APENAS UM ÚNICO SISTEMA OPERACIONAL

- SÃO UTILIZADOS PARA PROCESSAMENTO QUE FAZEM USO INTENSIVO DA CPU (BANCO DE DADOS, CALCULO VETORIAL, CALCULO MATRICIAL

- DIVERSOS PROGRAMAS SÃO EXECUTADOS SIMULTANEAMENTE, OU UM PROGRAMA É DIVIDIDO EM SUBPROGRAMAS

- FACILIDADE EM AUMENTAR A CAPACIDADE COMPUTACIONAL DO SISTEMA COM BAIXO CUSTO, MAS SURGEM NOVOS PROBLEMAS DE CONCORRÊNCIA DE ACESSO

Page 68: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS FORTEMENTE ACOPLADOS

Page 69: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS ASSIMÉTRICOS

- CONCEITO MASTER/SLAVE

- SOMENTE O MASTER EXECUTA SERVIÇOS DO SISTEMA OPERACIONAL, O(S) OUTRO(S) EXECUTAM TAREFAS DO USUÁRIO

- DEPENDENDO DO VOLUME DE TRABALHO (PEDIDO DE E/S) PARA O SO, O MASTER FICARÁ SOBRECARREGADO

- ESTE TIPO DE IMPLEMENTAÇÃO NÃO UTILIZA DE FORMA EFICIENTE O HARDWARE DEVIDO A ASSIMETRIA DOS PROCESSADORES, QUE NÃO REALIZAM AS MESMAS FUNÇÕES

Page 70: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS ASSIMÉTRICOS

Page 71: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMA SIMÉTRICO (SMP)AO CONTRÁRIO DA ORGANIZAÇÃO MASTER/SLAVE, IMPLEMENTA A SIMETRIA ENTRE OS PROCESSADORES, OU SEJA, TODOS OS PROCESSADORES REALIZAM AS MESMAS FUNÇÕES, APENAS POUCAS FUNÇÕES FICAM A CARGO DE UM ÚNICO PROCESSADOR ( BOOT DE SISTEMA)

- COM VÁRIOS PROCESSADORES COMPARTILHANDO A MESMA MEMÓRIA E PERIFÉRICOS, SURGEM SITUAÇÕES DE CONFLITOQUE FICA A CARGO DO HARDWARE E DO SO.

- UM PROGRAMA PODE SER EXECUTADO POR QUALQUER PROCESSADOR, INCLUSIVE POR VÁRIOS PROCESSADORES AO MESMO TEMPO (PARALELISMO)

- IMPLEMENTAÇÃO COMPLEXA

- MELHOR BALANCEAMENTO DO PROCESSAMENTO E DAS OPERAÇÕES DE E/S

Page 72: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS SIMÉTRICOS

Page 73: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ORGANIZAÇÃO FUNCIONAL

O ESQUEMA DE COMUNICAÇÃO INTERNA ENTRE AS UNIDADES FUNCIONAIS É FUNDAMENTAL EM SISTEMAS MULTIPROCESSADOS, POIS DETERMINA QUANTAS CPUs O SISTEMA IRÁ TER E COMO SERÁ O ACESSO DIRETO A MEMÓRIA

- PARA PERMITIR QUE AS DIVERSAS UNIDADES FUNCIONAIS COMPARTILHEM A MEMÓRIA É NECESSÁRIO DIVIDI-LA EM MÓDULOS.

- A ORGANIZAÇÃO FUNCIONAL PODE SER DIVIDIDA EM TRÊS TIPOS:

BARRAMENTO COMUM

BARRAMENTO CRUZADO

MEMÓRIA MULTIPORT

Page 74: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

BARRAMENTO

- FORMA MAIS SIMPLES DE COMUNICAÇÃO, FLEXIVEL, ECONÔMICA, LIMITADO A POUCOS PROCESSADORES

- SOMENTE UMA UNIDADE FUNCIONAL PODE UTILIZAR O BARRAMENTO EM UM DETERMINADO INSTANTE

- PASSÍVEL DE GARGALO QUANDO MUITAS UNIDADES TÊM QUE UTILIZAR O BARRAMENTO

-

Page 75: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

BARRAMENTO CRUZADO- EVITA GARGALO DO BARRAMENTO COMUM

- AS UNIDADES FUNCIONAIS SÃO CONECTADAS ATRAVÉS DE UM BARRAMENTO CRUZADO (CROSSBAR-SWITCH MATRIX)

- NESTA ARQUITETURA É POSSÍVEL A COMUNICAÇÃO SIMULTÂNEA ENTRE DIVERSAS UNIDADES SIMULTANEAMENTE, MAS NÃO PERMITE ACESSO SIMULTANEO A UM MESMO COMPONENTE

- MUITOS PROCESSADORES PODEM SER UTILIZADOS

Page 76: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MEMÓRIA MULTIPORT

- NO ESQUEMA DE BARRAMENTO CRUZADO É POSSÍVEL DOIS PROCESSADORES ACESSAREM A UM MÓDULO DE MEMÓRIA NO MESMO INSTANTE

- MEMÓRIA MULTIPORT PERMITE ACESSOS SIMULTÂNEOS A UM MESMO MÓDULO DE MEMÓRIA

- CADA MÓDULO TÊM DIVERSAS PORTAS DE ACESSO

Page 77: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMA FRACAMENTE ACOPLADOS

- SISTEMAS FRACAMENTE ACOPLADOS CARACTERIZAM-SE POR POSSUIR DOIS OU MAIS SISTEMAS DE COMPUTAÇÃO INTERLIGADOS ATRAVÉS DE UM SISTEMA DE COMUNICAÇÃO, SENDO QUE CADA SISTEMA POSSUI O SEU PRÓPRIO SISTEMA OPERACIONAL GERENCIANDO RECURSOS, COMO PROCESSADOR, MEMÓRIA E DISPOSITIVOS DE E/S.

- DÉCADA DE 80, COM SISTEMA CENTRALIZADO E TERMINAIS BURROS REMOTO INTERLIGADOS ATRAVÉS DO SISTEMA DE COMUNICAÇÃO

- COM A EVOLUÇÃO DOS COMPUTADORES, E O AVANÇO DAS TELECOMUNICAÇÕES, SURGE UM NOVO MODELO DE COMPUTAÇÃO CHAMADO DE REDES DE COMPUTADORES (NÓS INTELIGENTES INTERLIGADOS POR UM SISTEMA DE COMUNICAÇÃO)

Page 78: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS FRACAMENTE ACOPLADOS

Page 79: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS OPERACIONAIS DE REDE (SOR)

CADA NÓ POSSUI O SEU PRÓPRIO SISTEMA OPERACIONAL, ALÉM DE HARDWARE E SOFTWARE QUE POSSIBILITAM AO SISTEMA TER ACESSO A OUTROS COMPONENTES DE REDE E COMPARTILHANDO RECURSOS

- FUNÇOES DE UM SOR:

CÓPIA REMOTA

EMULAÇÃO DE TERMINAL

IMPRESSÃO REMOTA

CORREIO ELETRÔNICO

GERÊNCIA REMOTA

Page 80: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMA OPERACIONAL DE REDE:

NETWARE

WINDOWS NT

UNIX

Page 81: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS OPERACIONAIS DISTRIBUÍDOS

- CADA COMPONENTE DE REDE TAMBÉM POSSUI SEU PRÓPRIO SISTEMA OPERACIONAL, MEMÓRIA, PROCESSADOR E DISPOSITIVOS.

- O QUE DEFINE UM SISTEMA DISTRIBUÍDO É A EXISTÊNCIA DE UM RELACIONAMENTO MAIS FORTE ENTRE OS SEUS COMPONENTES, ONDE OS SISTEMAS OPERACIONAIS SÃO GERALMENTE OS MESMOS.

- PARA O USUÁRIO E SUAS APLICAÇÕES É GERALMENTE COMO SE NÃO EXISTISSE UMA REDE DE COMPUTADORES, MAS SIM UM ÚNICO SISTEMA CENTRALIZADO

- A GRANDE VANTAGEM DESTE SISTEMA É O BALANCEAMENTO DE CARGA

Page 82: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SISTEMAS OPERACIONAIS DISTRIBUÍDOS

Page 83: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROCESSOS

Page 84: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROCESSOSMODO GERAL.

UM PROGRAMA EM EXECUÇÃO.

MODO CONCEITUAL

O CONCEITO DE PROCESSO PODE SER DEFINIDO COMO SENDO O AMBIENTE ONDE SE EXECUTA UM PROGRAMA

PCB PROCESS CONTROL BLOCK

O SISTEMA OPERACIONAL MATERIALIZA O PROCESSO ATRAVÉS DE UMA ESTRUTURA DE DADOS (PCB). ATRAVÉS DESTA ESTRUTURA O SISTEMA OPERACIONAL MANTÉM TODAS AS INFORMAÇÕES SOBRE O PROCESSO

Page 85: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROCESS CONTROL BLOCK

Page 86: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MULTITAREFA

Page 87: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PARTES DE UM PROCESSOUM PROCESSO PODE SER DIVIDIDO EM TRÊS PARTES:

- HARDWARE

CONSTITUI-SE BASICAMENTE DOS REGISTRADORES DE PROPÓSITO GERAL (AX, BX, CX, DX), APONTADOR DE INSTRUÇÃO (IP), STACK POINTER (SP) E BITS DE ESTADO

- SOFTWARE

ESPECIFICA CARACTERÍSTICAS DO PROCESSO QUE VÃO INFLUIR NA EXECUÇÃO DE UM PROGRAMA COMO: PRIORIDADE, NÚMERO DE ARQUIVOS ABERTOS, ETC.

- ESPAÇO DE ENDEREÇAMENTO

É A ÁREA DE MEMÓRIA DO PROCESSO ONDE O PROGRAMA SERÁ EXECUTADO, ALÉM DO ESPAÇO PARA OS DADOS UTILIZADOS POR ELE.

Page 88: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

CONTEXTO DE HARDWARE DO PROCESSO - MUDANÇA DE

CONTEXTO

Page 89: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESTADOS DE UM PROCESSOUM PROCESSO EM UM SISTEMA TAREFA NÃO É EXECUTADO O TEMPO TODO PELO PROCESSADOR, ELE PASSA POR UMA SÉRIE DE ESTADOS QUE SÃO BASICAMENTE OS SEGUINTES:

NOVO - QUANDO O PROCESSO ESTÁ SENDO CRIADO

PRONTO - ESTÁ AGUARDANDO UMA OPORTUNIDADE PARA EXECUTAR, OS SO IRÁ DETERMINAR QUAL PROCESSO IRÁ SER EXECUTADO DENTRE OS QUE ESTÃO NO ESTADO DE PRONTO

EXECUTANDO - ESTÁ SENDO PROCESSADO PELA CPU

INTERROMPIDO - ESTÁ AGUARDANDO ALGUM EVENDO EXTERNO OU POR ALGUM RECURSO PARA PODER PROSSEGUIR SEU PROCESSAMENTO

FINALIZADO - O PROCESSO ESTÁ FINALIZADO E SEUS RECURSOS JÁ FORAM LIBERADOS

Page 90: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MUDANÇA DE ESTADOS DE UM PROCESSO

Page 91: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

FILAS DE ESTADO

Page 92: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROCESSO IO/CPU BOUND

PROCESSO CPU BOUND

PROCESSO IO BOUND

Page 93: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

COMUNICAÇÃO ENTRE PROCESSOS

Page 94: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

COMUNICAÇÃO ENTRE PROCESSOS

EM UM AMBIENTE MULTITAREFA, OS PROCESSOS PODEM SER CLASSIFICADOS CONFORME A SUA INDEPENDÊNCIA/DEPENDÊNCIA DE OUTROS PROCESSOS:

INDEPENDENTES - O PROCESSO INICIA A SUA EXECUÇÃO E PROSSEGUE ATÉ A SUA FINALIZAÇÃO, DESTA FORMA NÃO AFETA E NEM É AFETADO POR OUTROS PROCESSOS EM EXECUÇÃO

COOPERATIVOS - O PROCESSO COOPERA COM OUTROS PROCESSOS, DESTA FORMA, SUA EXECUÇÃO AFETA OU É AFETADO POR OUTROS PROCESSOS.

EM GERAL OS PROCESSOS COOPERANTES COMPARTILHAM ALGUM RECURSO OU TROCAM MENSAGENS ENTRE SI.

Page 95: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MOTIVOS PARA COOPERAÇÃO ENTRE PROCESSOS

COMPARTILHAMENTO DE RECURSOS

- VÁRIAS PESSOAS UTILIZANDO O MESMO ARQUIVO

- COMPARTILHAMENTO DE PERIFÉRICOS

AUMENTO DA VELOCIDADE DE PROCESSAMENTO

- DIVISÃO DE UM PROCESSO EM SUBTAREFAS INDEPENDENTES

MODULARIDADE

- CONSTRUÇÃO DE SISTEMAS MODULARES

CONVENIÊNCIA

Page 96: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MECANISMOS DE COMUNICAÇÃO

UMA EXECUÇÃO CONCORRENTE QUE REQUER COOPERAÇÃO ENTRE PROCESSOS REQUER TAMBÉM MECANISMOS QUE PERMITAM AOS PROCESSOS COMUNICAREM-SE UNS COM OS OUTROS E SINCRONIZAREM SUAS AÇÕES.

OS MECANISMOS COMUMENTE UTILIZADO ENTRE OS PROCESSOS COOPERANTES SÃO:

MEMÓRIA COMPARTILHADA

TROCA DE MENSAGENS;

Page 97: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

COMUNICAÇÃO POR MEMÓRIA COMPARTILHADA

OS PROCESSOS UTILIZAM UMA REGIÃO DE MEMÓRIA FÍSICA COMUM, ONDE TODOS REALIZAM AS OPERAÇÕES DE LEITURA E GRAVAÇÃO

Page 98: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

COMUNICAÇÃO POR TROCA DE MENSAGENS

TROCA DE MENSAGENS É UM MECANISMO DE COMUNICAÇÃO ENTRE PROCESSOS, IMPLEMENTADO PELO SISTEMA OPERACIONAL ATRAVÉS DE DUAS ROTINAS DE SISTEMA:

SEND - ENVIA UMA MENSAGEM

RECEIVE - RECEBE UMA MENSAGEM

SEND (RECEPTOR, MENSAGEM)

RECEIVE (TRANSMISSOR, MENSAGEM)

Page 99: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

FORMAS DE ENDEREÇAMENTO DIRETO - O PROCESSO QUE DESEJA ENVIAR OU RECEBER A MENSAGEM ENDEREÇA EXPLICITAMENTE O NOME DO PROCESSO RECEPTOR OU TRANSMISSOR, NESTE CASO SÓ EXISTE A COMUNICAÇÃO ENTRE DOIS PROCESSOS.

INDIRETO - UTILIZA UMA ÁREA COMPARTILHADA, ONDE AS MENSAGENS PODEM SER COLOCADAS PELO PROCESSO TRANSMISSOR E RETIRADAS PELO RECEPTOR, ESTA ÁREA É CONHECIDO COMO MAILBOX. ESTE MAILBOX APRESENTA CARACTERÍSTICAS NO MOMENTO DA CRIAÇÃO, COMO POR EXEMPLO: QUANTIDADE DE MENSAGENS, TAMANHO DE MENSAGENS.

VÁRIOS PROCESSOS PODEM ESTAR ASSOCIADOS A UM MAILBOX, AS FUNÇÕES SEND/RECEIVE ENDEREÇAM O MAILBOX

Page 100: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TROCA DE MENSAGENSDIRETO

P1 - SEND (P2, MENSAGEM)

RECEIVE (P1, MENSAGEM)

P2 - SEND (P1, MENSAGEM)

RECEIVE (P1, MENSAGEM)

INDIRETO

SEND (MAILBOX, MENSAGEM)

RECEIVE (MAIBOX, MENSAGEM)

SEND (MAILBOX, MENSAGEM)

RECEIVE (MAIBOX, MENSAGEM)

Page 101: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TROCA DE MENSAGENSINDEPENDENTE DA FORMA DE ENDEREÇAMENTO ENTRE PROCESSOS, A COMUNICAÇÃO ENTRE ELES PODE ELES PODE BLOQUEAR OU NÃO OS PROCESSOS ENVOLVIDOS. BASICAMENTE EXISTEM DUAS FORMAS DE COMUNICAÇÃO ENTRE PROCESSOS ATRAVÉS DA TROCA DE MENSAGENS:

SINCRONA, UM PROCESSO ENVIA UMA MENSAGEM (SEND) E FICA ESPERANDO ATÉ QUE O PROCESSO RECEPTOR LEIA A MENSAGEM, O QUANDO O PROCESSO TENTA RECEBER UMA MENSAGEM (RECEIVE) E PERMANECE ESPERANDO, ATÉ QUE O PROCESSO TRANSMISSOR ENVIE A MENSAGEM. ESTE TIPO DE COMUNICAÇÃO. NA COMUNICAÇÃO SINCRONA NÃO EXISTE NECESSIDADE DE BUFFERS PARA GUARDAR AS MENSAGENS

Page 102: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TROCA DE MENSAGENS

ASSINCRONA, NEM RECEPTOR PERMANECE AGUARDANDO O ENVIO DE UMA MENSAGEM, NEM O TRANSMISSOR O SEU RECEBIMENTO, NESTE CASO EXISTE A NECESSIDADE DE BUFFERS PARA ARMAZENAR AS MENSAGENS.

DEVE EXISTIR MECANISMOS QUE PERMITAM AO PROCESSO IDENTIFICAR SE A MENSAGEM FOI ENVIADA OU RECEBIDA

VANTAGEM - A GRANDE VANTAGEM DA COMUNICAÇÃO ASSINCRONA É O GRAU DE PARALELISMO NA EXECUÇÃO DOS PROCESSOS, COMPARADO À COMUNICAÇÃO SÍNCRONA, ONDE A NECESSIDADE DE ESPERA DOS PROCESSOS REDUZ O GRAU DE CONCORRÊNCIA.

Page 103: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SINCRONIZAÇÃO ENTRE PROCESSOS

Page 104: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SINCRONIZAÇÃO ENTRE PROCESSOS

É COMUM PROCESSOS QUE TRABALHAM JUNTOS (CONCORRENTES) COMPARTILHAREM RECURSOS DO SISTEMA, COMO ARQUIVOS, REGISTROS DISPOSITIVOS E ÁREAS DE MEMÓRIA.

DE MANEIRA GERAL, O COMPARTILHAMENTO DE RECURSOS ENTRE PROCESSOS PODE GERAR SITUAÇÕES INDESEJÁVEIS CAPAZES DE COMPROMETER O SISTEMA.

O MECANISMO QUE GARANTE O ACESSO AOS RECURSOS COMPARTILHADOS SÃO CHAMADOS DE MECANISMOS DE SINCRONIZAÇÃO

Page 105: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SINCRONIZAÇÃO ENTRE PROCESSOS

CONSIDERAREMOS DOIS PROCESSOS CONCORRENTES TROCANDO INFORMAÇÕES ATRAVÉS DE OPERAÇÕES DE GRAVAÇÃO E LEITURA EM UM BUFFER (MEMÓRIA COMPARTILHADA)

UM PROCESSO SÓ PODE GRAVAR DADOS NO BUFFER SE ELE NÃO ESTIVER CHEIO E UM PROCESSO SÓ PODE LER DADOS ARMAZENADOS DO BUFFER SE EXISTIR ALGUM DADO PARA SER LIDO. EM AMBOS OS CASOS OS PROCESSOS DEVERÃO AGUARDAR ATÉ QUE O BUFFER ESTEJA PRONTO PARA AS OPERAÇOES DE GRAVAÇÃO OU DE ESCRITA.

Page 106: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SINCRONIZAÇÃO ENTRE PROCESSOS

Page 107: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROBLEMAS DE COMPARTILHAMENTO DE

RECURSOSEXEMPLO PRÁTICO: ATUALIZAÇÃO DE CONTA BANCÁRIA

SE DOIS CAIXAS ESTÃO MANIPULANDO A MESMA CONTA CORRENTE, UM REALIZA A OPERACÃO DE DÉBITO E OUTRO A OPERAÇÃO CRÉDITO.

SALDO ATUAL: R$ 200,00

VALOR DE DÉBITO - R$ 200,00

VALOR DO CRÉDITO - R$ 400,00

SE A OS DOIS CAIXAS ACESSAM SIMULTANEAMENTE A CONTA, O SALDO FINAL ESTARÁ ERRADO COM O VALOR DE R$ 600,00, QUANDO DEVERIA SER DE R$ 400,00

Page 108: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

EXCLUSÃO MÚTUA E

REGIÃO CRÍTICA

Page 109: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

EXCLUSÃO MÚTUA

A SOLUÇÃO MAIS SIMPLES PARA EVITAR O PROBLEMA DE COMPARTILHAMENTO DE RECURSOS APRESENTADO ANTERIORMENTE, É IMPEDIR QUE DOIS OU MAIS PROCESSOS ACESSEM O MESMO RECURSO NO MESMO INSTANTE

ENQUANTO UM PROCESSO ESTIVER UTILIZANDO O RECURSO COMPARTILHADO, TODOS OS OUTROS QUE QUEIRAM ACESSAR ESSE MESMO RECURSO DEVERÃO ESPERAR ATÉ QUE O PRIMEIRO TERMINE O ACESSO

ESSA IDÉIA DE EXCLUSIVIDADE DE ACESSO É CHAMADO DE EXCLUSÃO MÚTUA.

Page 110: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

REGIÃO CRÍTICAA PARTE DO CÓDIGO DO PROGRAMA ONDE É FEITO O ACESSO AO RECURSO COMPARTILHADO É DENOMINADO DE REGIÃO CRÍTICA.

SE PUDERMOS EVITAR QUE DOIS PROCESSOS ENTREM EM SUAS REGIÕES CRITICAS AO MESMO TEMPO, OU SEJA, SE CONSEGUIRMOS A EXECUÇÃO MUTUAMENTE EXCLUSIVA DAS REGIÕES CRÍTICAS, EVITAREMOS PROBLEMAS DECORRENTES DO COMPARTILHAMENTO.

OS MECANISMOS QUE IMPLEMENTAM A EXCLUSÃO MÚTUA UTILIZAM UM PROTOCOLO DE ACESSO À REGIÃO CRÍTICA

TODA VEZ QUE FOR EXECUTAR A REGIÃO CRÍTICA, O PROCESSO OBRIGATORIAMENTE IRÁ EXECUTAR ANTES UM PROTOCOLO DE ENTRADA NESSA REGIÃO, DA MESMA FORMA QUE AO SAIR, DEVERÁ EXECUTAR UM PROTOCOLO DE SAÍDA.

Page 111: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

REGIÃO CRÍTICA

INICIO

ENTRADA_REGIÃO_CRÍTICA( ); {Protocolo de entrada}

REGIAO_CRÍTICA ( ); {Execução da Região Crítica }

SAÍDA_REGIÃO_CRÍTICA( ); {Protocolo de Saída }

FIM

Page 112: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROTOCOLOS DE ENTRADA/SAÍDAMÉTODO 1.

UTILIZANDO UMA VARIÁVEL COMPARTILHADA PORTA

Page 113: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROTOCOLOS DE ENTRADA/SAÍDA

MÉTODO 2.

UTILIZANDO UMA VARIÁVEL COMPARTILHADA VEZ

Page 114: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROTOCOLOS DE ENTRADA/SAÍDAMÉTODO 3

CADA PROCESSO UTILIZA UMA VARIÁVEL COMPARTILHADA PORTA1 E PORTA2

Page 115: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROTOCOLOS DE ENTRADA/SAÍDA

MÉTODO 4.

UTILIZA TRÊS VARIÁVEIS COMPARTILHADAS VEZ, PORTA1 E PORTA2

Page 116: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROBLEMAS DOS PROTOCOLOS DE E/S

MÉTODO 1

- NÃO GARANTE EXCLUSÃO MÚTUA

MÉTODO 2

- EXISTE A NECESSIDADE DE ALTERNÂNCIA ENTRE OS PROCESSOS

- RECURSO DISPONÍVEL MAS NÃO PODE SER UTILIZADO

MÉTODO 3

- PODE OCORRER DEADLOCK

MÉTODO 4

- NÃO EXISTE PROBLEMAS

Page 117: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROTOCOLO DE E/S POR HARDWARE

A SOLUÇÃO MAIS SIMPLES PARA O PROBLEMAS DA EXCLUSÃO MÚTUA É FAZER É FAZER COM QUE O PROCESSO ANTES DE EXECUTAR A REGIÃO CRÍTICA, DESABILITE TODAS AS INTERRUPÇÕES EXTERNAS E AS REABILITE APÓS DEIXAR A REGIÃO CRÍTICA.

COMO A MUDANÇA DE CONTEXTO SÓ PODE SER REALIZADA ATRAVÉS DE INTERRUPÇÕES, O PROCESSO QUE AS DESABILITOU TERÁ ACESSO EXCLUSIVO GARANTIDO.

desabilita_Interrupções

executa_região_crítica( )

habilita_Interrupções;

Page 118: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROTOCOLOS DE E/S - SEMÁFOROS

UM SEMÁFORO É UMA VARIÁVEL INTEIRA NÃO NEGATIVA , QUE SÓ PODE SER ASSOCIADA ATRAVÉS DAS FUNÇÃO WAIT SIGNAL

GERALMENTE O SEMÁFORO ESTÁ ASSOCIADO A UM RECURSO COMPARTILHADO, INDICANDO QUANDO O RECURSO ESTÁ SENDO ACESSADO POR UM DOS PROCESSOS CONCORRENTES. SE O SEU VALOR FOR MAIOR QUE ZERO, NENHUM PROCESSO ESTÁ UTILIZANDO O RECURSO, CASO CONTRÁRIO O PROCESSO FICA IMPEDIDO DO ACESSO É ENTRA EM ESTADO DE SUSPENSO

Page 119: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROTOCOLOS DE E/S - SEMÁFOROS

Page 120: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROBLEMAS

DESABILITA INTERRUPÇÃO

SE O PROCESSO TRAVAR, TODO O SISTEMA ESTARÁ COMPROMETIDO, OU SEJA, NEM O SISTEMA OPERACIONAL IRÁ EXECUTAR DEVIDO A DESABILITAÇÃO DE INTERRUPÇÃO, SERÁ NECESSÁRIO UM RESET DE HARDWARE NO EQUIPAMENTO

SEMÁFORO

ERROS DE CODIFICAÇÃO DESABILITAR A UTILIZAÇÃO DO RECURSO, EXEMPLO - WAIT SEM UM SIGNAL OU INVERSÃO ENTRE POSIÇÃO ENTRE SIGNAL E WAIT

Page 121: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DEADLOCKUM PROCESSO É DITO EM DEADLOCK QUANDO ESTÁ ESPERANDO POR UM EVENTO QUE NUNCA OCORRERÁ. ESSA SITUAÇÃO É CONSEQUÊNCIA, NA MAIORIA DAS VEZES, DO COMPARTILHAMENTO DE RECURSOS DO SISTEMA ENTRE VÁRIOS PROCESSOS, SENDO QUE CADA PROCESSO DEVE TER ACESSO AO RECURSO DE FORMA EXCLUSIVA (EXCLUSÃO MUTUA)

Page 122: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DEADLOCK

CONDIÇÕES PARA A EXISTÊNCIA DE DEADLOCK

CADA RECURSO SÓ PODE ESTAR ALOCADO A UM ÚNICO PROCESSO EM UM DETERMINADO INSTÂNTE (EXCLUSÃO MÚTUA)

UM PROCESSO, ALÉM DOS RECURSOS JÁ ALOCADOS, PODE ESTAR ESPERANDO POR OUTROS RECURSOS

UM RECURSO NÃO PODE SER LIBERADO DE UM PROCESSO SÓ PORQUE OUTROS PROCESSOS DESEJAM O MESMO RECURSO

UM PROCESSO PODE TER DE ESPERAR POR UM RECURSO ALOCADO A OUTRO PROCESSO E VICE-VERSA (ESPERA CIRCULAR)

Page 123: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PREVENÇÃO DE DEADLOCKPREVINIR DEADLOCKS, É PRECISO GARANTIR QUE UMA DAS QUATRO CONDIÇOES NECESSÁRIAS PARA SUA OCORRÊNCIA NUNCA SE SATISFAÇA

PRIMEIRA CONDIÇÃO - ELIMINAR EXCLUSÃO MUTUA

- CAUSA INCONSISTÊNCIA DE DADOS

SEGUNDA CONDIÇÃO - EVITAR QUE PROCESSOS QUE JÁ POSSUAM RECURSOS ALOCADOS REQUISITEM NOVOS RECURSOS

- REQUISITAR TODOS OS RECURSOS NO INICIO DA EXECUÇÃO, SE NÃO HOUVER RECURSOS DISPONÍVEIS, O PROCESSO NÃO É INICIADO

- PODE SER QUE O PROCESSO SÓ UTILIZARÁ O RECURSO 10 HORAS DEPOIS DE INICIAR A EXECUÇÃO DO PROCESSO.

Page 124: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PREVENÇÃO DE DEADLOCK

TERCEIRA CONDIÇÃO - PODE SER EVITADO QUANDO PERMITIMOS QUE UM RECURSO SEJA RETIRADO DE UM PROCESSO, NO CASO DE OUTRO PROCESSO NECESSITAR DO MESMO RECURSO

- A LIBERAÇÃO DE UM RECURSO JÁ ALOCADO PODE CAUSAR SÉRIOS PROBLEMAS, PODENDO ATÉ FAZER O PROCESSO PERDER TODO PROCESSAMENTO REALIZADO ATÉ O MOMENTO

QUARTA CONDIÇÃO - EXCLUIR A POSSIBILIDADE DE ESPERA CIRCULAR, ISTO É SE NECESSITAR DE OUTRO RECURSO, DEVERÁ LIBERAR O PRIMEIRO

Page 125: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DETECÇÃO DO DEADLOCK

A DETECÇÃO DO DEADLOCK É O MECANISMO QUE DETERMINA, REALMENTE, A EXISTÊNCIA DE UM DEADLOCK, PERMITINDO IDENTIFICAR OS RECURSOS E PROCESSOS ENVOLVIDOS NO PROBLEMA.

OS SISTEMAS OPERACIONAIS, PARA DETECTAR DEADLOCKS, DEVEM MANTER UMA ESTRUTURA DE DADOS CAPAZES DE IDENTIFICAR CADA RECURSO DO SISTEMA, O PROCESSO QUE O ESTÁ ALOCANDO E OS PROCESSOS QUE ESTÃO A ESPERA DA LIBERAÇÃO DO RECURSO.

TODA VEZ QUE O RECURSO E ALOCADO OU LIBERADO POR UM PROCESSO, A ESTRUTURA DEVE SER ATUALIZADA.

GERALMENTE, OS ALGORITMOS QUE IMPLEMENTAM ESSE MECANISMO VERIFICAM A EXISTENCIA DE FILA CIRCULAR, PERCORRENDO TODA ESTRUTURA.

Page 126: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

CORREÇÃO DO DEADLOCK

APÓS A DETECÇÃO DO DEADLOCK, UMA SOLUÇÃO BASTANTE UTILIZADA PELA MAIORIA DOS SISTEMAS OPERACIONAIS É, ELIMINAR UM OU MAIS PROCESSOS ENVOLVIDOS NO DEADLOCK E DESALOCAR OS RECURSOS JÁ GARANTIDOS POR ELES, QUEBRANDO, ASSIM A ESPERA CIRCULAR

A ELIMINAÇÃO DOS PROCESSOS ENVOLVIDOS NO DEADLOCK PODE SER FEITA UTILIZANDO ALGUM CRITÉRIO COMO POR EXEMPLO: PRIORIDADE OU DE FORMA ALEATÓRIA

Page 127: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

THREADS

Page 128: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SUBPROCESSOS

- UM PROCESSO PODE CRIAR CRIAR OUTROS PROCESSOS, NESTE CASO O PROCESSO CRIADOR CHAMA-SE PAI E O PROCESSO CRIADO CHAMA-SE PROCESSOS FILHO, O PROCESSO FILHO POR SUA VEZ PODE CRIAS OUTROS PROCESSOS.

Page 129: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

UTILIZAÇÃO DE SUBPROCESSOS

PERMITE DIVIDIR UMA APLICAÇÃO EM PARTES QUE PODEM TRABALHAR DE FORMA CONCORRENTE

EXEMPLO:

UM BANCO DE DADOS ATENDE A REQUISIÇÃO DE TODOS OS CLIENTE, SE UM PROCESSO QUE EMITE UM RELATÓRIO FOR INICIADO, TODOS OUTROS PROCESSO QUE NECESSITEM ACESSAR O REGISTROS DO BANCO DE DADOS TERÃO QUE ESPERAR O PROCESSO DE EMISSÃO DE RELATORIOS ACABAR.

COM O USO DE SUBPROCESSO, CADA REQUISIÇÃO IMPLICARIA NA CRIAÇÃO DE UM NOVO PROCESSO PARA ATENDÊ-LA, AUMENTANDO O THROUGHPUT DA APLICAÇÃO E CONSEQUENTEMENTE, MELHORANDO O SEU DESEMPENHO

Page 130: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

CRIAÇÃO DE SUBPROCESSOSTODA VEZ QUE UM PROCESSO É CRIADO, É NECESSÁRIO QUE O SISTEMA ALOQUE RECURSOS (CONTEXTO DE HARDWARE, CONTEXTO DE SOFTWARE, ESPAÇO DE ENDEREÇAMENTO), ALÉM DE CONSUMIR TEMPO DE CPU NESTE TRABALHO.

NO CASO DE TERMINO DO PROCESSO, O SISTEMA GASTA TEMPO PARA DESALOCAR RECURSOS PREVIAMENTE ALOCADOS.

Page 131: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

THREADS

NA TENTATIVA DE DIMINIUIR O TEMPO GASTO NA CRIAÇÃO/ELIMINAÇÃO DE PROCESSOS, BEM COMO ECONOMIZAR RECURSOS DO SISTEMA COMO UM TODO, FOI INTRODUZIDO O CONCEITO DE THREAD (LINHA)

EM UM AMBIENTE MULTITHREAD, NÃO É NECESSÁRIO HAVER VÁRIOS PROCESSOS PARA SE IMPLEMENTAR APLICAÇÕES CONCORRENTES.

Page 132: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

THREADS

THREADS COMPARTILHAM O PROCESSADOR DA MESMA MANEIRA QUE UM PROCESSO. POR EXEMPLO, QUANDO UM THREAD ESPERA POR UM I/O, OUTRA THREAD PODE SER EXECUTADO.

CADA THREAD POSSUI SEU PRÓPRIO CONTEXTO DE HARDWARE (REGISTRADORES), PORÉM COMPARTILHA O MESMO ESPAÇO DE ENDEREÇAMENTO COM AS DEMAIS THREAD DO PROCESSO.

THREADS PASSAM PELOS MESMOS ESTADOS QUE UM PROCESSO

Page 133: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

THREAD x SUBPROCESSO

Page 134: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DIFERENÇA ENTRE THREADS E PROCESSOS

A GRANDE DIFERENÇA ENTRE SUBPROCESSOS E THREADS É O ESPAÇO DE ENDEREÇAMENTO.

ENQUANTO SUBPROCESSOS POSSUEM CADA UM, ESPAÇOS INDEPENDENTES E PROTEGIDOS, THREADS COMPARTILHARM O MESMO ESPAÇO DE ENDEREÇAMENTO DO PROCESSO, SEM NENHUMA PROTEÇÃO, PERMITINDO ASSIM QUE UMA THREAD POSSA ALTERAR DADOS DE OUTRA THREAD.

Page 135: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

GERÊNCIA DO PROCESSADOR

Page 136: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

MULTITAREFA

O CONCEITO BÁSICO QUE GEROU A IMPLEMENTAÇÃO DOS SISTEMAS MULTIPROGRAMÁVEIS FOI O COMPARTILHAMENTO DA UCP ENTRE OS DIVERSOS PROCESSOS.

PARA ISSO, TODO SISTEMA MULTIPROGRAMÁVEL POSSUI UM CRITÉRIO PARA DETERMINAR QUAL A ORDEM NA ESCOLHA DOS PROCESSOS PARA EXECUÇÃO ENTRE OS VÁRIOS PROCESSOS QUE CONCORREM PELA UTILIZAÇÃO DO PROCESSADOR, ISTO É QUE ENCONTRM-SE NO ESTADO PRONTO.

Page 137: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

FILAS DE ESTADO

Page 138: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTOO PROCEDIMENTO DE SELEÇÃO DE UM PROCESSO PARA EXECUÇÃO É CHAMADO DE ESCALONAMENTO, É REALIZADO PELO SISTEMA OPERACIONAL.

A PARTE DO CÓDIGO DO SISTEMA OPERACIONAL RESPONSÁVEL PELO ESCALONAMENTO É CHAMADO DE ESCALONADOR OU SCHEDULER

OBJETIVOS DO ESCALONAMENTO:

- MANTER A CPU OCUPADA A MAIOR PARTE DO TEMPO

- BALANCEAR A UTILIZAÇÃO DOPROCESSADOR ENTRE AS DIVERSOS PROCESSOS

- MAXIMIZAR O THROUGHPUT DO SISTEMA

- OFERECER TEMPO DE RESPOSTA RAZOAVEL PARA O USUÁRIO

Page 139: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO

CADA ALGORITMO DE ESCALONAMENTO VISA ATENDER A UM TIPO DE PROCESSAMENTO

OS CRITÉRIOS DE ESCALONAMENTO PODEM SER (DEPENDE DE CADA SISTEMA):

- UTILIZAÇÃO DE CPU

- THROUGHPUT - QUANTIDADE DE PROCESSOS EXECUTADO EM UM DETERMINADO INTERVALO DE TEMPO

- TEMPO DE TURNAROUND - É O TEMPO QUE O PROCESSO LEVA DESDE A SUA ADMISSÃO NO SISTEMA ATÉ O SEU TÉRMINO

- TEMPO DE RESPOSTA - É O TEMPO DECORRIDO DO MOMENTO DA SUBMISSÃO DE UM PEDIDO AO SISTEMA ATÉ A PRIMEIRA RESPOSTA PRODUZIDA

Page 140: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO

TIPOS DE ESCALONAMENTO

- NÃO-PREEMPTIVO

- NESTE TIPO DE SISTEMA, QUANDO UM PROCESSO GANHA O DIREITO DE UTILIZAR A CPU, NENHUM OUTRO PROCESSO PODE LHE RETIRAR ESSE RECURSO (CPU), ISTO É O PROCESSO PODE UTILIZAR O PROCESSADOR ENQUANTO FOR NECESSÁRIO

- PREEMPTIVO

- NESTE TIPO DE SISTEMA, O SISTEMA PODE INTERROMPER A EXECUÇÃO DE UM PROCESSO PARA QUE OUTRO PROCESSO UTILIZE O PROCESSADOR

Page 141: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO NÃO-PREEMPTIVO

ESCALONAMENTO FIFO

PRIMEIRO A ENTRAR PRIMEIRO A SER SELECIONADO PARA EXECUÇÃO

IMPLEMENTADO ATRAVÉS DE UMA FILA

UM PROCESSO QUANDO ENTRA NO ESTADO DE PRONTO É COLOCADO NO FINAL DA FILA

PROBLEMAS

IMPOSSIBILIDADE DE PREVER QUANDO UM PROCESSO TERÁ A SUA EXECUÇÃO INICIADA

PROCESSOS CPU-BOUND IRÃO PREJUDICAR OS PROCESSOS IO-BOUND

NÃO É EFICIÊNTE

Page 142: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO NÃO-PREEMPTIVO

ESCALONAMENTO SHORTEST-JOB-FIRST (SJF)

ASSOCIA A CADA PROCESSO AO SEU TEMPO DE EXECUÇÃO, OU SEJA, QUANDO O PROCESSADOR ESTÁ LIVRE, O PROCESSO EM ESTADO DE PRONTO QUE PRECISAR DE MENOS TEMPO DE UCP PARA TERMINAR SEU PROCESSAMENTO É SELECIONADO PARA EXECUÇÃO

FAVORECE PROCESSOS QUE NECESSITAM DE POUCO TEMPO DE CPU

PROBLEMA É DETERMINAR O TEMPO DE EXECUÇÃO DE CADA PROCESSO

ESTE SISTEMA NÃO PODE SER UTILIZADO EM SISTEMAS INTERATIVOS

Page 143: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO NÃO-PREEMPTIVO

A PARTIR DO MOMENTO QUE O PROCESSO ESTÉ EM EXECUÇÃO, VOLUNTARIAMENTE LIBERA O PROCESSADOR E RETORNANDO A FILA DE PRONTO

TODOS OS PROCESSOS DEVEM COOPERAR EXPONTANEAMENTE PARA QUE O ANDAMENTO DE OUTROS PROCESSOS NÃO SEJAM AFETADOS.

SE UM PROCESSO “MAL COMPORTADO”NÃO LIBERAR A CPU, NADA PODERÁ SER FEITO, A NÃO AGUARDAR OU .... “BOOT”

EXEMPLO: WINDOWS 3.11

Page 144: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO PREEMPTIVO

O ESCALONAMENTO PREEMPTIVO PERMITE QUE O SISTEMA DÊ ATENÇÃO AOS PROCESSOS MAIS PRIORITÁRIOS E TAMBÉM O COMPARTILHAMENTO DO PROCESSADOR É FEITO DE UMA MANEIRA MAIS UNIFORME ENTRE OS PROCESSOS.

A TROCA DE UM PROCESSO POR OUTRO NA CPU (MUDANÇA DE CONTEXTO) CAUSADA PELA PREEMPÇÃO, GERA UM OVERHEAD AO SISTEMA. É NECESSÁRIO ESTABELECER CORRETAMENTE OS CRITÉRIOS DE PREEMPÇÃO PARA NÃO SOBRECARREGAR O SISTEMA

Page 145: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO PREEMPTIVO

ESCALONAMENTO CIRCULAR (ROUND ROBIN)

SEMELHANTE A AO FIFO, PORÉM QUANDO UM PROCESSO PASSA PARA O ESTADO DE EXECUÇÃO, EXISTE UM TEMPO-LIMITE PARA SUA UTILIZAÇÃO, ESSE TEMPO É DENOMINADO DE TIME-SLICE OU QUANTUM. QUANDO O TEMPO EXPIRA, ELE VOLTA PARA O ESTADO DE PRONTO, DANDO A VEZ PARA OUTRO PROCESSO. ESSE MECANISMO É CHAMADO DE PREEMPÇÃO POR TEMPO

ATRAVÉS DO ESCALONAMENTO CIRCULAR, NENHUM PROCESSO PODERÁ MONOPOLIZAR A CPU

EM SISTEMAS INTERATIVOS COM O USUÁRIO ESTE ALGORITMO É BASTANTE ADEQUADO.

Page 146: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO PREEMPTIVO - FILA CIRCULAR

Page 147: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO PREEMPTIVO

ESCALONAMENTO POR PRIORIDADE

O ESCALONAMENTO CIRCULAR CONSEGUE MELHORAR A DISTRIBUIÇÃO DO TEMPO DA CPU, PORÉM NÃO CONSEGUE IMPLEMENTAR UM COMPARTILHAMENTO DIFERENCIADO ENTRE OS PROCESSOS, ISTO ACONTECE EM RAZÃO DE O ESCALONAMENTO CIRCULAR TRATAR TODOS OS PROCESSOS DE UMA MANEIRA IGUAL, O QUE NEM SEMPRE É O IDEAL

PROCESSOS IO-BOUND COMPETEM DE FORMA IGUAL COM OS PROCESSOS CPU-BOUND

Page 148: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO PREEMPTIVO

ESCALONAMENTO POR PRIORIDADE

EM CERTAS CIRCUNSTANCIAS, ALGUNS PROCESSOS DEVEM SER TRATADOS DE MANEIRA DIFERENTE DE OUTROS PROCESSOS

É PRECISO ASSOCIAR A CADA UM DELES UMA PRIORIDADE DE EXECUÇÃO

NESSE ESQUEMA, PROCESSOS DE MAIOR PRIORIDADE SÃO ESCALONADOS PREFERENCIALMENTE, ISTO É, TODA VEZ QUE UM PROCESSO FOR PARA A FILA DE PRONTO COM PRIORIDADE SUPERIOR AO PROCESSO EM EXECUÇÃO, O SISTEMA DEVERÁ INTERROMPER O PROCESSO CORRENTE, COLOCÁ-LO NO ESTADO DE PRONTO E SELECIONAR O DE MAIOR PRIORIDADE. ESTE MECANISMO É DEFINIDO COMO PREEMPÇÃO POR PRIORIDADE

Page 149: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO PREEMPTIVO

ESCALONAMENTO POR PRIORIDADE

A PRIORIDADE PODE SER ESTÁTICA OU DINÂMICA

A PRIORIDADE É DITA ESTÁTICA QUANDO NÃO É MODIFICADA DURANTE A EXISTÊNCIA DO PROCESSO

NA PRIORIDADE DINÂMICA, A PRIORIDADE DO PROCESSO PODE SER AJUSTADA DE ACORDO COM O TIPO DE PROCESSAMENTO REALIZADO PELO PROCESSO

A PRIORIDADE DE UM PROCESSO VAI AUMENTANDO A MEDIDA QUE O MESMO PERMANECE NA FILA DE PRONTO, APÓS A SUA EXECUÇÃO A PRIORIDADE É A MAIS BAIXA POSSÍVEL

DE TEMPOS EM TEMPOS É REALIZADO UM RECALCULO DE PRIORIDADE DOS PROCESSOS PRONTOS

Page 150: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO PREEMPTIVO

ESCALONAMENTO POR MÚLTIPLAS FILAS

COMO DIVERSOS PROCESSOS DO SISTEMA POSSUEM CARACTERÍSTICAS DE PROCESSAMENTO DIFERENTES, É DIFÍCIL QUE UM ÚNICO MECANISMO DE ESCALONAMENTO SEJA ADEQUADO A TODOS OS TIPOS DE PROCESSO.

UMA BOA POLÍTICA SERIA CLASSIFICAR OS PROCESSOS EM FUNÇÃO DO TIPO DE PROCESSAMENTO REALIZADO E APLICAR A CADA GRUPO MECANISMOS DE ESCALONAMENTO DISTINTO

O ESCALONAMENTO POR MULTIPLAS FILAS IMPLEMENTA DIVERSAS FILAS DE PROCESSO NO ESTADO DE PRONTO, ONDE CADA PROCESSO É ASSOCIADO EXCLUSIVAMENTE A UMA DELA.

CADA FILA POSSUI UMA PRIORIDADE ASSOCIADA

Page 151: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO PREEMPTIVO

ESCALONAMENTO POR MÚLTIPLAS FILAS

Page 152: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO COMMÚLTIPLOS PROCESSADORES

EXISTE UMA [ÚNICA FILA DE PRONTO E SÃO ESCALONADOS NO PRIMEIRO PROCESSADOR DISPONÍVEL

NO CASO DE DOIS OU MAIS PROCESSADORES SE TORNAR DISPONÍVEL EM UM MESMO INSTANTE, NÃO PODE HAVER A POSSIBILIDADE DE UM PROCESSO SER ESCALONADO POR DOIS PROCESSADORES DIFERENTES.

A MEMÓRIA FÍSICA É ÚNICA PARA TODOS OS PROCESSADORES, CONTENDO ASSIM TODOS OS PROGRAMAS, NÃO FAZ DIFERENÇA EM QUAL PROCESSADOR A EXECUÇÃO OCORRERÁ.

Page 153: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESCALONAMENTO COMMÚLTIPLOS PROCESSADORES

Page 154: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

GERENCIAMENTO DE MEMÓRIA

Page 155: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

INTRODUÇÃO

O COMPUTADOR POSSUI DOIS TIPOS DE MEMÓRIA

PRINCIPAL - MEMÓRIA RAM, RECURSO ESCASSO, DE ARMAZENAMENTO TEMPORÁRIO, DE ALTO CUSTO, DE RÁPIDO ACESSO

SECUNDÁRIA - DISCO OU FITA É UM MEIO PERMANENTE, MAIS ABUNDANTE E DE BAIXO CUSTO, ACESSO LENTO, ONDE SÃO ARMAZENADOS OS PROGRAMAS E DADOS.

TODA VEZ QUE DESEJARMOS EXECUTAR UM PROGRAMA RESIDENTE NA MEMÓRIA SECUNDÁRIA, DEVEREMOS ALGUMA FORMA, CARREGÁ-LO PARA A MEMÓRIA PRINCIPAL

Page 156: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

CICLO DE UM PROGRAMA

Page 157: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROGRAMAÇÃO

Page 158: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROGRAMA EM DISCO

Page 159: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

PROGRAMA EM MEMÓRIA RAM

Page 160: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

INTRODUÇÃO

COMO A MEMÓRIA PRINCIPAL É ESCASSA E DE ALTO CUSTO, É NECESSÁRIO QUE O SISTEMA OPERACIONAL NÃO OCUPE MUITO ESPAÇO EM MEMÓRIA E AO MESMO TEMPO DEVE OTIMIZAR SUA UTILIZAÇÃO.

EM SISTEMAS MONOPROGRAMÁVEIS, A GERÊNCIA DE MEMÓRIA NÃO É MUITO COMPLEXA, NOS SISTEMAS MULTIPROGRAMÁVEIS ELA SE TORNA CRÍTICA, DEVIDO A NECESSIDADE DE MANTER O MAIOR NÚMERO DE USUÁRIOS POSSÍVEIS UTILIZANDO A MEMÓRIA EFICIÊNTEMENTE

Page 161: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO CONTÍGUA SIMPLES FOI IMPLEMENTADA NOS PRIMEIROS SISTEMAS OPERACIONAIS, AINDA ESTÁ PRESENTE EM ALGUNS SISTEMAS MONOPROGRAMÁVEIS (DOS)

A MEMÓRIA PRINCIPAL ESTÁ DIVIDIDA EM DUAS PARTES: UMA ESTÁ PARA O SISTEMA OPERACIONAL E A OUTRA PARA O PROGRAMA DE USUÁRIO

O PROGRAMA DE USUÁRIO ESTÁ LIMITADO AO ESPAÇO DE MEMÓRIA DISPONÍVEL, OU SEJA O TAMANHO TOTAL DE MEMÓRIA PRINCIPAL MENOS O QUE ESTÁ SENDO OCUPADO PELO SISTEMA OPERACIONAL

USUÁRIO PODE ACESSAR DADOS EM QUALQUER POSIÇÃO DE MEMÓRIA, INCLUSIVE MODIFICAR O SO

PARA PROTEGER O SO EXISTE UM REGISTRADOR PARA DELIMITAR AS ÁREAS DA APLICAÇAO E DO SO

Page 162: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO CONTÍGUA SIMPLES

Page 163: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO CONTÍGUA SIMPLES

FÁCIL IMPLEMENTAÇÃO

NÃO PERMITE A UTILIZAÇÃO EFICIENTE DA MEMÓRIA E DO PROCESSADOR, POIS APENAS UM USUÁRIO PODE DISPOR DESSES RECURSOS

SE O PROGRAMA DO USUÁRIO NÃO PREENCHE TOTALMENTE A MEMÓRIA, EXISTIRÁ UMA ESPAÇO DE MEMÓRIA SEM UTILIZAÇÃO

Page 164: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO CONTÍGUA SIMPLES OVERLAY

A PRINCÍPIO OS PROGRAMAS DE USUÁRIO ESTAVAM LIMITADOS AO TAMANHO DA MEMÓRIA PRINCIPAL DISPONÍVEL.

PARA EXECUTAR UM PROGRAMA COM TAMANHO MAIOR QUE A MEMÓRIA DISPONÍVEL, É NECESSÁRIO DIVIDIR O PROGRAMA EM MÓDULOS DE FORMA QUE PUDESSEM EXECUTAR INDEPENDENTEMENTE UMA DA OUTRA, UTILIZANDO UMA MESMA ÁREA DE MEMÓRIA, ESTA TÉCNICA É CHAMADA DE OVERLAY.

CADA VEZ QUE UM DOS MÓDULOS FOR REFERÊNCIADO PELO MÓDULO PRINCIPAL, O MÓDULO SERÁ CARREGADO DA MEMÓRIA SECUNDÁRIA PARA A ÁREA DE OVERLAY, SOBREPONDO O MÓDULO ATUAL, SE O MÓDULO JÁ ESTIVER NA ÁREA DE OVERLAY, NADA É REALIZADO

Page 165: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TÉCNICA DE OVERLAY

Page 166: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO CONTÍGUA SIMPLES OVERLAY

A TÉCNICA DE OVERLAY TEM VANTAGEM DE PERMITIR QUE O PROGRAMADOR EXPANDA OS LIMITES DA MEMÓRIA PRINCIPAL

A UTILIZAÇÃO DESTA TÉCNICA EXIGE MUITO CUIDADO POIS PODE TRAZER PROBLEMAS DE DESEMPENHO DA APLICAÇÃO, DEVIDO A TRANSFERÊNCIA EXCESSIVA DOS MÓDULOS ENTRE O DISCO E A MEMÓRIA.

A DEFINIÇÃO DAS ÁREAS DE OVERLAY É FUNÇÃO DO PROGRAMADOR, ATRAVÉS DE COMANDOS ESPECIAIS DA LINGUAGEM UTILIZADA.

Page 167: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA

PARA PROPORCIONAR MELHOR APROVEITAMENTO DOS RECURSOS COMPUTACIONAIS, OS SISTEMAS OPERACIONAIS TORNARAM-SE MULTITAREFA.

PARA A MULTIPROGRAMAÇÃO SER EFICIÊNTE É NECESSÁRIO QUE VÁRIOS PROGRAMAS ESTEJAM NA MEMÓRIA AO MESMO TEMPO, DAÍ A NECESSIDADE DE UMA NOVA FORMA DE ORGANIZAÇÃO PARA A MEMÓRIA PRINCIPAL

Page 168: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA ESTÁTICA

UTILIZADO EM SISTEMAS MULTIPROGRAMÁVEIS

A MEMÓRIA É DIVIDIDA EM PEDAÇOS, CHAMADO DE PARTIÇÕES

CADA PARTIÇÃO TEM O TAMANHO DEFINIDO NA INICIALIZAÇÃO DO SISTEMA, EM FUNÇÃO DO TAMANHO DOS PROGRAMAS QUE EXECUTARIAM NESTE AMBIENTE

SEMPRE QUE É NECESSÁRIO A ALTERAÇÃO DA PARTIÇÃO É NECESSÁRIO O SISTEMA DEVE SER DESATIVADO E REINICIADO COM A NOVA CONFIGURAÇÃO

Page 169: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA ESTÁTICA

Page 170: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA ESTÁTICA ABSOLUTA

COMPILADORES E MONTADORES DE PRIMEIRA GERAÇÃO GERAVAM CÓDIGOS ABSOLUTOS, ISTO FAZIA COM QUE UM PROGRAMA SÓ PODERIA EXECUTAR EM UMA ÚNICA PARTIÇÃO, MESMO QUE OUTRAS PARTIÇÕES ESTIVESSEM LIVRES.

A ESSE TIPO DE ALOCAÇÃO CHAMOU-SE ALOCAÇÃO PARTICIONADA ESTÁTICA ABSOLUTA.

Page 171: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

CÓDIGO ABSOLUTO

Page 172: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA ESTÁTICA ABSOLUTA

Page 173: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA ESTÁTICA RELOCÁVEL

COM A EVOLUÇÃO DOS COMPILADORES E MONTADORES FOI POSSÍVEL A GERAÇÃO DE CÓDIGOS RELOCÁVEIS E ASSIM OS PROGRAMAS PUDERAM SER CARREGADOS EM QUALQUER PARTIÇÃO

A PARTIR DESTA IMPLEMENTAÇÃO FOI CRIADO UM NOVO TIPO DE ORGANIZAÇÃO, DENOMINADO DE ALOCAÇÃO PARTICIONADA ESTÁTICA RELOCÁVEL

PARA MANTER O CONTROLE SOBRE QUAIS PARTIÇÕES ESTAVAM ALOCADAS OU NÃO, OS SISTEMAS POSSUÍAM TABELAS, DELIMITANDO SEU CADA PARTIÇÃO, SEU TAMANHO E SE ESTAVA EM USO OU NÃO

SEMPRE QUE UM PROGRAMA É CARREGADO, O SISTEMA PERCORRE A TABELA NA TENTATIVA DE LOCALIZAR UMA PARTIÇÃO LIVRE, ONDE O PROGRAMA PODE SER ALOCADO

Page 174: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA ESTÁTICA RELOCÁVEL

Page 175: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

TABELA DA ALOCAÇÃO DE PARTIÇÕES

Page 176: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA ESTÁTICA RELOCÁVEL

NESSE ESQUEMA DE ALOCAÇÃO DE MEMÓRIA, A PROTEÇÃO BASEIA-SE EM DOIS REGISTRADORES QUE INDICAM OS LIMITES INFERIORES E SUPERIORES ONDE UM PROGRAMA ESTÁ SENDO EXECUTADO.

CASO O PROGRAMA TENTE ACESSAR UMA POSIÇÃO DE MEMÓRIA FORA DOS LIMITES DEFINIDOS PELOS REGISTRADORES, ELE É INTERROMPIDO E UMA MENSAGEM DE ERRO É ENVIA.

OS SISTEMAS DE ALOCAÇÃO ABSOLUTA E NOS DE ALOCAÇÃO RELOCÁVEL, OS PROGRAMAS NORMALMENTE NÃO PREENCHEM TOTALMENTE AS PARTIÇÕES.

OS PEDAÇOS DE MEMÓRIA QUE FICAM IMPEDIDOS DE SER UTILIZADO POR OUTROS PROGRAMAS É CHAMADO DE FRAGMENTAÇÃO

Page 177: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

DELIMITAÇÃO DA PARTIÇÃO

Page 178: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

FRAGMENTAÇÃO DA MEMÓRIA PRINCIPAL

Page 179: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA DINÂMICA

A ALOCAÇÃO PARTICIONADA ESTÁTICA MOSTROU A NECESSIDADE DE UMA NOVA FORMA DE ORGANIZAÇÃO DE MEMÓRIA QUE PERMITISSE DIMINUIR A FRAGMENTAÇÃO E CONSEQUENTEMENTE AUMENTAR O GRAU DE COMPARTILHAMENTO DA MEMÓRIA.

NA ALOCAÇÃO DINÂMICA (OU VARIÁVEL), FOI ELIMINADO O CONCEITO DE PARTIÇÕES DE TAMANHO FIXO, CADA PROGRAMA UTILIZARIA O ESPAÇO DE QUE NECESSITASSE, PASSANDO ESSE PEDAÇÃO A SER SUA PARTIÇÃO

Page 180: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA DINÂMICA

Page 181: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO PARTICIONADA DINÂMICA

O PROBLEMA DE FRAGMENTAÇÃO NÃO ESTÁ RESOLVIDO, POIS COMEÇARÁ A OCORRER QUANDO OS PROGRAMAS FOREM TERMINANDO E DEIXANDO ESPAÇOS CADA VEZ MENORES NA MEMÓRIA, NÃO PERMITINDO O INGRESSO DE NOVOS PROGRAMAS.

EXISTEM DUAS SOLUÇÕES PARA O CASO:

ESPAÇOS ADJACENTES DEVEM SER REUNIDOS, PRODUZINDO UM ÚNICO ESPAÇO DE TAMANHO MAIOR;

REALOCAÇÃO DE TODAS AS PARTIÇÕES OCUPADAS, ELIMINANDO TODOS OS ESPAÇOS ENTRE ELAS E CRIANDO UMA ÚNICA ÁREA LIVRE CONTÍGUA.

A RELOCAÇÃO REDUZ A FRAGMENTAÇÃO MAS A IMPLEMENTAÇÃO É COMPLEXA E ONEROSA EM RECURSOS.

Page 182: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ALOCAÇÃO DINÂMICAFRAGMENTAÇÃO

Page 183: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SOLUCÃO PARA FRAGMENTAÇÃO AGREGAÇÃO DE ESPAÇOS

CONTÍGUO

Page 184: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SOLUCÃO PARA FRAGMENTAÇÃO RELOCAÇÃO DE PARTIÇÃO

Page 185: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESTRATÉGIA PARA ESCOLHA DA PARTIÇÃO

OS SISTEMAS OPERACIONAIS IMPLEMENTAM, BASICAMENTE TRÊS ESTRATÉGIAS PARA DETERMINAR EM QUAL PARTIÇÃO LIVRE UM PROGRAMA SERÁ CARREGADO PARA EXECUÇÃO.

AS ESTRATÉGIAS TENTAM EVITAR, OU DIMINUIR O PROBLEMA DA FRAGMENTAÇÃO ANTES QUE ELA OCORRA

ESTRATÉGIAS

BEST-FIT - DEIXA O MENOR ESPAÇO;

WORST-FIT - DEIXA O MAIOR ESPAÇO

FIRST-FIT - PRIMEIRA PARTIÇÃO LIVRE

Page 186: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESTRATÉGIA PARA ESCOLHA DE PARTIÇÃO

Page 187: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESTRATÉGIA DE ALOCAÇÃO

Page 188: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESTRATÉGIA PARA ALOCAÇÃOBEST-FIT

ESCOLHE A MELHOR PARTIÇÃO (BEST-FIT), OU SEJA, AQUELA EM QUE O PROGRAMA DEIXA O MENOR ESPAÇO SEM UTILIZAÇÃO

A LISTA DE ÁREAS LIVRES ESTÁ ORDENADA POR TAMANHO, DIMINUINDO O TEMPO DE BUSCA POR UMA ÁREA DESOCUPADA

COMO É ALOCADA A PARTIÇÃO QUE DEIXA A MENOR ÁREA LIVRE, A TENDÊNCIA É QUE CADA VEZ MAIS A MEMÓRIA FIQUE COM PEQUENAS ÁREAS NÃO CONTÍGUAS, AUMENTANDO O PROBLEMA DA FRAGMENTAÇÃO

Page 189: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESTRATÉGIA PARA ALOCAÇÃOWORST-FIT

ESSE MECANISMO ESCOLHE A PIOR PARTIÇÃO(WORST-FIT), OU SEJA, AQUELA EM QUE O PROGRAMA DEIXA O MAIOR ESPAÇO SEM UTILIZAÇÃO

APESAR DE UTILIZAR AS PARTIÇÕES MAIORES, A TÉCNICA WORST-FIT DEIXA ESPAÇOS LIVRES MAIORES QUE PERMITEM A UM MAIOR NÚMERO DE PROGRAMAS UTILIZAR A MEMÓRIA, DIMINUIDO O PROBLEMA DA FRAGMENTAÇÃO

Page 190: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

ESTRATÉGIA PARA ALOCAÇÃOFIRST-FIT

ESSE MECANISMO ESCOLHE A PRIMEIRA PARTIÇÃO (FIRST-FIT) LIVRE, DE TAMANHO SUFICIENTE PARA CARREGAR O PROGRAMA.

NESSE ALGORÍTMO, A LISTA DE ÁREAS LIVRES ESTÁ ORDENADO POR ENDEREÇOS CRESCENTE.

COMO O MÉTODO TENTA PRIMEIRO UTILIZAR AS ÁREAS LIVRES DE ENDEREÇOS MAIS BAIXO, EXISTE UMA GRANDE CHANCE DE SE OBTER UMA GRANDE PARTIÇÃO LIVRE NOS ENDEREÇOS MAIS ALTOS DE MEMÓRIA.

DAS TRÊS ESTRATÉGIAS A FIRST-FIT É A MAIS RÁPIDA, CONSUMINDO MENOS RECURSO DO SISTEMA

Page 191: SISTEMAS OPERACIONAIS PROFESSOR - AIRTON KUADA EMAIL - airton@fesppr.br

SWAPPING