1) O documento apresenta conceitos básicos sobre sistemas operacionais, hardware e software.
2) É descrito o hardware incluindo processador, memória principal e dispositivos de entrada e saída.
3) Também são explicados conceitos de software como tradutores, interpretadores, linkers e loaders.
11. 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
12. 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
15. 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
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 - 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
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 – 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
20. 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
23. 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
24. 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
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
É o armazenamento de dados “permanente” e não volátil.
HD, DVD, PenDrive...
HD
26
27. 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
28. 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
29. 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
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 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
35. 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
36. 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
38. 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
39. 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
40. 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
41. 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
43. 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