Sistemas Operacionais

Conceitos de Hardware e Software

TADS - SO – Aula 3
Prof. Charles Fortes
chalkmaster@gmail.com
Sobre seu Professor

2
Charles Fortes

Web
Desktop
Mobile
Desenvolvimento
Practices
Patterns
Modeling

Arquitetura

Git
TFS
SV
N

Versionamento

MSSQ
L
MySQ
L
NoSQL

Bancos de
Dados

MATC – Microsoft Technical Audience Contributo
Embaixador Windows
Antes de mais nada

4
Algum Aluno Começando Hoje?
Acolhida
Entrada tardia e Recuperação Paralela

5
Atualizando a Turma

6
Time

TADS-SO

0

X3

|

x 30

48015

Visão geral de SO

Course Clear!
|

x 15

47 – 9 – 6 + 0 + 15 = 47
47 * 3 * 165 = 23265

7
Estamos em dia com nosso PEA

8
Mundo 1 – Hardware e software

Hardware e software

Reposição 1

Visão Geral de SO

Conceitos Básicos de SO
9
Previously on TADS-SO...

10
Conceitos básicos de SO

O que é um sistema operacional?
É um programa ou conjunto de programas cuja função é gerenciar os recursos do
hardware

Funções básicas
Facilidade de acesso aos recursos do sistema + Compartilhar os recursos de forma
organizada e protegida

11
Conceitos básicos de SO

Hardware e Software são logicamente equivalentes

Sistemas monoprogramáveis executam apenas uma tarefa por vez

Sistemas multiprogramáveis executam várias tarefas “ao mesmo tempo”

Sistemas multiprocessadores possuem vários processadores, além disto podem ser
fortemente ou fracamente acoplados.

12
Hardware e Software

13
Hardware

14
São os componentes físicos que compõe os sistemas
computacionais.

Agrupados nas unidades funcionais: Processador, Memória
Principal e Dispositivos de Entrada e Saída.

15
A principal função é controlar e executar instruções
presentes na memória principal através de operações
básicas como somar, subtrair, comparar e movimentar
dados.

Composto por Unidade de Controle, Unidade Lógica e
Aritmética, e registradores.

Processador

16
UC - Unidade de Controle
Responsável por gerenciar as atividades de todos os componentes, como
gravar dados no HD ou buscar uma instrução na memória.

ULA – Unidade lógica e aritmética
Responsável pela lógica (testes e comparações) e aritméticas (somas e
subtrações).

17
Registradores

Principal função é armazenar os dados temporariamente. Eles podem ser de uso
geral (podem ser manipulados diretamente) ou de uso específico (informações
de controle do processador ou do SO).

18
Registradores
CI – Contador de Instruções

Endereço da próxima instrução a ser executada

AP - Apontador de pilha

Endereço de memória do topo da pilha de execução

PSW – Registrador de Status (program status word)

Informações sobre a execução da instrução. Altera de acordo com seu resulta

19
Armazena instruções e dados em células, geralmente de 8
bits.
As células podem ser acessadas por um endereço único
A especificação do endereço é feita através do registrador
MAR – Memory Address Registrer. Já o MBR (Memory Buffer
Registrer) guarda o conteúdo de uma ou mais célula.

Memória
Principal

20
Memória
1

2

3

4

Endereço da memória

5

6

7

8

9

10

Programa XYZ

Programa XYZ
3

4

5

6

7

8

Variável B

Variável A
Sub-Rotina
(Soma)

Sub-Rotina
(Enviar E-mail)
21
22
A memória principal pode ser volátil ou não volátil
A RAM (Random Access Memory) é volátil, já a ROM (ReadOnly Memory) e a
EPROM (Erasable Programmable ROM) são do tipo não volátil.
23
Memória Cache

É uma memória volátil de alta velocidade com pequena capacidade de
armazenamento. Usada para tentar minimizar a diferença do tempo de
processamento com o de acesso a memória principal.

Armazena uma pequena parte dos dados da memória principal. Antes do
processador ir na memória principal, ele verifica no cache.

24
Principio da localidade
É a tendência do processador de referenciar instruções e dados localizados em
endereços próximos.

A maioria dos processadores apresenta uma estrutura com cache em níveis.
Cache L1, L2, L3...

