Apontamentos, resumos, trabalhos, exames e problemas de Computação

Ordenar por
Matéria
Nível

Conceitos Essenciais: IoT e Computação em Nuvem

Classificado em Computação

Escrito em em português com um tamanho de 4,17 KB

Internet das Coisas (IoT)

Exercício 1: O que é Internet das Coisas?

A Internet das Coisas (IoT) é descrita como a conexão de "coisas" ou endpoints, como sensores, sistemas ou produtos. Podem ser "coisas" conectadas com ou sem fios. Essas "coisas" conectadas geram dados que as empresas podem usar em tomadas de decisões, planejamento de produtos ou melhoria de processos, por exemplo.

Computação em Nuvem (Cloud Computing)

Definições Fundamentais

Cloud Computing é um modelo que possibilita o acesso via rede a vários recursos de qualquer lugar. Os processos são armazenados em outro local que não está fisicamente em sua máquina.

Tipos de Data Center

  • Classic Data Center: Servidores alocados fisicamente no seu local, onde somente roda uma plataforma.
... Continue a ler "Conceitos Essenciais: IoT e Computação em Nuvem" »

Fundamentos de Compiladores: Autômatos, Análise e Parsing

Classificado em Computação

Escrito em em português com um tamanho de 2,95 KB

Autômato com Pilha (AP) e Linguagens Livres de Contexto

  • Linguagens Livres de Contexto (LLC) compreendem um universo mais amplo do que as linguagens regulares.
  • As LLCs são geradas pelas Gramáticas Livres de Contexto e reconhecidas por um Autômato com Pilha (AP), que possui memória auxiliar do tipo pilha.

Estrutura do Autômato com Pilha

O Autômato com Pilha é uma máquina construída por 4 partes:

  • Fita: Dispositivo de entrada.
  • Unidade de Controle: Reflete o estado atual da máquina.
  • Programa ou Função de Transição: Comanda leituras e define o estado da máquina.
  • Pilha: Memória auxiliar sem limites de tamanho.

Reconhecimento da Palavra

O reconhecimento de uma palavra pode resultar em três cenários:

  1. O autômato para e a palavra é reconhecida
... Continue a ler "Fundamentos de Compiladores: Autômatos, Análise e Parsing" »

Banco de Dados Textuais, GED e Hipertexto

Classificado em Computação

Escrito em em português com um tamanho de 12,07 KB

Banco de Dados Textuais

Banco de dados textuais – armazena as palavras e a relação delas com outras palavras. Blocos de textos identificados por um nome. Base de texto armazenada de forma estruturada.

Tipos de Banco de Dados Textuais

  • COM ESTRUTURA - Campos de tamanho variável. Um dos padrões existentes para bancos textuais estruturados é o padrão ISO. A área ainda está em desenvolvimento, estando menos organizada que a de bancos de dados relacionais.

  • SEM ESTRUTURA OU POSSUINDO REGISTROS COM DIFERENTES ESTRUTURAS NO MESMO ARQUIVO - Formato livre, apenas texto, sem campos, ou registros com campos diferentes, sem exigência de homogeneidade na entrada de dados. O padrão mais usado para texto livre é o ANSI.

Operadores Booleanos

  • OU: função
... Continue a ler "Banco de Dados Textuais, GED e Hipertexto" »

Guia Completo de Testes de Software e Avaliação de IHC

Classificado em Computação

Escrito em em português com um tamanho de 10,91 KB

O que é teste?

Teste é um conjunto de atividades que podem ser planejadas com antecedência e executadas sistematicamente. Por essa razão, deverá ser definido para o processo de software um modelo (template) para o teste.

Quem realiza?

Gerente do projeto, engenheiros de software e especialistas em testes.

Como garantir que o trabalho foi realizado corretamente?

Revisando as especificações antes dos testes, avaliar a integridade dos casos de testes e das tarefas de testes.

Ciclo de Erro no Software:

Engano – Introduz um defeito no software.

Defeito – Deficiência mecânica ou algorítmica que, se ativada, pode produzir um erro, podendo levar a uma falha.

Erro – Item de informação ou estado de execução inconsciente, se propagado até a... Continue a ler "Guia Completo de Testes de Software e Avaliação de IHC" »

Sincronização e Segurança em Sistemas Distribuídos

Classificado em Computação

Escrito em em português com um tamanho de 4,81 KB

Lamport – Feito para sincronização de clocks lógicos. Exigência: ordenação global de todos os eventos do sistema. Para cada par de eventos, deve-se saber qual aconteceu antes.

Passos:

  1. Envia mensagem a todos os processos e para si mesmo (mensagem = nome da região, seu número, tempo corrente).
  2. Quando um processo recebe:
    • a) Se o receptor não estiver usando ou não for usar, retorna OK.
    • b) Se estiver usando, não responde e guarda requisição na fila.
    • c) Se também quer usar, verifica o tempo da mensagem recebida com o da enviada. Se for menor, envia OK. Se não, não responde e guarda na fila.
  3. Após enviar a requisição, aguarda o OK dos demais.
  4. Termina o uso, envia OK para todos da fila.

