Mega Revisão - Arquitetura de Computadores

 Revisão do conteúdo já estudado, para fixação e aprimoração.


O primeiro tópico que será abordado é o conceito de programa, cujo é um conjunto de instruções que executam uma determinada função, o programa é feito em linguagem de alto nível (Em programas como C++, Java, Python e etc...)


O segundo a ser exemplificado é a Instrução, que funciona como uma ordem para o computador para fazer uma determinada ação, como uma instrução de um programa onde ele pede que a CPU processe alguma imagem e a converta para outro formato. 


Máquina Virtual - Basicamente é um sistema operacional emulado em outro sistema operacional por um programa. É comumente utilizado para testar certos programas cujo a fonte é desconhecida, para que o sistema operacional principal não seja comprometido. Atualmente a utilização de uma máquina virtual vai além disso, podendo ser utilizada em nuvem, incluindo jogos (GeForce Now, XCloud, Stadia) como para solução de problemas remotos em empresas. 

Os emuladores de jogos e Android também entram nessa categoria de máquina virtual, visto que estão emulando um sistema operacional específico. ex: PCSX2, RPCS3, Bluestacks, NOX e etc.


Processamento de dados - Processo onde acontece a entrada de dados, o processamento desses dados e por fim, a saída de dados. um exemplo seria o usuário digitando no teclado, há uma entrada de dado ele pressiona uma tecla, há um processamento de dados quando o comando é recebido pelo computador e levado á CPU para que ela possa analisar o comando e por fim, a saída de dados, que nesse caso é registrada no monitor, na memória e na CPU.


Digital e Analógico - O digital se refere ao formato padrão binário, onde só há apenas 2 valores possíveis, 0 e 1, desligado e ligado, baixa tensão e alta tensão, baixa frequência e alta frequência. Enquanto isso o analógico pode ter 2 valores fixos também, porém, ele pode variar entre os mesmos, podendo ser 1; 0,99; 0,87; 0,01 e dentre outros. 

O digital tem a vantagem de ser menos suscetível a interferências, provendo uma melhor qualidade de sinal, enquanto o analógico pode acabar tendo problemas com interferência e perda de sinal, porém, ele consegue uma melhor fidelidade quando o assunto é música, oque é algo muito discutido entre os entusiastas musicais, que preferem os discos de vinil ao ter que escutar música em formato digital (mp3, wmv, flac e etc...).


 Linguagem de máquina - É a linguagem de baixo nível, cujo a máquina compreende, representada pelos 0's e 1's, que são as únicas informações em que a CPU interpreta, é uma linguagem difícil para o ser humano trabalhar, por isso se faz necessário a criação de outras linguagens, porém, no final das contas as linguagens de alto nível acabam sendo traduzidas e interpretadas como linguagem de máquina.


Tradução e Interpretação -  A Tradução refere-se a converter uma linguagem L1 para uma linguagem L0, após isso a execução do programa é feita.

Já a Interpretação é o processo de execução do programa sem a compilação, o processo é feito linha por linha, demanda mais tempo, porém a vantagem é que ele pode ser executado em qualquer dispositivo, um exemplo disso seria a linguagem Java.


Níveis Lógicos - Se refere aos dois possíveis estados que um sinal digital pode ter. Correlacionado ao binários 0 (Baixa tensão) e 1 (Alta Tensão, 5V). 


Representação Digital - É o modo de interpretação de um arquivo digitalizado, onde ele é entendido como 0's e 1's, da forma binária pelo computador.


Sistemas Digitais - Um Sistema Digital é um conjunto de componentes eletrônicos (circuitos digitais) que manipulam informações digitais.


Eletrônica Digital - Referente ao conjunto de componentes digitais que formam um sistema digital, um circuito digital.


Circuitos Digitais - É a forma de estruturação de um sistema digital, utilizando portas lógicas, como memórias, registradores, ULA. 


Componentes Digitais - São as portas lógicas, cujo são algumas: AND, NOT, XOR, OR, NAND. 


Organização X Arquitetura - A organização é como as partes operacionais de um sistema de computador são interligadas. Ele implementa a arquitetura de computador fornecida. A organização de computadores lida com o termo: como fazer.

Já a arquitetura lida com o que se refere às características visíveis aos programadores e essenciais para a execução lógica de um programa. 

Exemplo: Número de bits usados para representar vários tipos de dados e mecanismos de saída.


