SlideShare uma empresa Scribd logo
1 de 80
Baixar para ler offline
Sistemas Operacionais
Professor: Lucas Cambuim
Primeira Aula
Quem sou eu?
• Estudante de Doutorado em Engenharia da Computação
no Centro de Informática – UFPE
• Áreas de Interesse: Aprendizagem de Máquina,
Processamento de Imagem e Visão Computacional,
Computação de Alta Desempenho
• Tenho disponibilidade para orientação de trabalhos de
pesquisas
• Email: lucascambuim@gmail.com || lfsc@cin.ufpe.br
2
Sobre vocês
• Nome:
• O que busca?
— Pesquisar?
— Desenvolver?
— Concurso Público?
3
Objetivos da Disciplina
• Compreensão da importância dos sistemas operacionais para o
controle e aproveitamento dos recursos do computador;
4
Objetivos da Disciplina
• Compreensão da importância dos sistemas operacionais para o
controle e aproveitamento dos recursos do computador;
• Compreensão da necessidade de estruturação adequada dos
sistemas operacionais;
5
Objetivos da Disciplina
• Compreensão da importância dos sistemas operacionais para o
controle e aproveitamento dos recursos do computador;
• Compreensão da necessidade de estruturação adequada dos
sistemas operacionais;
• Conhecimento dos principais componentes de um sistema
operacional e dos mecanismos e técnicas usadas para
desenvolvê-los;
6
Objetivos da Disciplina
• Compreensão da importância dos sistemas operacionais para o
controle e aproveitamento dos recursos do computador;
• Compreensão da necessidade de estruturação adequada dos
sistemas operacionais;
• Conhecimento dos principais componentes de um sistema
operacional e dos mecanismos e técnicas usadas para
desenvolvê-los;
• Conhecimento de programação concorrente e de mecanismos
de exclusão mútua e de sincronização;
7
Metodologia
• Aulas expositivas
• Exercícios
• Projetos
8
Material de Apoio
• Endereço eletrônico (provisório) da disciplina
— http://www.cin.ufpe.br/~lfsc/cursos/sistemasoperacionais
— Slides da disciplina serão disponibilizados neste endereço
• Livros de apoio:
— A.S. Tanenbaum, Sistemas Operacionais Modernos, 4ª . Edição, Editora Prentice-Hall,
2016
— A.S. Tanenbaum, Sistemas Operacionais Modernos, 3ª . Edição, Editora Prentice-Hall,
2010
— Silberschatz, P. Baer Galvin, e G. Gagne, Fundamentos de Sistemas Operacionais, 8ª ou
6ª. Edição, Editora LTC, 2010, OU 6ª Edição, Editora LTC, 2004.
— W. Stallings, Operating Systems: internals and design principles, 8th Edition, Editora
Prentice-Hall, 2014 OU 6th Edition
9
Ementa da disciplina
• Introdução
— O que é um sistema operacional?
— Evolução histórica
— Revisão sobre hardware de computadores
— Serviços dos sistemas operacionais
— Conceitos de sistemas operacionais
— Chamadas de sistema
— Estrutura de sistemas operacionais
— Estudo de casos
• Gerenciamento de processos
— Processos
— Threads
— Escalonamento de CPU
— Algoritmos de Escalonamento 10
Ementa da disciplina
• Sincronização e comunicação entre processos
— Conceitos básicos, condições de corrida, regiões críticas, abordagens de exclusão
mútua
— As primitivas Sleep e Wake-up
— Semáforos: conceitos e exemplos de uso
— Monitores: conceitos e exemplos de uso
— Problemas clássicos de sincronização
— Comunicação entre processos (IPC): memória compartilhada, troca de mensagens.
— Deadlocks
11
Ementa da disciplina
• Gerenciamento de memória
— Conceitos básicos: endereço lógico e físico, espaço de endereçamento, relocação de
endereços
— Políticas básicas
— Gerência de memória em sistemas monoprogramados
— Gerência de memória real: partições fixas e partições variáveis
— Swapping
— Memória virtual
o Paginação
o Segmentação
o Segmentação com paginação
— Estudo de casos
12
Ementa da disciplina
• Gerenciamento de entrada e saída (E/S)
— Visão geral
— Princípios do hardware de E/S
— Princípios do software de E/S
— Camadas do software de E/S
— Tratamento de pedidos de E/S
— Métodos de transferência de dados: espera ocupada, interrupção e acesso direto à memória
— Discos
— Relógios
— Interfaces com o usuário: teclado, mouse
— Drivers dos dispositivos
— Estudo de casos
13
Avaliação
• Listas de exercícios (L1)
• Projetos (P2)
• Prova 1 (T1)
• Prova 2 (T2)
• Nota da primeira unidade: N1 = (0.6 * T1 + 0.4 * L1)
• Nota da segunda unidade: N2 = (0.5 * T2 + 0.5 * P2)
• A média final é M = (N1 + N2)/2
14
Computador Moderno
• Componentes físicos (hardware)
— Um ou mais processadores
— Memória
— Discos
— Impressoras
— Vários outros dispositivos de E/S (tela, mouse…)
16
Computador Moderno
• Componentes físicos (hardware)
— Um ou mais processadores
— Memória
— Discos
— Impressoras
— Vários outros dispositivos de E/S (tela, mouse…)
17
Um programa (software) geralmente
utiliza:
...processaor,
...a memória,
...manipula arquivo,
...aparece na tela,
...recebe comandos, via teclado
Computador Moderno
• Componentes físicos (hardware)
— Um ou mais processadores
— Memória
— Discos
— Impressoras
— Vários outros dispositivos de E/S (tela, mouse…)
18
Gerenciar todos estes componentes
requer abstração – um modelo mais
simples do computador – o sistema
operacional
SO
Programas de sistemas e aplicativos
Sistema computacional em Camadas
• Um sistema de computação é dividido em basicamente quatro componentes: o hardware, o
sistema operacional, os programas aplicativos e os usuários.
19
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
Sistema operacional
O Hardware
• Um ou mais processadores, memória, discos, impressoras, vários outros dispositivos de E/S
• Fornece os recursos básicos de computação.
20
Sistema computacional em Camadas
Programas de sistemas e aplicativos
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
Os programas aplicativos
• Definem as maneiras em que esses recursos são usados para resolver os problemas de
computação dos usuários
21
Sistema computacional em Camadas
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell
Programas de sistemas e aplicativos
Os programas aplicativos
• Definem as maneiras em que esses recursos são usados para resolver os problemas de
computação dos usuários
22
Sistema computacional em Camadas
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell
Programas de sistemas e aplicativos
compilador Editor de texto Sistema
de
banco
de
dados
Shell GUI ...
Os programas aplicativos
• Pode haver muitos usuários diferentes tentando resolver problemas diferentes
24
Sistema computacional em Camadas
Programas de sistemas e aplicativos
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell GUI
Os programas aplicativos
— Pode haver muitos programas aplicativos diferentes
25
Sistema computacional em Camadas
Programas de sistemas e aplicativos
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell GUI
Sistema computacional em Camadas
• O SO controla e coordena o uso do hardware entre os vários programas
aplicativos para os vários usuários.
26
Sistema computacional em Camadas
Programas de sistemas e aplicativos
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell
Sistema operacional
GUI
Modo usuário e Modo Kernel
• A maioria dos computadores tem dois modos de operação: modo núcleo e
modo usuário.
27
Programas de sistemas e aplicativos
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell
Modo
Usuário
Modo
Núcleo
GUI
Modo Kernel
• O SO tem acesso completo a todo o hardware e pode executar qualquer
instrução que a máquina for capaz de executar.
28
Modo usuário e Modo Kernel
Programas de sistemas e aplicativos
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell
Modo
Núcleo
GUI
Modo Kernel
• Proporciona a base para todos os outros softwares
29
Modo usuário e Modo Kernel
Programas de sistemas e aplicativos
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell
Modo
Núcleo
GUI
Modo Usuário
• O resto do software opera em modo usuário, no qual apenas um
subconjunto das instruções da máquina está disponível.
30
Modo usuário e Modo Kernel
Programas de sistemas e aplicativos
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell
Modo
Usuário
GUI
Modo Usuário
• Em particular, aquelas instruções que afetam o controle da máquina ou
realizam E/S (Entrada/Saída) são proibidas para programas de modo usuário.
31
Modo usuário e Modo Kernel
Programas de sistemas e aplicativos
Sistema operacional
Usuário1 Usuário2 Usuário 3
Hardware do
computador
Usuário n
...
compilador Editor de texto Sistema
de
banco
de
dados
Shell
Modo
Usuário
GUI
SO: Interface de Usuário
• Ele é a camada mais inferior de software de modo usuário.
• Permite que ele inicie outros programas, como um navegador web, leitor
de e-mail, ou reprodutor de música.
33
Shell GUI
Qual é a função do SO?
Máquina estendida
• Sistemas operacionais transformam o hardware pouco atraente
em abstrações mais interessantes
• Esconde detalhes do hardware
35
Exemplo da importância da Máquina estendida
Gravar um dado em um disco a partir de um controlador simples
• Controlador tem 16 comandos
— Leitura e escrita de dados
— Movimentação do braço do disco
— Formatação de trilhas
— Além disso, Inicialização, sinalização, reinicialização e
recalibração do controlador.
• Para o comando de leitura e escrita, cada um deles
requer 13 parâmetros agrupados em 9 bytes.
— Endereço do bloco de dados a ser lido
— o número de setores por trilha
— o modo de gravação usado no meio físico
— o espaço livre entre setores,
— etc … 36
Qual é a função do SO?
Exemplo da importância da Máquina estendida
Para deixar ainda mais claro:
• Um livro de 2007 que descreve a interface dos discos
rígidos modernos que um programador deveria saber:
— Tinha mais de 450 páginas
— Essa interface foi revista múltiplas vezes e é mais
complicada do que em 2007.
37
Qual é a função do SO?
Máquina estendida
• Uma maneira mais simples para o programador seria
aquela compreendida por um disco que contém uma
coleção de arquivos com nomes.
• Cada arquivo pode ser aberto para leitura e escrita e
depois fechado
38
Qual é a função do SO?
Gerenciador de recursos
• O SO atua como gerente de recursos de hardware
• Computadores modernos consistem de processadores, memórias,
temporizadores, discos, dispositivos apontadores do tipo mouse, interfaces
de rede, impressoras e uma ampla gama de outros dispositivos.
‘
40
Qual é a função do SO?
SO
Gerenciador de recursos
• O trabalho do SO é fornecer uma alocação ordenada e
controlada de processadores, memórias, e dispositivos
de E/S entre vários programas que compete por eles.
41
Qual é a função do SO?
SO
Gerenciador de recursos
• Se houver muitos pedidos de recursos possivelmente conflitantes
— o SO deve decidir em que pedidos serão alocados recursos.
43
Qual é a função do SO?
Gerenciador de recursos (Exemplo)
• Sistemas operacionais modernos permitem que múltiplos
programas estejam na memória e sejam executados ao mesmo
tempo.
45
Qual é a função do SO?
Memória
Editor de texto
Navegador web
...
Leitor de pdf
Gerenciador de recursos (Exemplo)
• Imagine vários programas querendo imprimir
• As primeiras linhas de impressão poderiam ser do programa 1, as seguintes
do programa 2, então algumas do programa 3 e assim por diante
46
Qual é a função do SO?
Memória
Editor de texto
Navegador web
...
Leitor de pdf
Gerenciador de recursos (Exemplo)
• O sistema operacional pode trazer ordem armazenando temporariamente
toda a saída destinada para a impressora no disco.
47
Qual é a função do SO?
Memória
Editor de texto
Navegador web
...
Leitor de pdf
Gerenciador de recursos (Exemplo)
• O sistema operacional pode trazer ordem armazenando temporariamente
toda a saída destinada para a impressora no disco.
48
Qual é a função do SO?
Fila de impressão
Gerenciador de recursos
• No caso de um computador com múltiplos
usuários:
— o SO precisa evitar que usuários possam interferir
uns nos outros.
— prover proteção da memória, dispositivos de E/S e
outros recursos
49
Qual é a função do SO?
Gerenciador de recursos
• Duas maneiras de compartilhar recursos: no tempo e no espaço
— No tempo: diferentes programas ou usuários se revezam
usando-o
50
Qual é a função do SO?
Exemplo de com compartilhamento no tempo
51
Gerenciador de recursos
Exemplo de com compartilhamento no tempo
• Determinar como o recurso é multiplexado no tempo — quem vai em seguida e por
quanto tempo é a tarefa do sistema operacional.
52
Gerenciador de recursos
Tempo
Outro exemplo de com compartilhamento no tempo
• Quando múltiplas saídas de impressão estão na fila para serem impressas em uma única
impressora, uma decisão tem de ser tomada sobre qual deve ser impressa em seguida
53
Qual é a função do SO?
Memória
Editor de texto
Navegador web
...
Leitor de pdf
1º
2º
3º
Gerenciamento dos programas em execução
54
Gerenciador de recursos
• Duas maneiras de compartilhar recursos: no tempo e no espaço
— No Espaço: Cada programa ocupa uma parte do recurso
55
Qual é a função do SO?
Exemplo de compartilhamento no espaço
56
Qual é a função do SO?
Memória
Editor de texto
Navegador web
...
Leitor de pdf
• Alocação da memória entre os diferentes programas
• O sistema operacional deve gerenciar a memória disponível no computador
• Prevendo mecanismo de proteção da memória entre diferentes programas
Outro exemplo de compartilhamento no espaço
57
Qual é a função do SO?
• Em muitos sistemas um único disco pode conter arquivos de muitos
usuários ao mesmo tempo.
• Alocar espaço de disco e controlar quem está usando quais blocos do disco
é uma tarefa típica do sistema operacional.
Um pouco de hardware
58
• Um sistema operacional está intimamente ligado ao hardware
do computador no qual ele é executado.
Um pouco de hardware
59
• Um sistema operacional está intimamente ligado ao hardware
do computador no qual ele é executado.
• Ele estende o conjunto de instruções do computador e gerencia
seus recursos.
Definições de hardware
60
• Um sistema operacional está intimamente ligado ao hardware
do computador no qual ele é executado.
• Ele estende o conjunto de instruções do computador e gerencia
seus recursos.
• Para funcionar ele deve ter um grande conhecimento do
hardware pelo menos do ponto de vista do programador
O que é um programa?
É um conjunto de instruções que descrevem uma tarefa a ser realizada por
um computador
Por exemplo: Receita de Bolo
1 - Coletar os ingredientes.
2 - Misturar em uma tigela.
3 – Untar uma forma.
4 – Despejar a mistura na forma.
5 – Colocar a forma em um forno.
6 – Retirar a forma após 15 minutos
63
Que Linguagem o Computador entende?
• Entende sinais elétricos
• Alfabeto da linguagem entendida por HW possui dois valores:
— 0 e 1 (números binários)
• Instruções são sequências de números binários para que o computador realize uma
determinada ação.
64
Abstraindo a Linguagem de Máquina
• Escrever um programa em linguagem de máquina é impraticável!
• Conceitos de HW foram abstraídos para que ser humano pudesse instruir
o computador
• Criação de linguagens de programação
65
Linguagens de Programação
• Os programas têm que ser escritos em uma linguagem de programação:
— que possa ser entendida pelo computador
— que possa ser traduzida para a linguagem entendida pelo computador
66
Um computador típico
• A CPU, memória e dispositivos de E/S estão todos conectados por um
sistema de barramento e comunicam-se uns com os outros sobre ele
67
• É o “cérebro” do
computador
• Controla a operação do
computador e realiza
suas funções de
processamento de
dados;
• Normalmente é chamado
apenas de processador
• Ela busca instruções da
memória e as executa.
CPU: Central Processing Unit
68
Um computador típico
CPU: Central Processing Unit
• Cada CPU tem um conjunto específico de instruções que ela consegue
executar.
• Desse modo, um processador x86 não pode executar programas ARM e um
processador ARM não consegue executar programas x86.
69
Conceitos básicos
• Programas são armazenados na memória
• Conteúdo da memória é acessado através de um endereço, não importando o tipo de
dado armazenado
• Execução ocorre de maneira sequencial (a não ser que seja explicitamente
especificado), uma instrução após a outra
70
Memória
Editor de texto
Navegador web
...
Leitor de pdf
0
200
500
1000
• O ciclo básico de toda CPU é buscar a primeira instrução da
memória, decodifica-la para determinar o seu tipo e
operandos, executá-la, e então buscar, decodificar e executar
as instruções subsequentes
CPU: Central Processing Unit
71
Um computador típico
Estrutura do processador
• Unidade de controle
• Unidade lógica e aritmética (ALU)
• Registradores
72
Introdução
Estrutura do processador
• Unidade de controle:
— controla a operação da CPU e, portanto, do computador.
73
Introdução
Estrutura do processador
• Unidade lógica e aritmética (ULA):
—realiza as funções de processamento de dados do computador.
—operações lógicas (ou, e, negação, etc.) e aritméticas (adições,
subtrações, etc...)
74
Introdução
Estrutura do processador
• Registradores: oferece armazenamento interno a CPU.
— Necessários para o processamento de uma dada instrução.
— Funcionam como uma memória de acesso extremamente rápido
— Baixa capacidade de armazenamento
75
Introdução
Estrutura do processador
• Registradores: oferece armazenamento interno a CPU.
— Baixa capacidade de armazenamento
— Alguns têm funções especiais
76
Introdução
Estrutura do processador
• Exemplo de Registradores:
—Registradores de propósito geral
—PC (program counter): contém o endereço de memória da próxima
instrução a ser executada. Após essa instrução ter sido buscada, o
contador de programa é atualizado para apontar para próxima instrução
— Registrador de instrução: onde é copiada cada instrução a ser executada
— etc ...
77
Introdução
Estrutura do processador
• O SO deve estar absolutamente ciente do que está gravado nos
registradores
• Toda vez que ele para um programa em execução, o sistema
operacional tem de salvar todos os registradores de maneira
que eles possam ser restaurados quando o programa for
executado mais tarde.
78
Pipeline
• Para melhorar o desempenho, os projetistas de CPU há
muito tempo abandonaram o modelo simples de
buscar, decodificar e executar uma instrução de cada
vez.
• Muitas CPUs modernas têm recursos para executar
mais de uma instrução ao mesmo tempo.
79
Conceito de Pipeline: Lavanderia
• Podemos dividir a tarefa de lavar roupa em 4 etapas:
— Lavar: 30 min
— Secar: 30 min
— Dobrar: 30 min
— Guardar : 30 min
80
Pipeline
Lavanderia: Execução Sequencial de Tarefas
• Para 4 lavagens de roupa:
— 8 horas
81
Pipeline
Lavanderia: Execução Pipeline de Tarefas
• Para 4 lavagens de roupa:
— 3,5 horas
• Diferentes lavagens podem ser executadas simultaneamente, desde que
não utilizem o mesmo recurso em um mesmo período de tempo
82
Pipeline
CPU: Central Processing Unit
• Pipeline
83
Pipeline
Unidade
de busca
Unidade de
decodificação
Unidade de
execução
Barramentos e Dispositivos de E/S
• “conduítes” elétricos que
carregam a informação entre
os vários componentes da
máquina
84
Barramentos e Dispositivos de E/S
• Dispositivos de E/S:
—Conexão da máquina com o mundo externo
—Conectados ao barramento de E/S por
o controladores (chips no próprio
dispositivo ou na placa mãe) ou
o adaptadores (quando placa separada)
• O SO controla os drivers, que controlam os controladores que controlam
os dispositivos de E/S.
85
Barramentos e Dispositivos de E/S
• Dispositivos de E/S:
—Conexão da máquina com o mundo externo
—Conectados ao barramento de E/S por
o controladores (chips no próprio
dispositivo ou na placa mãe) ou
o adaptadores (quando placa separada)
• O SO controla os drivers, que controlam os controladores que
controlam os dispositivos de E/S.
86
Memória
• Logicamente, a memória principal corresponde a uma enorme região no qual podemos gravar
informações.
• Cada posição é localizada através de um endereço único (o índice)
87
Memória
88
Introdução
Pinos de Conexão
Módulo de memória RAM
Chips de memória
Placa mãe
Hierarquia de Memória
• Idealmente, uma memória deveria ser bastante rápida além de muito
grande e barata.
89

