• Nenhum resultado encontrado

Aula - 3 (cap_2)

N/A
N/A
Protected

Academic year: 2021

Share "Aula - 3 (cap_2)"

Copied!
15
0
0

Texto

(1)

Arquitetura de Sistemas Operacionais

Prof. Vinícius Silva de Souza

viniciussouzamg@gmail.com

(2)

CONCEITOS DE HARDWARE

PROCESSADOR

Também denominado unidade central de processamento (UCP), gerencia todo o sistema computacional controlando as operações realizadas por cada unidade funcional.

Cada processador é composto por uma unidade de controle, unidade lógica e aritmética, e registradores.

A unidade de controle (UC) é responsável por gerenciar as atividades de todos os

componentes do computador, como a gravação de dados em disco ou a busca de instruções na memória.

A unidade lógica e aritmética (ULA), como o nome indica, é responsável por operações

lógicas (testes e comparações) e aritméticas (somas e subtrações).

A sincronização de todas as funções do processador e realizada através de um sinal de clock. Este sinal é um pulso gerado siclicamente (inicio, meio e fim) que altera variáveis de estado do processador. O sinal de clock é gerado a partir de um cristal de quartzo que, devidamente polarizado, oscila em uma determinada frequência estável e bem

(3)

CONCEITOS DE HARDWARE

PROCESSADOR

Os registradores são dispositivos com a função principal de armazenar dados

temporariamente. O conjunto de registradores funciona como uma memória de alta velocidade interna do processador, porém com uma capacidade de armazenamento reduzida e custo maior que o da memória principal.

Alguns registradores podem ser manipulados diretamente por instruções (registradores de uso geral), enquanto outros são responsáveis por armazenar informações de controle do processador e do sistema operacional (registradores de uso específico). Entre os

registradores de uso específico, merecem destaque:

> o contador de instruções (CI) ou program counter (PC) contém o endereço da próxima instrução que o processador deve buscar e executar;

> o apontador da pilha (AP) ou stack pointer (SP) contém o endereço de memória do topo da pilha, ,que é a estrutura de dados onde o sistema mantém informações sobre programas que estão sendo executados e tiveram que ser interrompidas;

> o registrador de status ou program status word (PSW) é responsável por armazenar informações sobre a execução de instruções, como a ocorrência de overflow.

(4)

CONCEITOS DE HARDWARE

MEMÓRIA PRINCIPAL

A memória principal, primária ou real é o local onde são armazenados instruções e dados, composta por unidades de acesso chamadas células, sendo cada célula composta por um determinado número de bits (Unidade básica de memória, sendo 0 ou 1).

O acesso ao conteúdo de uma célula é realizado através da especificação de um número chamado endereço, que é uma referência única que podemos fazer a uma célula de

memória.

A especificação do endereço é realizada através de um registrador denominado registrador de endereço de memória (memory address register – MAR).

Outro registrador usado em operações com a memória é o registrador de dados da memória (memory buffer register – MBR). Este registrador é utilizado para guardar o conteúdo de uma ou mais células de memória, após uma operação de leitura, ou para guardar o dado que será transferido para a memória em uma operação de gravação. A memória principal pode ser classificada em função de sua volatilidade.

RAM – (Random Access Memory) – são voláteis ROM – (Read-Only Memory) – não voláteis

(5)

CONCEITOS DE HARDWARE

MEMÓRIA CACHE

É uma memória volátil de ala velocidade, porém com pequena capacidade de

armazenamento. O tempo de acesso a um dado nela contido é muito menor que se o mesmo estivesse na memória principal. O propósito da memória cache e diminuir a disparidade de velocidade de acesso entre o processador e a memória principal.

Um processador pode ser projetado com diversos níveis de cache, conforme especificação do fabricante. Como exemplos, o processador da Motorola Power PC G4 possui cache de nível 2, enquanto o processador Intel Xeon MP possui cache de nível 3.

MEMÓRIA SECUNDÁRIA

A memória secundária é um meio permanente, isto é, não é volátil de armazenamento de programas e dados. Enquanto a memória principal precisa estar sempre energizada para manter suas informações, a memória secundária não precisa de alimentação.