Arquitetura de Von Neumann - Refere-se ao modo de organização do conjunto CPU + Memória + E/S, é a arquitetura mais comumente utilizada nos computadores pessoais, possui apenas um barramento para memória, que é utilizada tanto para os programas quanto para os dados.


Gargalo de Von Neumann - Por conta desse único barramento para dados e programas, a Arquitetura de Von Neumann acaba sofrendo um bottleneck ao ter que processar uma grande quantidade de dados, visto que os programas e os dados estão sendo alocados na mesma memória e sendo assim utilizando o mesmo barramento, fazendo com que se crie uma fila prioritária. Porém, essa limitação é amenizada com o uso de caches e outras técnicas de otimização.


Arquitetura de Harvard - A fim de resolver o problema de gargalo da Arquitetura acima foi criada a de Harvard, utilizada pela primeira fez no Mark II, um computador de válvulas e relés. Diferentemente da arquitetura de Von Neumann, esta utiliza dois barramentos e duas memórias, uma para execução de programas e a outra para o armazenamento de dados, fazendo com que ambos os processos pudessem ser executados simultaneamente, reduzindo assim o tempo necessário para concluir as tarefas. Enquanto a de Von Neumann necessita de 2 clocks para terminar uma única instrução, a de Harvard necessita de apenas 1 ciclo. 


Clock - Como se fosse o maestro, o clock é quem dita o tempo de início e termino de uma tarefa, ele faz parte da UC (Unidade de Controle) da CPU, cujo monitora as tarefas executadas. O Clock é medido em Hertz, indicando o ciclo por segundo.


CPU - É a principal peça de um computador, ele quem vai processar e enviar os dados de saída aos dispositivos conectados. É quem executa os programas e os interpreta, faz operações aritméticas através da ULA (Unidade Lógica de Aritmética), faz o controle do sistema através da UC, além dos registradores, que registram temporariamente alguns dados recém utilizados, como operações aritméticas. 


Memória - Existem diferentes tipos de memória, de armazenamento temporário, de armazenamento de longa data, cache, registro e etc... como a RAM, Cache, ROM, Flash...


Sistema de Entrada e Saída - Para que haja uma interação entre usuário e máquina é necessário que se tenha os dispositivos de entrada e saída fazendo a intermediação, como dito anteriormente, o exemplo do usuário utilizando o teclado para enviar comandos para a CPU e a UC vai mandar esse comando processado para a tela do computador. 


Sistema Computacional - Seria todo o conjunto de peças que formam o computador, CPU, Memória, Dispositivos de E/S, Hardware no geral e software. 


Tipos de Computadores - A evolução dos computadores fez com que diferentes tipos de computadores surgissem para cada uma das necessidades, como os computadores pessoais, que são designados para o uso pessoal e que pode ser utilizado a trabalho também, os supercomputadores, que tem um grande poder computacional e são utilizados geralmente para estudos científicos avançados, os servidores, que são designados para data-center, armazenamento de sites, streaming, backup e etc... temos também os Embarcados, que são subdivididos em 3 categorias: Microcontrolados, Móveis e Descartáveis. 

Processo de Execução Serial -  É um processo lento de processamento de dados, onde cada um é executado individualmente, fazendo com que não haja um aproveitamento de performance.


Pipeline - É um processo mais eficiente de processamento de dados, onde o processador executa múltiplas instruções ao mesmo tempo, dividindo a execução em várias etapas, formando um "pipeline". Enquanto a primeira instrução está sendo executada, a segunda já está sendo decodificada, a terceira sendo buscada na memória, e assim por diante. Dessa forma, o processador consegue realizar mais instruções em menos tempo, aproveitando melhor a sua capacidade de processamento.


Sincronismo de Processos - Modo como os circuitos digitais garantem o modo de sincronia da tarefa sendo executada. Embarcado pelo Clock, que garante esse sincronismo.


Máquinas Multiníveis e os 6 Níveis (Estrutura Hierárquica) - 

Nível 5 – Nível de linguagem orientado a problemas 

Nível 4 – Nível de linguagem de montagem 

Nível 3 – Nível do sistema operacional da máquina

 Nível 2 – Nível de arquitetura do conjunto de instruções 

Nível 1 – Nível de microarquitetura • Nível 0 – Nível lógico digital




Postar um comentário

0 Comentários