Mais conteúdo relacionado

Semelhante a 1 - introducao.pdf

ASO 1- Aula2 (1ª Unidade)
ASO 1- Aula2 (1ª Unidade)ASO 1- Aula2 (1ª Unidade)
ASO 1- Aula2 (1ª Unidade)
Cleiton Cunha
 
Introducao a Sistemas Operacionais
Introducao a Sistemas OperacionaisIntroducao a Sistemas Operacionais
Introducao a Sistemas Operacionais
Isaac Vieira
 
A.S.O 1 aula3 (1º Unidade)
A.S.O 1 aula3 (1º Unidade)A.S.O 1 aula3 (1º Unidade)
A.S.O 1 aula3 (1º Unidade)
Cleiton Cunha
 
Introdução a Sistemas Operacionais
Introdução a Sistemas OperacionaisIntrodução a Sistemas Operacionais
Introdução a Sistemas Operacionais
Lucas Aires Araújo
 
A evolução histórica dos sistemas operativos
A evolução histórica dos sistemas operativosA evolução histórica dos sistemas operativos
A evolução histórica dos sistemas operativos
André Dias
 
Resumo de S.O.
Resumo de S.O.Resumo de S.O.
Resumo de S.O.
dannas_06
 

Semelhante a 1 - introducao.pdf (20)

