introdução - gta / coppe / ufrj · 2017-08-04 · sistemas operacionais •fornecer abstrações...

27
EEL770 – Sistemas Operacionais Introdução Pedro Cruz

Upload: others

Post on 08-Aug-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

EEL770 – Sistemas Operacionais

Introdução

Pedro Cruz

Page 2: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Roteiro

• Informações úteis

• Motivação

• Definições

• Revisão de arquitetura

2

Page 3: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Contato

• Site da disciplina

– www.gta.ufrj.br/~cruz/courses/eel770

• Email

[email protected]

3

Page 4: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Bibliografia

• TANENBAUM, A.; BOS, H. Sistemas Operacionais Modernos. 4ª Edição. São Paulo: Pearson Education do Brasil, 2016.

• STALLINGS, W. Operating Systems: Internal and Design Principles. 8ª Edição. New Jersey: Pearson, 2015.

• SILBERSCHATZ, A.; GALVIN, P. B.; GAGNE, G. Fundamentos de Sistemas Operacionais. 9º Edição. Rio de Janeiro: LTC, 2015.

4

Page 5: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Avaliação

• Prova 1

• Lista 1

• Prova 2

• Lista 2

• Trabalho

5

Avaliação Peso

Prova 1 0.3

Lista 1 0.1

Prova 2 0.3

Lista 2 0.1

Trabalho 0.2

Page 6: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Motivação

• Dispositivos de hardware requerem programação específica

• Dispositivos e recursos necessitam de gerenciamento

6

Page 7: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Sistemas Operacionais

• Fornecer abstrações para o hardware

• Gerenciar recursos

7

Page 8: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Abstraindo recursos de hardware

8

Hardware

Aplicativos

Abstrações de hardware

Sistema Operacional

Interfacesespecíficas

Page 9: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Gerenciando recursos

• Compartilhar recursos entre aplicativos e usuários

– Multiplexação

• Tempo

• Espaço

• Garantir a segurança da informação dos usuários

• Implementar melhorias no desempenho do sistema

9

Page 10: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Modos de execução

10

Hardware

Aplicativos

Programas de interfacecom o usuário

Sistema Operacional

Modo usuário

Modo núcleo

Software

Hardware

Page 11: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Revisão de arquitetura

• Processador

• Memória

• Disco

• Dispositivos de Entrada e Saída (I/O)

11

Page 12: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Processador - CPU

• Executa um conjunto de instruções

– Processadores diferentes têm instruções diferentes

• Armazena operandos e resultados em registradores

• Mantém registradores de estado e fluxo de execução

– Contador de programa

– Ponteiro de pilha

– Estado do Programa (Program Status Word – PSW)

• Flags do processador

– Modo de execução

• Usuário

• Núcleo

12

Page 13: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Processador

• Busca de instrução

• Decodificação de instrução

• Execução de instrução

13

Page 14: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Chamada de sistema

• Modo usuário é limitado a um conjunto de instruções

• Modo núcleo é exclusivo no acesso

– I/O

– Alocação de memória

– Alguns flags

• Chamada de sistema é realizada

– Processador entra em modo núcleo

– Operacional executa instruções necessárias e retorna ao programa original

14

Mais detalhes ao longo do curso

Page 15: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Memória

• Armazena valores

– Expectativa: tão rápida quanto a CPU

– Realidade: CPU espera pela memória

• É dividida de maneira hierárquica

15

Page 16: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Memória

• Registradores

– Dentro do processador

• Cache

– Dentro do processador

– Pode possuir níveis

• Memória principal

– Acessada por barramento

– Acesso aleatório

16

Page 17: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Disco

• Mecânico

• Acesso linear

17

Page 18: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Memória & disco

18

Tipo Tempo de acesso (s) Capacidade (B)

Registradores 1n <1k

Cache 2n 4M

Memória principal 10n 8G

Disco 10m 4T

Disco

Registradores

Cache

Memória principal

Page 19: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Dispositivos de entrada e saída

• Controlador + dispositivo

– Diferentes padrões

• Driver

• Registradores de dispositivos

– Espaço de memória

– Instruções de IN e OUT

19

Page 20: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Entrada e saída

• Espera ocupada

– Driver aguarda até que a operação seja concluída

• Interrupção

– Driver inicia a transferência

– Operacional bloqueia o programa que realizou a chamada

– Dispositivo gera uma interrupção que sinaliza o término

– CPU encontra o tratador para a interrupção

• Acesso Direto de Memória (Direct Memory Access – DMA)

– Hardware especial cuida da operação de I/O e sinalização

20

Page 21: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Interrupção

1. Execução do programa gera chamada de I/O

2. Programa é suspenso

3. Operacional realiza chamada ao driver

4. Driver realiza chamada ao hardware e retorna

5. Operacional realiza tarefas enquanto aguarda hardware

6. Hardware gera interrupção

7. CPU retorna ao programa original

21

Page 22: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Inicialização – placa-mãe

• BIOS (Basic Input-Output System)

– Verifica e configura dispositivos

• RAM, vídeo, teclado

– Verifica lista de inicialização

• USB, unidade de CD, discos

– Lê e executa o primeiro setor do dispositivo de inicialização

• Determina partição ativa

– Lê partição ativa

• Inicialização do Sistema Operacional

22

Page 23: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Inicialização - Sistema Operacional

• Carga de configurações

• Verificação de drivers

• Inicialização de tabelas

• Inicialização de processos de fundo

• Identificação

• Interfaces gráficas

23

Page 24: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Multiprocessadores Simétricos

• Dois ou mais processadores de capacidade similar

– Compartilham Memória e I/O

– São capazes das mesmas funções

– São integrados por um sistema operacional

24

Page 25: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Multiprocessadores simétricos

Fonte: Stallings

25

Page 26: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

Processadores multinúcleo

• Diversos processadores em uma mesma peça de substrato

Fonte: Stallings

26

Page 27: Introdução - GTA / COPPE / UFRJ · 2017-08-04 · Sistemas Operacionais •Fornecer abstrações para o hardware •Gerenciar recursos 7. Abstraindo recursos de hardware 8 Hardware

EEL770 – Sistemas Operacionais

Introdução

Pedro Cruz