Caracterizam-se por ter capacidade de armazenamento superior ao da memória principal e o custo relativamente baixo, porém o tempo de acesso à memória secundária é bem

(6)

CONCEITOS DE HARDWARE

BARRAMENTO

O barramento ou bus é um meio de comunicação compartilhado que permite a

comunicação entre as unidades funcionais de um sistema computacional. Através de condutores, informações como dados, endereços e sinais de controle trafegam entre processadores, memórias e dispositivos de E/S.

Os barramentos são classificados em três tipos:

> Barramento processador-memória: são de curta extensão e alta velocidade para que seja otimizada a transferência de informação entre o processador e a memória.

> Barramento de E/S: Possuem maior extensão, são mais lentos e permitem a conexão de diferentes dispositivos.

> Barramento de backplane: Este faz a função de integrar os outros dois barramentos.

(7)

CONCEITOS DE HARDWARE

PIPELINING

Pipelining é uma técnica que permite ao processador executar múltiplas instruções

paralelamente em estágios diferentes. O conceito de pipeline se assemelha muito a uma linha de montagem, onde uma tarefa é dividida em uma sequência de subtarefas,

executadas dentro de uma linha de produção.

O processador, através de suas várias unidades funcionais de pipeline, funciona de forma a permitir que, enquanto uma instrução se encontra em fase de execução, uma outra

instrução possa estar na fase de busca simultaneamente.

O pipelining pode ser empregado em sistemas com um ou mais processadores, em diversos níveis, e tem sido a técnica de paralelismo mais utilizada para aumentar o desempenho dos sistemas computacionais.

(8)

CONCEITOS DE HARDWARE

ARQUITETURA RISC e CISC

A linguagem de máquina de um computador é a linguagem que é realmente entendida pelo processador. Cada processador possui um conjunto de instruções de máquina,

definido por seu fabricante, que fazem referências a detalhes, como registradores, modos de endereçamento e tipos de dados, que caracterizam um processador e suas

funcionalidades.

Um programa em linguagem de máquina pode ser diretamente executado por um

processador, não requerendo qualquer tipo de tradução ou relocação. Quando escrito em linguagem de máquina de um determinado processador, um programa não pode ser executado em outra máquina de arquitetura diferente.

Um processador com arquitetura RISC (Reduced Instruction Set Computer) se

caracteriza por possuir poucas instruções de máquina, em geral bastante simples, que são executadas diretamente pelo hardware. (Fácil implementação do pipeline por ter muitos registradores).

Os computadores com arquitetura CISC (Complex Instruction Set Computers) já

possuem instruções complexas que são interpretadas por microprogramas. (Difícil implementação do pipeline por ter poucos registradores).

(9)

CONCEITOS DE HARDWARE

ANÁLISE DE DESEMPENHO

Para avaliar o desempenho de processadores, diversas variáveis devem ser consideradas, entre as quais o intervalo de tempo entre os pulsos de um sinal de clock, conhecido como ciclo de clock.

A frequência de clock é o inverso do ciclo de clock e indica o número de pulsos elétricos gerados em um segundo.

O desempenho de um processador poder avaliado pela comparação dos tempos que

processadores distintos levam para executar um mesmo programa, denominado tempo de UCP, que leva em consideração apenas o tempo para executar as instruções pelo

(10)

CONCEITOS DE SOFTWARE

TRADUTOR

Nos primeiros sistemas computacionais, o ato de programar era bastante complicado, já que o programador deveria possuir conhecimento da arquitetura da máquina e programar em painéis através de fios. Esses programas eram desenvolvidos em linguagem de

máquina e carregados diretamente na memória principal para execução.

Com o surgimento das primeiras linguagens de montagem ou assembly e das linguagens de alto nível, o programador deixou de se preocupar com muitos aspectos pertinentes aos hardware, como em qual região da memória o programa deveria ser carregado ou quais endereços de memória seriam reservados para as variáveis.