sistemas operativos.ppt
sistemas operativos.pptsistemas operativos.ppt
sistemas operativos.ppt
 
sistemas_operacionais.ppt
sistemas_operacionais.pptsistemas_operacionais.ppt
sistemas_operacionais.ppt
 
[Cliqueapostilas.com.br] arquitetura-de-sistemas-operacionais
[Cliqueapostilas.com.br] arquitetura-de-sistemas-operacionais[Cliqueapostilas.com.br] arquitetura-de-sistemas-operacionais
[Cliqueapostilas.com.br] arquitetura-de-sistemas-operacionais
 
So-mod-1
So-mod-1So-mod-1
So-mod-1
 
Aula 01 - Introducao aos Sistemas Operacionais.pptx
Aula 01 - Introducao aos Sistemas Operacionais.pptxAula 01 - Introducao aos Sistemas Operacionais.pptx
Aula 01 - Introducao aos Sistemas Operacionais.pptx
 
ASO 1- Aula2 (1ª Unidade)
ASO 1- Aula2 (1ª Unidade)ASO 1- Aula2 (1ª Unidade)
ASO 1- Aula2 (1ª Unidade)
 
Silberschatz sistemas operacionais
Silberschatz   sistemas operacionaisSilberschatz   sistemas operacionais
Silberschatz sistemas operacionais
 
