computação l1: infra-estrutura básica sérgio cavalcante [email protected]
TRANSCRIPT
![Page 2: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/2.jpg)
Hardware,Software eComunicação
HardwareHardware
SistemaOperacional
Software de Suporte
Software Aplicativo
![Page 3: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/3.jpg)
Pra quê software básico? O que acontece quando ligamos o computador? E quando “clicamos” num ícone? Como funcionam dois programas ao mesmo
tempo? E se estiverem cooperando mas em máquinas
diferentes interligadas em rede? Como ocorre o mapeamento de discos? E se dois programas quiserem usar o mesmo
recurso?
![Page 4: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/4.jpg)
Escalonamento de Processos
![Page 5: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/5.jpg)
Módulo 1
Conceitos Básicos Introdução aos Sistemas Operacionais Gerenciamento de Processos /
Escalonamento Gerenciamento de Memória / Memória
Virtual Entrada e Saída Gerenciamento de Disco / Sistemas de
Arquivos
![Page 6: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/6.jpg)
Conceitos Básicos
Introdução aos Sistemas Operacionais
O que é um sistema operacional?
Um gerenciador de recursos.
- Permite uma utilização simples, eficaz e segura dos recursos do sistema computacional- Oferece uma interface para o usuário
Que recursos são esses?Que recursos são esses?
![Page 7: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/7.jpg)
Conceitos Básicos
Tarefas do S.O. Permite o armazenamento e recuperaçao de informações Isola detalhes de hardware Controla o fluxo de dados entre componentes Permite que um programa seja executado sem
interferência de outros Permite cooperação entre programas Interage com o(s) usuário(s) Escalona e controla recursos Responde a erros do sistema Realiza contabilidade do uso do sistema (cobrança,
performance)
![Page 8: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/8.jpg)
Conceitos Básicos
Tipos de S.O. Sistemas batch (em lote) Sistemas interativos Monotarefa Multitarefa Monousuário Multiusuário Máquinas virtuais Sistemas de tempo real Estrutura: Monolíticos X Em camadas
![Page 9: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/9.jpg)
Conceitos Básicos
Tipos de S.O. Sistemas batch (em lote)
• Cartões perfurados
Sistemas interativos• Terminais de usuários
![Page 10: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/10.jpg)
Conceitos Básicos
Tipos de S.O. Monotarefa Executam apenas uma tarefa por vez.
• O que é uma tarefa?
• O que são Processos?• Antes, o que é um programa?
Processos são programas em execuçãoProcessos são programas em execução.São geralmente chamados de tarefas
• O que são Threads?
Threads são partes de um programa que executam em paralelo.Threads são partes de um programa que executam em paralelo.
• Qual a diferença entre multitasking (multitarefa) e multithreading?
![Page 11: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/11.jpg)
Conceitos Básicos
Processos Contexto de processos
Vídeo
TecladoCPUCPUCPUCPU
Memória
E/S
outros dispositivos
CPU: Registradores Memória: Posições em uso E/S: Estado das requisições Estado do processo: Rodando, Bloqueado, Pronto Outras informações
![Page 12: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/12.jpg)
Conceitos Básicos: Processos
Registradores da CPU Registradores de controle e status
• Acesso geralmente restrito ao S.O. ou à própria CPU• Ex: Program Counter (PC),
Instruction Register (IR), Program Status Word (PSW)
• Resultados de operações• Modo supervisor / usuário• Habilitação / desabilitação de interrupção
Registradores de uso geral• O usuário tem acesso• Armazenam dados endereços e resultados de operações
![Page 13: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/13.jpg)
Conceitos Básicos
Processo Estados de um processo
Pronto Rodando
Bloqueado
CriaçãoTérmino
Esperandoevento
Eventoocorreu
ID do Processo
Estado
Program Counter
Ponteiros da MemóriaContexto (regs.)
I/O Status
Prioridade
Informações gerais• tempo de CPU• limites, usuário, etc.
Contexto
![Page 14: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/14.jpg)
Conceitos Básicos
Tipos de S.O. Monotarefa Multitarefa Monousuário Multiusuário
Como evitar que um processo monopolize o sistema?
Sistemas de tempo compartilhado (Time Sharing Systems)• Permite sistemas interativos• Requer temporizadores (timers )• Interrupções
![Page 15: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/15.jpg)
Conceitos Básicos: Tipos de S.O.
MultiprocessamentoÍnd. Processo
PC
BaseLimite
Outros regs
Lista de
proc.
Proc. A.
Proc. B.
O índice do processo contem o apontador para a lista de processos
Uma troca de processos consiste em trocar o valor dos registradores de contexto da CPU
Memória
...
...
...
Contexto
Dados
Código
Contexto
Dados
Código
Regs da CPU
![Page 16: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/16.jpg)
Conceitos Básicos: Tipos de S.O.
O que é necessário para haver multiprocessamento? Suporte do Hardware
• Temporizadores (timers )• Interrupções• Gerenciamento de memória• Proteção de memória
Suporte do S.O.• Escalonamento dos processos• Alocação de memória• Gerenciamento dos periféricos
![Page 17: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/17.jpg)
Conceitos Básicos:
A importância da Interrupção Numa sistema simples,
CPU deve esperar a execução do comando de E/S• A cada chamada do
comando write a CPU fica esperando o dispositivo executar o comando.
Ex: escrita em disco
![Page 18: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/18.jpg)
Conceitos Básicos:
A importância da Interrupção Um sistema com
interrupção não fica esperando• A CPU solicita o write e
fica exectando outras tarefas até ser interrompida pelo disco.
Ex: escrita em disco
![Page 19: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/19.jpg)
Conceitos Básicos
Operação Básica da CPU
Busca instruçãoe dados
Busca instruçãoe dados
Executa a instruçãoExecuta a instrução
Incrementa PCIncrementa PC
1) Pára o processo atual2) Salta p/ rotina de interrupção
1) Pára o processo atual2) Salta p/ rotina de interrupção
Sim
NãoInterrupção?
![Page 20: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/20.jpg)
Conceitos Básicos
Interrupção do Programa
![Page 21: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/21.jpg)
Conceitos Básicos: Tipos de S.O.
Como identificar e tratar erros? Uso de exceções
• Interrupções causadas por:• Divisão por zero• Erro de código de instrução• Acesso indevido de memória• Acesso indevido a dispositivos de E/S• ...
![Page 22: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/22.jpg)
Conceitos Básicos:
Como evitar que um processo interfira em outros (inclusive no SO) ? Níveis diferentes de prioridade para os processos:
• Modo supervisor (administrador)• Modo usuário
Restrição (por hw) de acesso a certas Instruções (privileged instructions)• Instruções de E/S• Modificação de certos registradores
Gera uma exceção se tentado por processo do usuário
![Page 23: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/23.jpg)
Conceitos Básicos:
Como executar programas maiores que a memória principal? Uso de memória virtual Áreas do disco são usadas para armazenamento de
blocos do programa. Apenas os blocos em uso ficam na memória principal Quando necessário, trocam-se os blocos da memória
com o disco (swap)
![Page 24: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/24.jpg)
Estrutura do S.O.
Usuário
Aplicativos
Utilitários
Sistema Operacional
Computador (Hardware)
Monolítico Em camadas
![Page 25: Computação L1: Infra-Estrutura Básica Sérgio Cavalcante svc@cin.ufpe.br](https://reader035.vdocuments.net/reader035/viewer/2022081720/552fc160497959413d8e8943/html5/thumbnails/25.jpg)
Estrutura em camadas Modularidade Hierarquia Facilita evolução e adaptação a novos
ambientes