Apesar das inúmeras vantagens proporcionadas pelas linguagens de montagem e de alto nível, os programas escritos nessas linguagens não estão prontos para ser diretamente executados pelo processador (programas-fonte). Para isso eles precisão passar por uma etapa de conversão, onde toda representação simbólica das instruções é traduzida para código de máquina. Esta conversão é realizada por um utilitário chamado tradutor.

(11)

CONCEITOS DE SOFTWARE

INTERPRETADOR

É considerado um tradutor que não gera módulo-objeto, a partir de um programa-fonte escrito em linguagem de alto nível, o interpretador, durante a execução do programa, traduz cada instrução e a executa imediatamente.

A maior desvantagem na utilização de interpretadores é o tempo gasto na tradução das instruções de um programa toda vez que este for executado, já que não existe a geração de um código executável.

LINKER

O linker ou editor de ligação é o utilitário responsável por gerar, a partir de um ou mais módulos-objeto, um único programa executável. Suas funções básicas são resolver todas as referências simbólicas existentes entre os módulos e reservar memória para a

(12)

CONCEITOS DE SOFTWARE

LOADER

O loader ou carregador é o utilitário responsável por carregar na memória principal um programa para ser executado. O procedimento de carga varia com o código gerado pelo liker e, em função deste, o loader é classificado como sendo do tipo absoluto ou relocável. Absoluto: O loader necessita conhecer o endereço de memória inicial e o tamanho do módulo para realizar o carregamento, então, transfere o programa da memória secundária para a memória principal e inicia sua execução.

Relocável: O programa pode ser carregado em qualquer posição de memória, e o loader é responsável pela relocação no momento do carregamento.

(13)

CONCEITOS DE SOFTWARE

DEPURADOR

O depurador (debugger) é o utilitário que permite ao usuário acompanhar toda a

execução de um programa a fim de detectar erros na sua lógica. Este utilitário oferece ao usuário recursos como:

> acompanhar a execução do programa instrução por instrução; > possibilitar a alteração e a visualização do conteúdo de variáveis; > implementar pontos de parada dentro do programa (breakpointer); > etc.

(14)

Exercícios

1) Quais os componentes de um processador e quais são suas funções?

2) Como a memória principal de um computador é organizada?

3) O que são memórias voláteis e não voláteis?

4) Conceitue memória cache e apresente as principais vantagens do seu uso.

5) Qual a diferença entre a memória principal e memória secundária?

6) Como a técnica de pipelining melhora o desempenho dos sistemas

computacionais?

7) Compare as arquiteturas de processadores RISC e CISC?

8) Porque a execução de programas interpretados é mais lenta que a de

programas compilados?

9) Quais as funções do linker?

10) Qual a principal função do loader?

(15)

- MACHADO, Francis Berenger e MAIA, Luiz Paulo. Arquitetura de Sistemas Operacionais,

Referências

Documentos relacionados

$ SDUWLU GRV UHVXOWDGRV REWLGRV IRL SRVVtYHO YHUL¿FDU que a variação, tanto de resistência quanto de módulo de deformação foi muito elevada. Os valores máximos e

A memória principal, também conhecida como memória primária ou real, é a parte do computador onde são armazenado instruções e dados. Dados são armazenados de

Inóculos microbianos induziram o aumento da superfície radicular e do peso seco total, especialmente Azospirilum brasiliensis, e têm potencial uso como

Assim como Santos (2017) e Silva (2017), no presente estudo optou-se por categorizar as atividades como “tendo potencial para” cenários para investigação por acreditarmos, assim

A memória principal do computador é aquela composta por todos os programas em execução. É muito comum citar apenas a memória RAM como sendo a principal, uma vez que

OBS: Em caso de inscrição para duas áreas você recebe 02 (dois) cadernos de prova e os 02 (dois) cartões resposta, um para cada área escolhida, sendo que os dois cartões devem

OBS: Em caso de inscrição para duas áreas você recebe 02 (dois) cadernos de prova e os 02 (dois) cartões resposta, um para cada área escolhida, sendo que os dois cartões devem

OBS: Em caso de inscrição para duas áreas você recebe 02 (dois) cadernos de prova e os 02 (dois) cartões resposta, um para cada área escolhida, sendo que os dois cartões devem