Introducao a Sistemas Operacionais
Introducao a Sistemas OperacionaisIntroducao a Sistemas Operacionais
Introducao a Sistemas Operacionais
 
A.S.O 1 aula3 (1º Unidade)
A.S.O 1 aula3 (1º Unidade)A.S.O 1 aula3 (1º Unidade)
A.S.O 1 aula3 (1º Unidade)
 
Introdução a Sistemas Operacionais
Introdução a Sistemas OperacionaisIntrodução a Sistemas Operacionais
Introdução a Sistemas Operacionais
 
M1_Sistemas Operativos.pptx
M1_Sistemas Operativos.pptxM1_Sistemas Operativos.pptx
M1_Sistemas Operativos.pptx
 
A evolução histórica dos sistemas operativos
A evolução histórica dos sistemas operativosA evolução histórica dos sistemas operativos
A evolução histórica dos sistemas operativos
 
Resumo de S.O.
Resumo de S.O.Resumo de S.O.
Resumo de S.O.
 
TA1 Slides Acessibilidade - Preto e Branco.pdf
TA1 Slides Acessibilidade - Preto e Branco.pdfTA1 Slides Acessibilidade - Preto e Branco.pdf
TA1 Slides Acessibilidade - Preto e Branco.pdf
 
Sistemas Operacionais.pptx
Sistemas Operacionais.pptxSistemas Operacionais.pptx
Sistemas Operacionais.pptx
 
Noções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisNoções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores Digitais
 
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
 
Aula 11,12,13,14...
Aula 11,12,13,14...Aula 11,12,13,14...
Aula 11,12,13,14...
 
Sistemas Operacionais - 2 - Tipos de Sistemas Computacionais
Sistemas Operacionais - 2 - Tipos de Sistemas ComputacionaisSistemas Operacionais - 2 - Tipos de Sistemas Computacionais
Sistemas Operacionais - 2 - Tipos de Sistemas Computacionais
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 

Mais de TAMARAFRANCIELLEBRIT

PROFESSORES_ALUNOS - SLIDES INTRODUÇÃO À CULTURA DIGITAL material pra estudo ...
PROFESSORES_ALUNOS - SLIDES INTRODUÇÃO À CULTURA DIGITAL material pra estudo ...PROFESSORES_ALUNOS - SLIDES INTRODUÇÃO À CULTURA DIGITAL material pra estudo ...
PROFESSORES_ALUNOS - SLIDES INTRODUÇÃO À CULTURA DIGITAL material pra estudo ...
TAMARAFRANCIELLEBRIT
 
Estudos Literários metalinguagem e outras linguagens analise textual (2).pdf
Estudos Literários metalinguagem e outras linguagens analise textual (2).pdfEstudos Literários metalinguagem e outras linguagens analise textual (2).pdf
Estudos Literários metalinguagem e outras linguagens analise textual (2).pdf
TAMARAFRANCIELLEBRIT
 

Mais de TAMARAFRANCIELLEBRIT (12)

culturadigital.pdf
culturadigital.pdfculturadigital.pdf
culturadigital.pdf
 
grupo_estudos_cultura_digital (1).pdf
grupo_estudos_cultura_digital (1).pdfgrupo_estudos_cultura_digital (1).pdf
grupo_estudos_cultura_digital (1).pdf
 
