Mapa mental
Computador
Contenido del mapa
Computador
Lê o programa
- Código Fonte
- Tradutor
- Código Máquina
- Binário
- 0 e 1 = bit (b)
- BinaryDigit
- Menor unidade - armazenamento
- grupo 8 bits = byte (B)
- 200 MB (arquivo)
- 20Mbps (velocidade)
- 0 e 1 = bit (b)
- Binário
- Compilador
- Ler o código inteiro
- Traduz
- Agrupa em arquivo
- Máquina executa
- Tradutor é dispensado
- Vantagens
- Muita compilação atrasa o teste do projeto
- Velocidade de Execução maior
- Alta performance
- Código máquina específico
- Faz otimizações mais complexas
- Alta performance
- Velocidade de Execução maior
- Muita compilação atrasa o teste do projeto
- Agrupa em arquivo
- Traduz
- Uso
- Linguagem C
- Ada
- Linguagem C
- Ler o código inteiro
- Interpretador
- Traduz
- Linha a linha
- Executa
- Enviado para memória contadora
- Tradutor nunca dispensado
- Vantagens
- Velocidade em editar e checar a edição
- Ideal para desenvolvimento de projetos
- Facilita reconhecer erros
- Executa em maquinas diferentes
- Facilidade de distribuição
- Velocidade em editar e checar a edição
- Executa
- Linha a linha
- Uso
- Servidor / Aplicações Web
- PHP
- JavaScript
- Python
- Java
- Técnica JIT / AOT
- Java
- Python
- JavaScript
- PHP
- Servidor / Aplicações Web
- Traduz
- Intermediário
- Implementação da Linguagem
- + Interpretador
- + Compilador
- Resolução de Problemas específicos
- JIT Compilation
- Just-in-time compilation
- Compilação na hora certa
- Copilação parte do código
- Execução de parte do código
- Aumenta a performance
- Acelera o tempo de compilação
- Execução de parte do código
- JIT Compilation
- Uso
- V8 (google)
- JavaScript
- Java
- Rodar em diferentes maquinas
- Compilação
- Não gera código maquina
- Gera Byte Code ou .class do Java
- Interpretador
- Segunda tradução
- Interpretação linha a linha
- JVM - Máquina Virtual Java
- Execução
- Qualquer máquina com JVM
- Segunda tradução
- Implementação da Linguagem
- Código Máquina
- Alto Nível
- Tradutor
- Código Fonte
Como Executa
- Armazenamento
- Representação Na Memória
- Números
- Inteiros
- Exemplo: Representados com 8 bits
- Primeiro bit = simboliza apenas o sinal
- Começa bit 0= Número Positivo
- Começa bit 1= Número Negativo
- Representa valores 0 a 127 e 0 a -127
- = 256 combinações possíveis de 0 e 1 em arranjo de 8
- Cada Linguagem pode definir o número de bits necessários para representar seus números
- Linguagem C
- Usa 4Bytes = +/- 2 Bilhões de números
- Linguagem C
- Primeiro bit = simboliza apenas o sinal
- Exemplo: Representados com 8 bits
- Decimais / Grandes
- Números de Pontos Flutuantes
- Representação na base 2
- Alguns números não possuem um valor na base 2 exato
- Gerando pequenas inexatidões, ignoras por serem muito pequenas, arredondadas
- Ao Somar dois números que não possuem exatidão
- Gera um erro que o computador passa a não desconsiderar
- Ao Somar dois números que não possuem exatidão
- Gerando pequenas inexatidões, ignoras por serem muito pequenas, arredondadas
- Alguns números não possuem um valor na base 2 exato
- Representação na base 2
- Números de Pontos Flutuantes
- Inteiros
- Caracteres
- Cada letra/ Simbolo: Representado com uma combinação de números
- Dificuldade de unificar uma lista com a ordem dessas combinações
- 1-ASCII (Código Padrão Para Intercâmbio de Informação)
- Codifica os caracteres em 7bits
- Computadores ficaram padronizados 8bits = 1 Byte
- Dobra o número de caracteres possíveis
- Cada Grupo queria representar seus símbolos nos bits remanescentes
- Dobra o número de caracteres possíveis
- 2-Latin1
- 3 -UNICODE
- Unificação de todos os símbolos
- Mas necessário 3 Bytes
- 4-UTF-8
- Lista unificada de caracteres
- Quantidade de bytes varia conforme a necessidade
- Não representava todos possiveis
- 3 -UNICODE
- 1-ASCII (Código Padrão Para Intercâmbio de Informação)
- Imagens/ Vídeos
- Lista de RGB
- Cada um representa um Pixel
- Lista de RGB
- Áudio
- Altura de Ondas / períodos de Tempo
- Números
- Representação Na Memória
- Armazenamento
Componentes
- CPU
- Divisão
- Unidade Controle
- 1° Fetch (Buscar)
- Guarda
- Instrução
- Registrador
- A única linha da instrução que será usada em um ciclo
- Posição que a instrução usada está na RAM
- Contador:[0]
- Recebe
- 2° Decodificar
- bit a bit da posição [0]
- Cada bit lido liga um fio/ circuito que modifica o estado do processador
- Coordenar
- Configurar todo o processador para realizar a instrução
- Buscar informações necessárias na RAM
- Salvar no Acumulador
- Configurar (ULA): Realizar Operação da instrução
- bit a bit da posição [0]
- Primeira Instrução presente no Registrador
- 2° Decodificar
- Instrução
- Olhar: Memória RAM
- Buscar Instruções = Receita
- Guarda
- 1° Fetch (Buscar)
- ULA
- Unidade Lógica Aritimética
- 3 ° Executar
- Manipular os dados
- Se tiver resultado enviado para o acumulador
- Operações Aritméticas
- Operações Lógicas
- Reinicia o ciclo para a próxima instrução na posição da RAM
- 1° Fetch
- 2° Decodificar
- 3° Executar
- 2° Decodificar
- Clock
- Relógio
- Determina o tempo de cada operação
- Velocidade de execução = velocidade do clock
- Em média: 3 bilhões Tique/segundo
- 3GHz (GHz = bilhões Tiques/ segundo)
- overclocking: aumentar a velocidade
- Maior gasto energético
- Aquecimento
- Redução de vida útil
- Em média: 3 bilhões Tique/segundo
- Velocidade de execução = velocidade do clock
- 1 Clock = 3 Tiques
- 1° Tique: Fetch
- 2° Tique: Decodificar
- 3° Tique: Executar
- ULA realiza a operação
- Envia a informação para o acumulador
- Adiciona uma unidade no contador, para seguir para próxima instrução e recomeçar o clock.
- Envia a informação para o acumulador
- ULA realiza a operação
- Decodificar a instrução presente no Registrador
- Configurar a ULA
- Se necessário, de acordo com a instrução, aponta para a posição na RAM, que está a informação para execução
- Envia a informação para o acumulador
- Se necessário, de acordo com a instrução, aponta para a posição na RAM, que está a informação para execução
- Configurar a ULA
- 3° Tique: Executar
- Olha para o código maquina na memória RAM
- Aponta para primeira instrução do código maquina na RAM
- Envia a posição da instrução que foi coletada para a memória RAM para o contador
- Envia a instrução presente na posição da memória RAM para o Registrador
- Envia a posição da instrução que foi coletada para a memória RAM para o contador
- Aponta para primeira instrução do código maquina na RAM
- 2° Tique: Decodificar
- 1° Tique: Fetch
- Aumento da Performance
- Pipeline de instrução
- Linha de montagem
- Fazer instruções, um na frente da seguinte
- Seguem o mesmo caminho
- 1 instrução a cada clock = 3 instruções a cada clock
- Fazer instruções, um na frente da seguinte
- Linha de montagem
- Dual- core / Quad-core
- Aumentar o número de circuitos
- Mais de um núcleo
- Execução simultânea dos núcleos
- Lei de Moore
- Hardware específicos
- Pipeline de instrução
- 1° Fetch
- Manipular os dados
- Registradores
- Conjunto de Posições
- Armazena
- Acelera o processamento
- Pouco Espaço
- Dados Não Usados
- São retirados para outro armazenamento
- Instrução da RAM
- Registrador Acumulador
- Dados intermediários das operações
- Memória do prestador
- Registrador Contador
- Posição da instrução vindo da RAM
- Contador Incrementado a cada posição
- Unidade Controle
- Executa vários programas
- Técnica Multitasking
- Sistema Operacional
- Cria uma fila de programas
- Executa um pouco de cada programa
- Programa executado vai para fim da fila
- Ilusão de Paralelismo
- Burlar a Fila
- Programa executado vai para fim da fila
- Executa um pouco de cada programa
- Técnica Multitasking
- Central Process Uni
- Unidade Central de Processamento
- Tamanho de dados processados em um ciclo de Clock
- Dados guardados no registrador
- 32 bits
- 64 bits
- Dados guardados no registrador
- Divisão
- Entrada e Saída
- Saída
- Tela
- Drives do dispositivo
- Permite abstrair as particularidades de cada dispositivo
- Pixel
- Componentes que forma o RGB
- Diferentes cores: intensidade do Red, Green, Blue
- Três ligados = cor branca
- Três desligados = cor preta
- Diferentes cores: intensidade do Red, Green, Blue
- Cada imagem: Atualiza pixel por pixel, da esquerda para direita
- Usando cálculos complexos
- Chip da Placa de vídeo (GPU)
- Integrada
- Junto ao chip do processador
- Dedicada
- Graphics Processing Unit
- Computação Acelerada Via GPU
- Machine Learnig
- TPU
- Tensor Processing Unit
- Aumento Performance em relação a GPU
- Grande empesas de tecnologia
- TPU
- Ciência de dados
- Machine Learnig
- Integrada
- Chip da Placa de vídeo (GPU)
- Usando cálculos complexos
- Componentes que forma o RGB
- Drives do dispositivo
- Impresora
- Tela
- Entrada
- Teclado
- Conjunto de fios
- Linhas energizadas
- Colunas desenergizadas
- Tecla= Conjunto de Linha e Coluna
- Pressionada: Linha energiza a Coluna
- Envia posição: tecla pressionada
- Possível troca tipos de teclado
- ABNT
- QWERTY
- Possível troca tipos de teclado
- Envia posição: tecla pressionada
- Pressionada: Linha energiza a Coluna
- Conjunto de fios
- Mouse
- Webcan/ Microfone
- Teclado
- HD/SSD
- Considerados entrada e saída
- Saída
- Memória
- O que é Armazenados
- Código Fonte
- Código Máquina
- Pastas
- Arquivos
- Memória Secundária
- HD
- Hard Disk
- Conjunto de discos magnéticos girando rápido
- + Agulha que ler/ escreve dados
- +
- Grande Armazenamento
- Barato
- Acessível
- --
- Lento - Agulha fisicamente
- Frágil: Pancadas
- SSD
- Solid State Drive
- Unidade de Estado Sólido
- Formado: Chips Eletrônicos
- Similar: Pen drive / SD
- +
- --
- Caros
- Ficando + Baratos
- Vida Útil Menor
- Caso seja alterado muito as informações
- Devido a forma que são construídos
- Caros
- Menores
- Rápidos
- Inicialização: sistema/ programas
- Resistentes: Pancadas
- --
- Memória NÃO volátil
- NÃO apagado após desligamento da maquina
- ROM
- Read-Only-Memory
- Memória de apenas leitura
- ROM != HD/ SSD
- Baixo armazenamento
- Guarda dados Inicialização
- BIOS
- Basic Input/Output System
- Sistema básico de entrada ou saída
- Basic Input/Output System
- Identificar/ ler:
- componente
- Ram
- CPU
- HD/SSD
- Configurações
- Horas / Data
- componente
- BIOS
- Read-Only-Memory
- HD
- Memória de Trabalho
- RAM
- Programa = Receita : Executando
- Analogia: RAM = Bancada
- +
- Processador = Cozinheiro
- HD / SSD= Dispensa
- Dados = Ingredientes
- Tamanho = capacidade de AMAZENAMENTO
- 4GB = armazenamento MENOR
- 16 GB = armazenamento MAIOR
- Necessidade de buscar dados no HD
- +
- Analogia: RAM = Bancada
- INDICIES Lista =
- cada indicie (endereço): BYTE = 8 bites
- 0, 1, 2, 3,... da memória
- Endereços
- Acesso pelo endereço: Ler/ Escrever
- Acessar qualquer endereço
- = CUSTO de tempo
- CUSTO de Tempo != para HD
- Fluxo:
- Acesso
- Enviado
- RAM
- Executar
- Processador
- Código + Dados
- HD / SSD
- Enviado
- Acesso
- = CUSTO de tempo
- Randon Access Memory
- Memória de Acesso Aleatório
- SSD também é acesso Aleatório
- Memória de Acesso Aleatório
- DRAM (Dynamic RAM) / RAM Comum
- +Barata
- + Lenta
- + Armazenamento (GB)
- SRAM
- + Cara
- +Rápida
- - Armazenamento
- Auxilia na comunicação com a RAM
- Agiliza o Processo
- Local em que guarda os dados que estamos utilizando
- Junto ao processador = Forma memória Cache
- Processador coloca um bloco de dados dentro do cache
- Pega o valor da primeira instancia e executa
- Provável que o próximo dado necessário esteja em sequência
- Processador antes de buscar dado na memória RAM, verifica se não está no cache
- Processador coloca um bloco de dados dentro do cache
- Junto ao processador = Forma memória Cache
- Cache L1
- Colada na CPU
- Cada core tem uma
- Cache L2
- Maior que L1
- + Lento
- Cada core tem uma
- CacheL3
- Maior
- + Lenta
- Uma só para todos os cores compartilharem
- Outros Cache
- Em navegador
- Em Banco de dados
- Servidores
- CDN (Rede distribuída de conteúdo)
- Diminui a latência da entrega ao servidor após solicitação
- Tempo de expiração do cache armazenado
- Expirado: Solicita uma nova ao servidor do site
- Conteúdo Estático
- Alivio para o servidor do site: não precisa responder todas as solicitações
- Criar regras para cada serviço
- CDN (Rede distribuída de conteúdo)
- Cache- friendly
- Programa = Receita : Executando
- Memória VOLÁTIL
- APAGADO após desligamento
- RAM
- Hierarquia de Memória
- Particularidades
- Custo de memória
- Armazenamento
- Velocidade
- Maior até menor
- 1° Registradores
- Dentro: Processador
- Acessa um ciclo de clock
- Poucos registradores: apenas 500 bytes
- 2° Cache (SRAM)
- Próxima: Processador
- 64kB - L1 4MB L3
- 700GB/segundo
- 3°RAM
- 10GB/segundo
- 8GB
- 4°SSD
- 5° HD
- 4 Teras
- 200GB/segundo
- 6°Cloud
- 2MB/segundo
- PB
- 2GB/segundo
- 500GB
- 5° HD
- 1° Registradores
- Maior até menor
- Principio da Localidade
- Localidade Temporal
- Acessar de novo em breve
- Localidade Espacial
- Acessar o vizinho
- Localidade Temporal
- Particularidades
- O que é Armazenados
- CPU
Información
- Descripción
- Mapa Mental sobre Computador, creado por Germanna Oliveira el 25/01/2022.
- Creado por
- Germanna Oliveira
- Visitas
- 2
- Valoración