Podcast
Questions and Answers
Qual dos seguintes tipos de computadores é conhecido por ter bateria autônoma?
Qual dos seguintes tipos de computadores é conhecido por ter bateria autônoma?
O que a Lei de Moore prevê sobre os circuitos integrados?
O que a Lei de Moore prevê sobre os circuitos integrados?
Qual dos seguintes conceitos se refere ao processo de realizar operações independentes em paralelo?
Qual dos seguintes conceitos se refere ao processo de realizar operações independentes em paralelo?
Qual é a função principal da camada de abstração nas aplicações computacionais?
Qual é a função principal da camada de abstração nas aplicações computacionais?
Signup and view all the answers
Qual é uma característica importante dos servidores em relação à tolerância a falhas?
Qual é uma característica importante dos servidores em relação à tolerância a falhas?
Signup and view all the answers
Qual é a função de um compilador?
Qual é a função de um compilador?
Signup and view all the answers
Qual das seguintes opções representa corretamente a memória volátil?
Qual das seguintes opções representa corretamente a memória volátil?
Signup and view all the answers
O que mede o desempenho computacional de um sistema?
O que mede o desempenho computacional de um sistema?
Signup and view all the answers
Qual é a principal diferença entre memória primária e memória secundária?
Qual é a principal diferença entre memória primária e memória secundária?
Signup and view all the answers
Qual dos seguintes componentes é responsável pelo controle do caminho de dados em um computador?
Qual dos seguintes componentes é responsável pelo controle do caminho de dados em um computador?
Signup and view all the answers
Qual é a definição de um Circuito Integrado (chip)?
Qual é a definição de um Circuito Integrado (chip)?
Signup and view all the answers
Como a capacidade de memória de um computador é determinada?
Como a capacidade de memória de um computador é determinada?
Signup and view all the answers
O que são portas lógicas?
O que são portas lógicas?
Signup and view all the answers
Qual é a função dos designers no contexto dos Circuitos Integrados?
Qual é a função dos designers no contexto dos Circuitos Integrados?
Signup and view all the answers
Quais componentes estão sempre presentes em um computador?
Quais componentes estão sempre presentes em um computador?
Signup and view all the answers
O que representa a funcionalidade do chip em um Circuito Integrado?
O que representa a funcionalidade do chip em um Circuito Integrado?
Signup and view all the answers
O que as várias camadas de abstração em um chip permitem?
O que as várias camadas de abstração em um chip permitem?
Signup and view all the answers
Qual é a principal função dos sistemas operativos?
Qual é a principal função dos sistemas operativos?
Signup and view all the answers
O que caracteriza uma arquitetura de 64 bits?
O que caracteriza uma arquitetura de 64 bits?
Signup and view all the answers
Qual é o papel das bibliotecas na programação?
Qual é o papel das bibliotecas na programação?
Signup and view all the answers
O que é um framework no contexto de desenvolvimento de software?
O que é um framework no contexto de desenvolvimento de software?
Signup and view all the answers
Qual das alternativas descreve melhor o núcleo do sistema operativo (Kernel)?
Qual das alternativas descreve melhor o núcleo do sistema operativo (Kernel)?
Signup and view all the answers
Qual dos seguintes componentes não é um elemento fundamental de um computador?
Qual dos seguintes componentes não é um elemento fundamental de um computador?
Signup and view all the answers
Qual é o elemento mais importante na arquitetura de um computador?
Qual é o elemento mais importante na arquitetura de um computador?
Signup and view all the answers
Qual é a implementação de controle que os frameworks fornecem?
Qual é a implementação de controle que os frameworks fornecem?
Signup and view all the answers
Flashcards
Compilador
Compilador
Programa que traduz linguagens de alto nível como C e C++ em linguagem que o computador pode executar.
Entrada de Dados
Entrada de Dados
Processo de inserir informações no computador usando dispositivos como teclado e mouse.
Saída de Dados
Saída de Dados
Informações processadas pelo computador que são apresentadas ao usuário por meio de dispositivos como monitores e impressoras.
Memória Volátil
Memória Volátil
Signup and view all the flashcards
Desempenho Computacional
Desempenho Computacional
Signup and view all the flashcards
Componentes do computador
Componentes do computador
Signup and view all the flashcards
Circuito Integrado
Circuito Integrado
Signup and view all the flashcards
Processador
Processador
Signup and view all the flashcards
Memória RAM
Memória RAM
Signup and view all the flashcards
Design de chip
Design de chip
Signup and view all the flashcards
Portas Lógicas
Portas Lógicas
Signup and view all the flashcards
Capacidade de memória
Capacidade de memória
Signup and view all the flashcards
Bibliotecas
Bibliotecas
Signup and view all the flashcards
Frameworks
Frameworks
Signup and view all the flashcards
Sistemas Operativos
Sistemas Operativos
Signup and view all the flashcards
Kernel
Kernel
Signup and view all the flashcards
Gestão de Memória
Gestão de Memória
Signup and view all the flashcards
Arquitetura de Computador
Arquitetura de Computador
Signup and view all the flashcards
Arquitetura de 64 bits
Arquitetura de 64 bits
Signup and view all the flashcards
Computadores pessoais (PC)
Computadores pessoais (PC)
Signup and view all the flashcards
Lei de Moore
Lei de Moore
Signup and view all the flashcards
Computação em nuvem
Computação em nuvem
Signup and view all the flashcards
Paralelismo
Paralelismo
Signup and view all the flashcards
Camadas de Abstração
Camadas de Abstração
Signup and view all the flashcards
Study Notes
Componentes e Paradigmas Computacionais
- Tipos de computadores:
- Computadores pessoais (PCs) normalmente incluem ecrã, teclado, rato e cálculo intensivo com IA.
- Servidores e supercomputadores.
- Computadores embutidos (embedded).
- Dispositivos móveis (PMDs) com bateria autónoma.
- Servidores estão a crescer -> aglomerados de servidores/centros de dados.
- Computação em nuvem.
- SaaS - software como serviço.
- Lei de Moore:
- Circuitos integrados, componentes básicos de computadores, duplicam a sua capacidade a cada 18-24 meses.
- Ajuda arquitetos a prever novos chips quando constroem computadores.
- Abstração:
- As várias camadas são abstraídas entre si.
- Ex: Um programador não precisa saber detalhes de hardware para programar.
- Rapidez de casos comuns -> maior investimento nestes casos.
- Paralelismo: operações independentes em paralelo.
Hierarquia de memórias
- Capacidade vs. Rapidez:
- Memórias caras são rápidas, memórias baratas são lentas, mas com maior capacidade.
- Memória volátil: precisa de energia (como RAM).
- Memória não volátil (ROM, discos rígidos, SSD): mantém dados mesmo sem energia.
- Tolerância a falhas e redundância nos componentes.
Camadas de abstração das aplicações
- Application Software
- Systems Software (sistemas operativos, compiladores).
- Hardware.
Compilador
- Traduz linguagens de alto nível (C, C++) para linguagem da máquina (código máquina).
- Assemblador: traduz código de montagem para linguagem da máquina.
Computador
- Entrada de dados (input): rato, teclado.
- Saída de dados (output): ecrã, impressora, altifalante.
- Memória.
- Caminho de dados (datapath).
- Controlo (CPU, processador).
- Cache: acesso rápido de dados muito acessados pelo processador, SRAM.
Acesso
- Acesso aleatório (frequente) é rápido (cache, DRAM).
- Uso de discos rígidos, SSDs para guardar dados.
CPU
- Mecanismos de controlo e caminho de dados.
- Instruções: fluxo de trabalho.
Arquiteturas
- CISC (Complex Instruction Set Computer)
- RISC (Reduced Instruction Set Computer)
- PowerPC (Mac novos)
- ARM (portáteis, tablets, etc.)
Desempenho computacional
- Medidas de desempenho: tempo de resposta, largura de banda (throughput).
- Desempenho = 1/Tempo de execução.
- Tempo de CPU: instruções usadas pelo utilizador/sistema operativo.
- Ciclo de relógio: tempo mínimo para uma operação básica no CPU.
- Frequência de relógio (Hz): ciclos por segundo.
Tempo de CPU
- Cálculo do tempo de CPU, incluíndo ciclos de relógio, instruções, e fator de execução.
Fatores importantes do Desempenho
- Frequência do relógio do processador, quantidade de instruções executadas, e ciclos de relógio por instrução (CPI).
Fatores indiretos do Desempenho
- Algoritmo
- Linguagem de programação
- Compilador
- Arquitectura do conjunto de instruções.
Barreira de energia
- Frequência de relógio e custo energético dos processadores.
- Alternativas que minimizem a energia, como temperaturas baixas.
Uniprocessadores / Multiprocessadores
- Distribuição de tarefas entre os vários processadores.
- Minimização das comunicações entre processadores.
Benchmarks
- Programas que medem o desempenho de diferentes computadores.
- Ex: SPEC (System Performance Evaluation Cooperative)
EspecRatio
- Medição da execução normalizada de 12 benchmarks diferentes.
Lei de Amdahl
- Aumento de desempenho limitado pelo uso da melhoria.
Máquinas de estado finito
- Modelos que representam um sistema com um número limitado de estados.
- Transições entre os estados definidas por regras e transições.
Formalismos mais complexos
- Expressões regulares: padrões de símbolos.
- Máquinas de pilha: memória para resultados temporários.
- Gramáticas independentes de contexto: regras que determinam padrões de símbolos.
- Máquinas de Turing: memórias de acesso aleatório.
Abstração e comunicação entre camadas
- Níveis de abstração, camadas, aplicações, linguagens de programação, bibliotecas, sistemas operativos, arquiteturas, circuitos integrados, portas lógicas, transistores, etc.
- Domínios do software e digital
- Domínio analógico: abstraindo o funcionamento electrónico do computador
Bibliotecas e Frameworks
- Pré-fabricação de código com funcionalidades pré-definidas para aplicações.
- Os programadores não precisam criar tudo.
Sistemas operativos
- Camada com ferramentas para comunicação de aplicações com o computador, como gerir a memória.
- Kernel (núcleo): controla a comunicação e o hardware.
Arquitetura
- É a abstracção do funcionamento do computador.
- Instruções, Processadores, Memória, etc..
Circuito Integrado (Chip)
- Agrega milhões/biliões de unidades elétricas para funções específicas: processador, memória.
Componentes integradas
- CPU, memória, periféricos, etc.
- Organização dentro do computador.
- Interligação através de sistemas.
Portas lógicas
- Circuitos eletrônicos que executam operações lógicas (AND, OR, NOT).
- Transformam as tensões eléctricas em símbolos 1 e 0 que são usados nos computadores, ou verdadeiro e falso.
Multithreading por Hardware
- Thread: unidade leve de processo que pode executar tarefas simultaneamente
- Compartilham espaço de memória em processadores para maior eficiência.
Processadores Multicore e memória partilhada
- A divisão de processadores multicore num único espaço com memória partilhada otimiza o desempenho do processo.
- Unified Memory Address (UMA) com latência de acesso a memória constante para qualquer processador.
NUMA (Non-Unified Memory Access)
- Espaço de endereçamento de memória diferente para vários processadores.
Unidade de processamento gráfico (GPU)
- Aceleradores para processamento rápido de tarefas.
- Usam Multithreading
- Utilizam memórias otimizadas para largura de banda.
Clusters e computadores de larga escala
- Interligação de vários computadores para maior capacidade.
- Paralelismo e otimização distribuída.
- Partilha de recursos para cálculos e comunicações (custo-eficiente).
Modelos de computação em nuvem
- Utilizam o paralelismo de vários computadores.
- Serviços (SaaS, PaaS, IaaS).
Benchmarks
- Programas que medem o desempenho de diferentes computadores.
Administração de sistemas
-
Tarefas um administrador de sistemas pode executar (planear e desenhar redes/sistemas de backup, criação e apagamento de contas, gestão de problemas, atualização e instalação de software, segurança do sistema, e comunicação com os utilizadores).
-
Método super-utilizador (sudo).
-
Meio mais apropriado para efetuar tarefas num sistema operativo.
-
Formas de comunicação com utilizadores (gráficos ou linha de comando), uso de ferramentas para tarefas administrativas (consulta de informação, histórico, ou tempo real, ou scripts).
-
Códigos de ética profissional
Modelos de aplicações distribuídas
-
Aplicativos centrais ou distribuídos em múltiplos nós.
-
Modelo Cliente-Servidor: um servidor central armazena e processa os dados; os clientes pedem dados e funcionalidades ao servidor.
-
Modelo Ponto-a-Ponto (P2P): os computadores atuam como clientes e servidores.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Teste seus conhecimentos sobre os diferentes tipos de computadores e suas funções, incluindo PCs, servidores e dispositivos móveis. Explore conceitos como computação em nuvem, Lei de Moore e abstração no desenvolvimento de software. Além disso, entenda a hierarquia de memórias e como capacidade e rapidez afetam o desempenho computacional.