grupo_estudos_cultura_digital.pdf
grupo_estudos_cultura_digital.pdfgrupo_estudos_cultura_digital.pdf
grupo_estudos_cultura_digital.pdf
 
cultura-digital-br.pdf
cultura-digital-br.pdfcultura-digital-br.pdf
cultura-digital-br.pdf
 
CULTURA-DIGITAL_30-aulas-semanais.docx.pdf
CULTURA-DIGITAL_30-aulas-semanais.docx.pdfCULTURA-DIGITAL_30-aulas-semanais.docx.pdf
CULTURA-DIGITAL_30-aulas-semanais.docx.pdf
 
PROFESSORES_ALUNOS - SLIDES INTRODUÇÃO À CULTURA DIGITAL material pra estudo ...
PROFESSORES_ALUNOS - SLIDES INTRODUÇÃO À CULTURA DIGITAL material pra estudo ...PROFESSORES_ALUNOS - SLIDES INTRODUÇÃO À CULTURA DIGITAL material pra estudo ...
PROFESSORES_ALUNOS - SLIDES INTRODUÇÃO À CULTURA DIGITAL material pra estudo ...
 
CULTURA-DIGITAL_30-aulas-semanais.docx.pdf
CULTURA-DIGITAL_30-aulas-semanais.docx.pdfCULTURA-DIGITAL_30-aulas-semanais.docx.pdf
CULTURA-DIGITAL_30-aulas-semanais.docx.pdf
 
Sistemas_Operacionais_web.pdf
Sistemas_Operacionais_web.pdfSistemas_Operacionais_web.pdf
Sistemas_Operacionais_web.pdf
 
REVISAO GERAL DE SO- ofiicial para o simulado.pptx
REVISAO GERAL DE SO- ofiicial para o simulado.pptxREVISAO GERAL DE SO- ofiicial para o simulado.pptx
REVISAO GERAL DE SO- ofiicial para o simulado.pptx
 
161012_empreend.pdf
161012_empreend.pdf161012_empreend.pdf
161012_empreend.pdf
 
Estudos Literários metalinguagem e outras linguagens analise textual (2).pdf
Estudos Literários metalinguagem e outras linguagens analise textual (2).pdfEstudos Literários metalinguagem e outras linguagens analise textual (2).pdf
Estudos Literários metalinguagem e outras linguagens analise textual (2).pdf
 
Texto sobre a metalinguagem na poesia-Tâmara Francielle Brito de Souza.pdf
Texto sobre a metalinguagem na poesia-Tâmara Francielle Brito de Souza.pdfTexto sobre a metalinguagem na poesia-Tâmara Francielle Brito de Souza.pdf
Texto sobre a metalinguagem na poesia-Tâmara Francielle Brito de Souza.pdf
 

Último

ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
Filosofia - 1º ano - Ensino Médio do ensino médio para primeiro bimestre
Filosofia - 1º ano - Ensino Médio do ensino médio para primeiro bimestreFilosofia - 1º ano - Ensino Médio do ensino médio para primeiro bimestre
Filosofia - 1º ano - Ensino Médio do ensino médio para primeiro bimestre
LeandroLima265595
 
atividade-de-portugues-pontuação-4º-ou-5º-ano-respostas.pdf
atividade-de-portugues-pontuação-4º-ou-5º-ano-respostas.pdfatividade-de-portugues-pontuação-4º-ou-5º-ano-respostas.pdf
atividade-de-portugues-pontuação-4º-ou-5º-ano-respostas.pdf
Autonoma
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
Autonoma
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 

Último (20)

O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)
 
Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024
 
Slides Lição 06, Central Gospel, O Anticristo, 1Tr24.pptx
Slides Lição 06, Central Gospel, O Anticristo, 1Tr24.pptxSlides Lição 06, Central Gospel, O Anticristo, 1Tr24.pptx
Slides Lição 06, Central Gospel, O Anticristo, 1Tr24.pptx
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptx
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptxSlides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptx
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptx
 
Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)
 
Maio Laranja - Combate à violência sexual contra crianças e adolescentes
Maio Laranja - Combate à violência sexual contra crianças e adolescentesMaio Laranja - Combate à violência sexual contra crianças e adolescentes
Maio Laranja - Combate à violência sexual contra crianças e adolescentes
 
M0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptxM0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptx
 
Filosofia - 1º ano - Ensino Médio do ensino médio para primeiro bimestre
Filosofia - 1º ano - Ensino Médio do ensino médio para primeiro bimestreFilosofia - 1º ano - Ensino Médio do ensino médio para primeiro bimestre
Filosofia - 1º ano - Ensino Médio do ensino médio para primeiro bimestre
 
atividade-de-portugues-pontuação-4º-ou-5º-ano-respostas.pdf
atividade-de-portugues-pontuação-4º-ou-5º-ano-respostas.pdfatividade-de-portugues-pontuação-4º-ou-5º-ano-respostas.pdf
atividade-de-portugues-pontuação-4º-ou-5º-ano-respostas.pdf
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
 
13_mch9_hormonal.pptx............................
13_mch9_hormonal.pptx............................13_mch9_hormonal.pptx............................
13_mch9_hormonal.pptx............................
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
UFCD_10659_Ficheiros de recursos educativos_índice .pdf
UFCD_10659_Ficheiros de recursos educativos_índice .pdfUFCD_10659_Ficheiros de recursos educativos_índice .pdf
UFCD_10659_Ficheiros de recursos educativos_índice .pdf
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
ESPANHOL PARA O ENEM (2).pdf questões da prova
ESPANHOL PARA O ENEM (2).pdf questões da provaESPANHOL PARA O ENEM (2).pdf questões da prova
ESPANHOL PARA O ENEM (2).pdf questões da prova
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
Quiz | Dia da Europa 2024 (comemoração)
Quiz | Dia da Europa 2024  (comemoração)Quiz | Dia da Europa 2024  (comemoração)
Quiz | Dia da Europa 2024 (comemoração)
 