25
Memória secundária

É o armazenamento de dados “permanente” e não volátil.

HD, DVD, PenDrive...

HD

26
Dispositivos de Entrada e Saída

Comunicação entre o SO e o mundo externo. Podem ser
memórias secundárias ou de Interface Homem Máquina.

IHM

27
Barramento ou bus
Os barramentos fornecem a comunicação entre os diferentes componentes.
Podendo ser Barramento processador-memória, Barramento de E/S e Barramento
backplane.
Possuem linhas de controle e linhas de dados.

Pipelining
Técnica que permite ao processador executar instruções paralelamente porém em
estágios diferentes. Como numa linha de montagem.

28
Arquitetura RISC vs CISC
A linguagem de máquina é o que o processador realmente entende e está
diretamente ligado a sua arquitetura, que comumente vão ser RISC ou CISC.
RISC – Reduced Instrucion Set Computer
Poucas instruções, em geral não chegam a acessar a memória principal,
usando geralmente muitos registradores.
CISC – Complex Instruction Set Computers
Instruções complexas interpretadas por microprogramas. Poucos
registradores e dificultam a implementação do pipelinig.

29
30
Software

31
Tradutor
Após a programação, as instruções devem ser traduzidas para linguagem de
máquina. Quando o tradutor traduz, ele gera o módulo-objeto
Montadores e Compiladores
Montadores (assembler) geram módulos-objetos não executáveis específicos
para cada processador.
Compiladores (alto nível) geram programas não executáveis em linguagem
de máquina a partir da linguagem de auto nível.

32
Interpretador
Não geram módulo-objeto. Executam instruções escritas em alto nível
imediatamente.

A maior desvantagem é o tempo gasto para a
tradução, porém são muito flexíveis.

33
Linker
Gera a partir de vários módulos-objeto um único programa executável.

Resolve as referencias externas e realoca a região de memória para carga
do programa.

Alguns compiladores conseguem resolver estas referencias e isto faz com
que o linker não seja usado, passando pelo processo de link dinâmico.
Porém neste caso o overhead é muito grande.

34
Loader
Responsável por carregar na memória principal um programa para ser executado.

Absoluto ou Realocável

Absoluto quando é necessário apenas conhecer o endereço inicial e o
tamanho do módulo.
Realocável quando o programa pode ser carregado em qualquer posição da
memória.

35
Depurador
Encontrar os BUG’s do sistema. Permite acompanhar toda a execução de um
programa.

Recursos
•

Acompanhar a execução de instrução por instrução

•

Visualizar o conteúdo de uma variável

•

Implementar pontos de parada do sistema (breakpoints)

•

Especificar que quando uma variável for modificada receba uma
mensagem (watchpoint)

36
Próxima Aula

37
1º Teste de Conhecimento
Aula 1 – Conceitos Básicos de SO
Aula 2 – Visão Geral de SO
Aula 3 – Hardware e Software
Obrigatório apenas para alunos que entraram na semana do dia 17, para os
que entraram depois é opcional

38
Avaliações, trabalhos e afins

Testes e Avaliações

Objetivo: Avaliar o que o aluno absorveu do
conteúdo ministrado, identificar
necessidades de reforço do conteúdo e até
mesmo necessidades de alteração na forma
de abordagem e material.

39
Avaliações, trabalhos e afins

Passar é fácil!
Pode escolher uma questão para não responder
O “total” é baseado naquele que tirou a maior nota
na prova

Pode trazer uma folha escrita a mão (individual)
para consulta
Imagine uma prova de 10 questões que vale 10 pontos.
Se o aluno que acertou mais questões acertar 8 das 10 questões, ele
ganha 10, e os demais ganham a nota na proporção de 8 e não de 10.
Então se você acertou 4 questões, vai tirar 5.
40
Avaliações, trabalhos e afins

Avaliações – Desafios do Professor
Saber o que os alunos aprenderam certo
Saber o que entenderam errado
Saber o que eles não entenderam nada

41
Avaliações, trabalhos e afins

Avaliações – O que atrapalha

Ruídos nos dados

42
Avaliações, trabalhos e afins

Então...

A cada duas questões erradas eu elimino uma questão certa

Se preocupe em aprender
Não estou aqui pra reprovar ninguém