Características:

  • Nenhum processo espera indefinidamente.
... Continue a ler "Sincronização e Segurança em Sistemas Distribuídos" »

Gestão de Configuração e Controle de Produtos de Software

Classificado em Computação

Escrito em em português com um tamanho de 2,85 KB

Gestão de Produtos de Software

1. Tipos de Produtos de Software e Objetivos do Controle

Tipos de Produtos de Software: Documentos, códigos-fonte de unidades de programas, arquivos de dados e diagramas.

Objetivos do Controle de Produto de Software: Controlar e gerenciar o desenvolvimento de software e suas alterações de versões.

2. Controle de Produtos em Projetos de Software

O controle de produtos de software pode ser realizado através do armazenamento em repositórios ou diretórios. Estes repositórios devem ser acessíveis a todos, mas as alterações devem ser restritas às pessoas responsáveis pelo controle.

3. Importância do Controle de Produtos

O controle de produtos é crucial para garantir que apenas alterações autorizadas sejam... Continue a ler "Gestão de Configuração e Controle de Produtos de Software" »

Chaves, Normalização e Anomalias em Bancos de Dados

Classificado em Computação

Escrito em em português com um tamanho de 4,64 KB

Conceitos Essenciais de Chaves em Bancos de Dados

Chave Primária, Candidata ou Alternativa

Para esses tipos de chaves, é criado um índice com valores únicos ou não repetidos, tendo em vista que os valores dessas chaves nas tuplas não podem se repetir ou são únicos em cada tupla.

O CPF do candidato é uma chave candidata alternativa, tendo em vista que a matrícula é a chave primária.

Chave Estrangeira

O índice criado para uma chave estrangeira depende da cardinalidade do relacionamento.

  • Relacionamento 1:1: Neste tipo de relacionamento, é criado um índice com valores únicos, tendo em vista que os valores da chave estrangeira que representam um relacionamento 1:1 não podem se repetir.
  • Relacionamento 1:N e N:N: É criado um índice com
... Continue a ler "Chaves, Normalização e Anomalias em Bancos de Dados" »

Processos, Threads e Escalonamento em Sistemas Operacionais

Classificado em Computação

Escrito em em português com um tamanho de 5,75 KB

Estados e Transições de Processos

  • Novo para Pronto: Admitted – Admitido;
  • Pronto para Executando: Scheduler Dispatch – Expedição do escalonador;
  • Executando para Pronto: Interrupt – Interromper;
  • Executando para Terminado: Exit – Sair;
  • Executando para Esperando: I/O or Event Wait – E/S ou espera de evento;
  • Esperando para Pronto: I/O or Event Completion – E/S ou conclusão do evento.

Troca da CPU entre Processos

O sistema operacional interrompe um processo em execução e executa o escalonador de processos para decidir qual processo será executado a seguir. Com isso, o estado do processo atual é salvo no PCB (Process Control Block) e recarregado posteriormente, quando necessário.

Escalonador de Processos

O escalonador de processos seleciona... Continue a ler "Processos, Threads e Escalonamento em Sistemas Operacionais" »

Gerenciamento de Módulos e Informações de Hardware no Kernel Linux

Classificado em Computação

Escrito em em português com um tamanho de 3,12 KB

Módulos do Kernel Linux: Conceitos e Vantagens

Vantagens da Implementação de Drivers via Módulos

Os drivers de dispositivo implementados como módulos no Linux oferecem a vantagem de economizar memória e processamento. Isso ocorre porque os drivers podem permanecer armazenados no sistema de arquivos e só consomem recursos (memória e processamento) quando são carregados ou instalados, aproveitando o suporte a módulos do kernel.

Como Funciona o Suporte a Módulos do Kernel Linux?

Os módulos são funcionalidades (código) que, embora façam parte do kernel, podem estar armazenados em disco de forma inativa. Eles passam a atuar na memória principal, junto ao kernel, no espaço de Kernel, assim que são habilitados.

Essa abordagem proporciona... Continue a ler "Gerenciamento de Módulos e Informações de Hardware no Kernel Linux" »

Fundamentos Essenciais de Modelagem de Dados

Classificado em Computação

Escrito em em português com um tamanho de 4,77 KB

Definição de Entidades e Classes

Pressman (2011, p. 168) simplificou as seis regras de seleção propostas por Coad & Yourdon (1992) que devem ser utilizadas pelo analista ao examinar um objeto em potencial para a Análise Baseada em Objetos. Aqui, fazemos uma adaptação dessa simplificação, aplicando-a em vez de objetos, sobre entidades. Você perceberá que a adaptação é perfeita.

Características para Seleção de Entidades/Classes:

  • Informação Retida: O tipo de entidade/classe em potencial será útil durante a análise se a informação sobre ele precisar ser lembrada para que o sistema possa funcionar. Ex: Aluno, Curso.
  • Serviços Necessários: O tipo de entidade/classe em potencial deve ter um conjunto de operações identificáveis
... Continue a ler "Fundamentos Essenciais de Modelagem de Dados" »