1 - introducao.pdf

  • 2. Quem sou eu? • Estudante de Doutorado em Engenharia da Computação no Centro de Informática – UFPE • Áreas de Interesse: Aprendizagem de Máquina, Processamento de Imagem e Visão Computacional, Computação de Alta Desempenho • Tenho disponibilidade para orientação de trabalhos de pesquisas • Email: lucascambuim@gmail.com || lfsc@cin.ufpe.br 2
  • 3. Sobre vocês • Nome: • O que busca? — Pesquisar? — Desenvolver? — Concurso Público? 3
  • 4. Objetivos da Disciplina • Compreensão da importância dos sistemas operacionais para o controle e aproveitamento dos recursos do computador; 4
  • 5. Objetivos da Disciplina • Compreensão da importância dos sistemas operacionais para o controle e aproveitamento dos recursos do computador; • Compreensão da necessidade de estruturação adequada dos sistemas operacionais; 5
  • 6. Objetivos da Disciplina • Compreensão da importância dos sistemas operacionais para o controle e aproveitamento dos recursos do computador; • Compreensão da necessidade de estruturação adequada dos sistemas operacionais; • Conhecimento dos principais componentes de um sistema operacional e dos mecanismos e técnicas usadas para desenvolvê-los; 6
  • 7. Objetivos da Disciplina • Compreensão da importância dos sistemas operacionais para o controle e aproveitamento dos recursos do computador; • Compreensão da necessidade de estruturação adequada dos sistemas operacionais; • Conhecimento dos principais componentes de um sistema operacional e dos mecanismos e técnicas usadas para desenvolvê-los; • Conhecimento de programação concorrente e de mecanismos de exclusão mútua e de sincronização; 7
  • 8. Metodologia • Aulas expositivas • Exercícios • Projetos 8
  • 9. Material de Apoio • Endereço eletrônico (provisório) da disciplina — http://www.cin.ufpe.br/~lfsc/cursos/sistemasoperacionais — Slides da disciplina serão disponibilizados neste endereço • Livros de apoio: — A.S. Tanenbaum, Sistemas Operacionais Modernos, 4ª . Edição, Editora Prentice-Hall, 2016 — A.S. Tanenbaum, Sistemas Operacionais Modernos, 3ª . Edição, Editora Prentice-Hall, 2010 — Silberschatz, P. Baer Galvin, e G. Gagne, Fundamentos de Sistemas Operacionais, 8ª ou 6ª. Edição, Editora LTC, 2010, OU 6ª Edição, Editora LTC, 2004. — W. Stallings, Operating Systems: internals and design principles, 8th Edition, Editora Prentice-Hall, 2014 OU 6th Edition 9
  • 10. Ementa da disciplina • Introdução — O que é um sistema operacional? — Evolução histórica — Revisão sobre hardware de computadores — Serviços dos sistemas operacionais — Conceitos de sistemas operacionais — Chamadas de sistema — Estrutura de sistemas operacionais — Estudo de casos • Gerenciamento de processos — Processos — Threads — Escalonamento de CPU — Algoritmos de Escalonamento 10
  • 11. Ementa da disciplina • Sincronização e comunicação entre processos — Conceitos básicos, condições de corrida, regiões críticas, abordagens de exclusão mútua — As primitivas Sleep e Wake-up — Semáforos: conceitos e exemplos de uso — Monitores: conceitos e exemplos de uso — Problemas clássicos de sincronização — Comunicação entre processos (IPC): memória compartilhada, troca de mensagens. — Deadlocks 11
  • 12. Ementa da disciplina • Gerenciamento de memória — Conceitos básicos: endereço lógico e físico, espaço de endereçamento, relocação de endereços — Políticas básicas — Gerência de memória em sistemas monoprogramados — Gerência de memória real: partições fixas e partições variáveis — Swapping — Memória virtual o Paginação o Segmentação o Segmentação com paginação — Estudo de casos 12
  • 13. Ementa da disciplina • Gerenciamento de entrada e saída (E/S) — Visão geral — Princípios do hardware de E/S — Princípios do software de E/S — Camadas do software de E/S — Tratamento de pedidos de E/S — Métodos de transferência de dados: espera ocupada, interrupção e acesso direto à memória — Discos — Relógios — Interfaces com o usuário: teclado, mouse — Drivers dos dispositivos — Estudo de casos 13
  • 14. Avaliação • Listas de exercícios (L1) • Projetos (P2) • Prova 1 (T1) • Prova 2 (T2) • Nota da primeira unidade: N1 = (0.6 * T1 + 0.4 * L1) • Nota da segunda unidade: N2 = (0.5 * T2 + 0.5 * P2) • A média final é M = (N1 + N2)/2 14
  • 15. Computador Moderno • Componentes físicos (hardware) — Um ou mais processadores — Memória — Discos — Impressoras — Vários outros dispositivos de E/S (tela, mouse…) 16
  • 16. Computador Moderno • Componentes físicos (hardware) — Um ou mais processadores — Memória — Discos — Impressoras — Vários outros dispositivos de E/S (tela, mouse…) 17 Um programa (software) geralmente utiliza: ...processaor, ...a memória, ...manipula arquivo, ...aparece na tela, ...recebe comandos, via teclado
  • 17. Computador Moderno • Componentes físicos (hardware) — Um ou mais processadores — Memória — Discos — Impressoras — Vários outros dispositivos de E/S (tela, mouse…) 18 Gerenciar todos estes componentes requer abstração – um modelo mais simples do computador – o sistema operacional SO
  • 18. Programas de sistemas e aplicativos Sistema computacional em Camadas • Um sistema de computação é dividido em basicamente quatro componentes: o hardware, o sistema operacional, os programas aplicativos e os usuários. 19 Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... Sistema operacional
  • 19. O Hardware • Um ou mais processadores, memória, discos, impressoras, vários outros dispositivos de E/S • Fornece os recursos básicos de computação. 20 Sistema computacional em Camadas Programas de sistemas e aplicativos Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ...
  • 20. Os programas aplicativos • Definem as maneiras em que esses recursos são usados para resolver os problemas de computação dos usuários 21 Sistema computacional em Camadas Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell Programas de sistemas e aplicativos
  • 21. Os programas aplicativos • Definem as maneiras em que esses recursos são usados para resolver os problemas de computação dos usuários 22 Sistema computacional em Camadas Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell Programas de sistemas e aplicativos compilador Editor de texto Sistema de banco de dados Shell GUI ...
  • 22. Os programas aplicativos • Pode haver muitos usuários diferentes tentando resolver problemas diferentes 24 Sistema computacional em Camadas Programas de sistemas e aplicativos Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell GUI
  • 23. Os programas aplicativos — Pode haver muitos programas aplicativos diferentes 25 Sistema computacional em Camadas Programas de sistemas e aplicativos Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell GUI
  • 24. Sistema computacional em Camadas • O SO controla e coordena o uso do hardware entre os vários programas aplicativos para os vários usuários. 26 Sistema computacional em Camadas Programas de sistemas e aplicativos Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell Sistema operacional GUI
  • 25. Modo usuário e Modo Kernel • A maioria dos computadores tem dois modos de operação: modo núcleo e modo usuário. 27 Programas de sistemas e aplicativos Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell Modo Usuário Modo Núcleo GUI
  • 26. Modo Kernel • O SO tem acesso completo a todo o hardware e pode executar qualquer instrução que a máquina for capaz de executar. 28 Modo usuário e Modo Kernel Programas de sistemas e aplicativos Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell Modo Núcleo GUI
  • 27. Modo Kernel • Proporciona a base para todos os outros softwares 29 Modo usuário e Modo Kernel Programas de sistemas e aplicativos Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell Modo Núcleo GUI
  • 28. Modo Usuário • O resto do software opera em modo usuário, no qual apenas um subconjunto das instruções da máquina está disponível. 30 Modo usuário e Modo Kernel Programas de sistemas e aplicativos Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell Modo Usuário GUI
  • 29. Modo Usuário • Em particular, aquelas instruções que afetam o controle da máquina ou realizam E/S (Entrada/Saída) são proibidas para programas de modo usuário. 31 Modo usuário e Modo Kernel Programas de sistemas e aplicativos Sistema operacional Usuário1 Usuário2 Usuário 3 Hardware do computador Usuário n ... compilador Editor de texto Sistema de banco de dados Shell Modo Usuário GUI
  • 30. SO: Interface de Usuário • Ele é a camada mais inferior de software de modo usuário. • Permite que ele inicie outros programas, como um navegador web, leitor de e-mail, ou reprodutor de música. 33 Shell GUI
  • 31. Qual é a função do SO? Máquina estendida • Sistemas operacionais transformam o hardware pouco atraente em abstrações mais interessantes • Esconde detalhes do hardware 35
  • 32. Exemplo da importância da Máquina estendida Gravar um dado em um disco a partir de um controlador simples • Controlador tem 16 comandos — Leitura e escrita de dados — Movimentação do braço do disco — Formatação de trilhas — Além disso, Inicialização, sinalização, reinicialização e recalibração do controlador. • Para o comando de leitura e escrita, cada um deles requer 13 parâmetros agrupados em 9 bytes. — Endereço do bloco de dados a ser lido — o número de setores por trilha — o modo de gravação usado no meio físico — o espaço livre entre setores, — etc … 36 Qual é a função do SO?
  • 33. Exemplo da importância da Máquina estendida Para deixar ainda mais claro: • Um livro de 2007 que descreve a interface dos discos rígidos modernos que um programador deveria saber: — Tinha mais de 450 páginas — Essa interface foi revista múltiplas vezes e é mais complicada do que em 2007. 37 Qual é a função do SO?
  • 34. Máquina estendida • Uma maneira mais simples para o programador seria aquela compreendida por um disco que contém uma coleção de arquivos com nomes. • Cada arquivo pode ser aberto para leitura e escrita e depois fechado 38 Qual é a função do SO?
  • 35. Gerenciador de recursos • O SO atua como gerente de recursos de hardware • Computadores modernos consistem de processadores, memórias, temporizadores, discos, dispositivos apontadores do tipo mouse, interfaces de rede, impressoras e uma ampla gama de outros dispositivos. ‘ 40 Qual é a função do SO? SO
  • 36. Gerenciador de recursos • O trabalho do SO é fornecer uma alocação ordenada e controlada de processadores, memórias, e dispositivos de E/S entre vários programas que compete por eles. 41 Qual é a função do SO? SO
  • 37. Gerenciador de recursos • Se houver muitos pedidos de recursos possivelmente conflitantes — o SO deve decidir em que pedidos serão alocados recursos. 43 Qual é a função do SO?
  • 38. Gerenciador de recursos (Exemplo) • Sistemas operacionais modernos permitem que múltiplos programas estejam na memória e sejam executados ao mesmo tempo. 45 Qual é a função do SO? Memória Editor de texto Navegador web ... Leitor de pdf
  • 39. Gerenciador de recursos (Exemplo) • Imagine vários programas querendo imprimir • As primeiras linhas de impressão poderiam ser do programa 1, as seguintes do programa 2, então algumas do programa 3 e assim por diante 46 Qual é a função do SO? Memória Editor de texto Navegador web ... Leitor de pdf
  • 40. Gerenciador de recursos (Exemplo) • O sistema operacional pode trazer ordem armazenando temporariamente toda a saída destinada para a impressora no disco. 47 Qual é a função do SO? Memória Editor de texto Navegador web ... Leitor de pdf
  • 41. Gerenciador de recursos (Exemplo) • O sistema operacional pode trazer ordem armazenando temporariamente toda a saída destinada para a impressora no disco. 48 Qual é a função do SO? Fila de impressão
  • 42. Gerenciador de recursos • No caso de um computador com múltiplos usuários: — o SO precisa evitar que usuários possam interferir uns nos outros. — prover proteção da memória, dispositivos de E/S e outros recursos 49 Qual é a função do SO?
  • 43. Gerenciador de recursos • Duas maneiras de compartilhar recursos: no tempo e no espaço — No tempo: diferentes programas ou usuários se revezam usando-o 50 Qual é a função do SO?
  • 44. Exemplo de com compartilhamento no tempo 51 Gerenciador de recursos
  • 45. Exemplo de com compartilhamento no tempo • Determinar como o recurso é multiplexado no tempo — quem vai em seguida e por quanto tempo é a tarefa do sistema operacional. 52 Gerenciador de recursos Tempo
  • 46. Outro exemplo de com compartilhamento no tempo • Quando múltiplas saídas de impressão estão na fila para serem impressas em uma única impressora, uma decisão tem de ser tomada sobre qual deve ser impressa em seguida 53 Qual é a função do SO? Memória Editor de texto Navegador web ... Leitor de pdf 1º 2º 3º
  • 47. Gerenciamento dos programas em execução 54
  • 48. Gerenciador de recursos • Duas maneiras de compartilhar recursos: no tempo e no espaço — No Espaço: Cada programa ocupa uma parte do recurso 55 Qual é a função do SO?
  • 49. Exemplo de compartilhamento no espaço 56 Qual é a função do SO? Memória Editor de texto Navegador web ... Leitor de pdf • Alocação da memória entre os diferentes programas • O sistema operacional deve gerenciar a memória disponível no computador • Prevendo mecanismo de proteção da memória entre diferentes programas
  • 50. Outro exemplo de compartilhamento no espaço 57 Qual é a função do SO? • Em muitos sistemas um único disco pode conter arquivos de muitos usuários ao mesmo tempo. • Alocar espaço de disco e controlar quem está usando quais blocos do disco é uma tarefa típica do sistema operacional.
  • 51. Um pouco de hardware 58 • Um sistema operacional está intimamente ligado ao hardware do computador no qual ele é executado.
  • 52. Um pouco de hardware 59 • Um sistema operacional está intimamente ligado ao hardware do computador no qual ele é executado. • Ele estende o conjunto de instruções do computador e gerencia seus recursos.
  • 53. Definições de hardware 60 • Um sistema operacional está intimamente ligado ao hardware do computador no qual ele é executado. • Ele estende o conjunto de instruções do computador e gerencia seus recursos. • Para funcionar ele deve ter um grande conhecimento do hardware pelo menos do ponto de vista do programador
  • 54. O que é um programa? É um conjunto de instruções que descrevem uma tarefa a ser realizada por um computador Por exemplo: Receita de Bolo 1 - Coletar os ingredientes. 2 - Misturar em uma tigela. 3 – Untar uma forma. 4 – Despejar a mistura na forma. 5 – Colocar a forma em um forno. 6 – Retirar a forma após 15 minutos 63
  • 55. Que Linguagem o Computador entende? • Entende sinais elétricos • Alfabeto da linguagem entendida por HW possui dois valores: — 0 e 1 (números binários) • Instruções são sequências de números binários para que o computador realize uma determinada ação. 64
  • 56. Abstraindo a Linguagem de Máquina • Escrever um programa em linguagem de máquina é impraticável! • Conceitos de HW foram abstraídos para que ser humano pudesse instruir o computador • Criação de linguagens de programação 65
  • 57. Linguagens de Programação • Os programas têm que ser escritos em uma linguagem de programação: — que possa ser entendida pelo computador — que possa ser traduzida para a linguagem entendida pelo computador 66
  • 58. Um computador típico • A CPU, memória e dispositivos de E/S estão todos conectados por um sistema de barramento e comunicam-se uns com os outros sobre ele 67
  • 59. • É o “cérebro” do computador • Controla a operação do computador e realiza suas funções de processamento de dados; • Normalmente é chamado apenas de processador • Ela busca instruções da memória e as executa. CPU: Central Processing Unit 68 Um computador típico
  • 60. CPU: Central Processing Unit • Cada CPU tem um conjunto específico de instruções que ela consegue executar. • Desse modo, um processador x86 não pode executar programas ARM e um processador ARM não consegue executar programas x86. 69
  • 61. Conceitos básicos • Programas são armazenados na memória • Conteúdo da memória é acessado através de um endereço, não importando o tipo de dado armazenado • Execução ocorre de maneira sequencial (a não ser que seja explicitamente especificado), uma instrução após a outra 70 Memória Editor de texto Navegador web ... Leitor de pdf 0 200 500 1000
  • 62. • O ciclo básico de toda CPU é buscar a primeira instrução da memória, decodifica-la para determinar o seu tipo e operandos, executá-la, e então buscar, decodificar e executar as instruções subsequentes CPU: Central Processing Unit 71 Um computador típico
  • 63. Estrutura do processador • Unidade de controle • Unidade lógica e aritmética (ALU) • Registradores 72 Introdução
  • 64. Estrutura do processador • Unidade de controle: — controla a operação da CPU e, portanto, do computador. 73 Introdução
  • 65. Estrutura do processador • Unidade lógica e aritmética (ULA): —realiza as funções de processamento de dados do computador. —operações lógicas (ou, e, negação, etc.) e aritméticas (adições, subtrações, etc...) 74 Introdução
  • 66. Estrutura do processador • Registradores: oferece armazenamento interno a CPU. — Necessários para o processamento de uma dada instrução. — Funcionam como uma memória de acesso extremamente rápido — Baixa capacidade de armazenamento 75 Introdução
  • 67. Estrutura do processador • Registradores: oferece armazenamento interno a CPU. — Baixa capacidade de armazenamento — Alguns têm funções especiais 76 Introdução
  • 68. Estrutura do processador • Exemplo de Registradores: —Registradores de propósito geral —PC (program counter): contém o endereço de memória da próxima instrução a ser executada. Após essa instrução ter sido buscada, o contador de programa é atualizado para apontar para próxima instrução — Registrador de instrução: onde é copiada cada instrução a ser executada — etc ... 77 Introdução
  • 69. Estrutura do processador • O SO deve estar absolutamente ciente do que está gravado nos registradores • Toda vez que ele para um programa em execução, o sistema operacional tem de salvar todos os registradores de maneira que eles possam ser restaurados quando o programa for executado mais tarde. 78
  • 70. Pipeline • Para melhorar o desempenho, os projetistas de CPU há muito tempo abandonaram o modelo simples de buscar, decodificar e executar uma instrução de cada vez. • Muitas CPUs modernas têm recursos para executar mais de uma instrução ao mesmo tempo. 79
  • 71. Conceito de Pipeline: Lavanderia • Podemos dividir a tarefa de lavar roupa em 4 etapas: — Lavar: 30 min — Secar: 30 min — Dobrar: 30 min — Guardar : 30 min 80 Pipeline
  • 72. Lavanderia: Execução Sequencial de Tarefas • Para 4 lavagens de roupa: — 8 horas 81 Pipeline
  • 73. Lavanderia: Execução Pipeline de Tarefas • Para 4 lavagens de roupa: — 3,5 horas • Diferentes lavagens podem ser executadas simultaneamente, desde que não utilizem o mesmo recurso em um mesmo período de tempo 82 Pipeline
  • 74. CPU: Central Processing Unit • Pipeline 83 Pipeline Unidade de busca Unidade de decodificação Unidade de execução
  • 75. Barramentos e Dispositivos de E/S • “conduítes” elétricos que carregam a informação entre os vários componentes da máquina 84
  • 76. Barramentos e Dispositivos de E/S • Dispositivos de E/S: —Conexão da máquina com o mundo externo —Conectados ao barramento de E/S por o controladores (chips no próprio dispositivo ou na placa mãe) ou o adaptadores (quando placa separada) • O SO controla os drivers, que controlam os controladores que controlam os dispositivos de E/S. 85
  • 77. Barramentos e Dispositivos de E/S • Dispositivos de E/S: —Conexão da máquina com o mundo externo —Conectados ao barramento de E/S por o controladores (chips no próprio dispositivo ou na placa mãe) ou o adaptadores (quando placa separada) • O SO controla os drivers, que controlam os controladores que controlam os dispositivos de E/S. 86
  • 78. Memória • Logicamente, a memória principal corresponde a uma enorme região no qual podemos gravar informações. • Cada posição é localizada através de um endereço único (o índice) 87
  • 79. Memória 88 Introdução Pinos de Conexão Módulo de memória RAM Chips de memória Placa mãe
  • 80. Hierarquia de Memória • Idealmente, uma memória deveria ser bastante rápida além de muito grande e barata. 89