43
Dúvidas?

chalkmaster@gmail.com

Sistemas Operacionais - Aula 3 - Hardware e Software

  • 1.
    Sistemas Operacionais Conceitos deHardware e Software TADS - SO – Aula 3 Prof. Charles Fortes chalkmaster@gmail.com
  • 2.
  • 3.
  • 4.
  • 5.
    Algum Aluno ComeçandoHoje? Acolhida Entrada tardia e Recuperação Paralela 5
  • 6.
  • 7.
    Time TADS-SO 0 X3 | x 30 48015 Visão geralde SO Course Clear! | x 15 47 – 9 – 6 + 0 + 15 = 47 47 * 3 * 165 = 23265 7
  • 8.
    Estamos em diacom nosso PEA 8
  • 9.
    Mundo 1 –Hardware e software Hardware e software Reposição 1 Visão Geral de SO Conceitos Básicos de SO 9
  • 10.
  • 11.
    Conceitos básicos deSO O que é um sistema operacional? É um programa ou conjunto de programas cuja função é gerenciar os recursos do hardware Funções básicas Facilidade de acesso aos recursos do sistema + Compartilhar os recursos de forma organizada e protegida 11
  • 12.
    Conceitos básicos deSO Hardware e Software são logicamente equivalentes Sistemas monoprogramáveis executam apenas uma tarefa por vez Sistemas multiprogramáveis executam várias tarefas “ao mesmo tempo” Sistemas multiprocessadores possuem vários processadores, além disto podem ser fortemente ou fracamente acoplados. 12
  • 13.
  • 14.
  • 15.
    São os componentesfísicos que compõe os sistemas computacionais. Agrupados nas unidades funcionais: Processador, Memória Principal e Dispositivos de Entrada e Saída. 15
  • 16.
    A principal funçãoé controlar e executar instruções presentes na memória principal através de operações básicas como somar, subtrair, comparar e movimentar dados. Composto por Unidade de Controle, Unidade Lógica e Aritmética, e registradores. Processador 16
  • 17.
    UC - Unidadede Controle Responsável por gerenciar as atividades de todos os componentes, como gravar dados no HD ou buscar uma instrução na memória. ULA – Unidade lógica e aritmética Responsável pela lógica (testes e comparações) e aritméticas (somas e subtrações). 17
  • 18.
    Registradores Principal função éarmazenar os dados temporariamente. Eles podem ser de uso geral (podem ser manipulados diretamente) ou de uso específico (informações de controle do processador ou do SO). 18
  • 19.
    Registradores CI – Contadorde Instruções Endereço da próxima instrução a ser executada AP - Apontador de pilha Endereço de memória do topo da pilha de execução PSW – Registrador de Status (program status word) Informações sobre a execução da instrução. Altera de acordo com seu resulta 19
  • 20.
    Armazena instruções edados em células, geralmente de 8 bits. As células podem ser acessadas por um endereço único A especificação do endereço é feita através do registrador MAR – Memory Address Registrer. Já o MBR (Memory Buffer Registrer) guarda o conteúdo de uma ou mais célula. Memória Principal 20
  • 21.
    Memória 1 2 3 4 Endereço da memória 5 6 7 8 9 10 ProgramaXYZ Programa XYZ 3 4 5 6 7 8 Variável B Variável A Sub-Rotina (Soma) Sub-Rotina (Enviar E-mail) 21
  • 22.
  • 23.
    A memória principalpode ser volátil ou não volátil A RAM (Random Access Memory) é volátil, já a ROM (ReadOnly Memory) e a EPROM (Erasable Programmable ROM) são do tipo não volátil. 23
  • 24.
    Memória Cache É umamemória volátil de alta velocidade com pequena capacidade de armazenamento. Usada para tentar minimizar a diferença do tempo de processamento com o de acesso a memória principal. Armazena uma pequena parte dos dados da memória principal. Antes do processador ir na memória principal, ele verifica no cache. 24
  • 25.
    Principio da localidade Éa tendência do processador de referenciar instruções e dados localizados em endereços próximos. A maioria dos processadores apresenta uma estrutura com cache em níveis. Cache L1, L2, L3... 25
  • 26.
    Memória secundária É oarmazenamento de dados “permanente” e não volátil. HD, DVD, PenDrive... HD 26
  • 27.
    Dispositivos de Entradae Saída Comunicação entre o SO e o mundo externo. Podem ser memórias secundárias ou de Interface Homem Máquina. IHM 27
  • 28.
    Barramento ou bus Osbarramentos fornecem a comunicação entre os diferentes componentes. Podendo ser Barramento processador-memória, Barramento de E/S e Barramento backplane. Possuem linhas de controle e linhas de dados. Pipelining Técnica que permite ao processador executar instruções paralelamente porém em estágios diferentes. Como numa linha de montagem. 28
  • 29.
    Arquitetura RISC vsCISC A linguagem de máquina é o que o processador realmente entende e está diretamente ligado a sua arquitetura, que comumente vão ser RISC ou CISC. RISC – Reduced Instrucion Set Computer Poucas instruções, em geral não chegam a acessar a memória principal, usando geralmente muitos registradores. CISC – Complex Instruction Set Computers Instruções complexas interpretadas por microprogramas. Poucos registradores e dificultam a implementação do pipelinig. 29
  • 30.
  • 31.
  • 32.
    Tradutor Após a programação,as instruções devem ser traduzidas para linguagem de máquina. Quando o tradutor traduz, ele gera o módulo-objeto Montadores e Compiladores Montadores (assembler) geram módulos-objetos não executáveis específicos para cada processador. Compiladores (alto nível) geram programas não executáveis em linguagem de máquina a partir da linguagem de auto nível. 32
  • 33.
    Interpretador Não geram módulo-objeto.Executam instruções escritas em alto nível imediatamente. A maior desvantagem é o tempo gasto para a tradução, porém são muito flexíveis. 33
  • 34.
    Linker Gera a partirde vários módulos-objeto um único programa executável. Resolve as referencias externas e realoca a região de memória para carga do programa. Alguns compiladores conseguem resolver estas referencias e isto faz com que o linker não seja usado, passando pelo processo de link dinâmico. Porém neste caso o overhead é muito grande. 34
  • 35.
    Loader Responsável por carregarna memória principal um programa para ser executado. Absoluto ou Realocável Absoluto quando é necessário apenas conhecer o endereço inicial e o tamanho do módulo. Realocável quando o programa pode ser carregado em qualquer posição da memória. 35
  • 36.
    Depurador Encontrar os BUG’sdo sistema. Permite acompanhar toda a execução de um programa. Recursos • Acompanhar a execução de instrução por instrução • Visualizar o conteúdo de uma variável • Implementar pontos de parada do sistema (breakpoints) • Especificar que quando uma variável for modificada receba uma mensagem (watchpoint) 36
  • 37.
  • 38.
    1º Teste deConhecimento Aula 1 – Conceitos Básicos de SO Aula 2 – Visão Geral de SO Aula 3 – Hardware e Software Obrigatório apenas para alunos que entraram na semana do dia 17, para os que entraram depois é opcional 38
  • 39.
    Avaliações, trabalhos eafins Testes e Avaliações Objetivo: Avaliar o que o aluno absorveu do conteúdo ministrado, identificar necessidades de reforço do conteúdo e até mesmo necessidades de alteração na forma de abordagem e material. 39
  • 40.
    Avaliações, trabalhos eafins Passar é fácil! Pode escolher uma questão para não responder O “total” é baseado naquele que tirou a maior nota na prova Pode trazer uma folha escrita a mão (individual) para consulta Imagine uma prova de 10 questões que vale 10 pontos. Se o aluno que acertou mais questões acertar 8 das 10 questões, ele ganha 10, e os demais ganham a nota na proporção de 8 e não de 10. Então se você acertou 4 questões, vai tirar 5. 40
  • 41.
    Avaliações, trabalhos eafins Avaliações – Desafios do Professor Saber o que os alunos aprenderam certo Saber o que entenderam errado Saber o que eles não entenderam nada 41
  • 42.
    Avaliações, trabalhos eafins Avaliações – O que atrapalha Ruídos nos dados 42
  • 43.
    Avaliações, trabalhos eafins Então... A cada duas questões erradas eu elimino uma questão certa Se preocupe em aprender Não estou aqui pra reprovar ninguém 43
  • 44.