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

Ordenar por
Matéria
Nível

Gerenciamento de E/S e Sistemas de Arquivos em SO

Classificado em Computação

Escrito em em português com um tamanho de 6,56 KB

Gerenciamento de Entrada/Saída (E/S)

Tipos de Dispositivos

Dispositivo de Bloco: É aquele que armazena informação em blocos de tamanho fixo, cada um com seu próprio endereço. Ex.: Discos e fitas magnéticas.

Dispositivo de Caractere: Envia ou recebe um fluxo de caracteres sem considerar qualquer estrutura de bloco. Ex.: Impressoras, mouse, placa de rede.

Controladores e Comunicação

Comunicação CPU-Controlador

A CPU pode se comunicar com um controlador para efetuar uma transferência de E/S por meio da placa controladora (controlador). O controlador tem alguns registradores usados para comunicação com a CPU.

Controladores de Dispositivos

Consiste em um componente mecânico e eletrônico. O trabalho do controlador é converter o fluxo serial... Continue a ler "Gerenciamento de E/S e Sistemas de Arquivos em SO" »

Guia Completo sobre Computadores: Tipos e Componentes

Classificado em Computação

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

O que é um Computador?

É um dispositivo eletrônico capaz de tratar dados e informação.

Por que o Computador foi Criado?

Inicialmente, para fazer cálculos complexos, como os necessários na guerra para indicar a trajetória balística com rapidez e precisão.

Gerações dos Computadores

1ª Geração (Válvulas)

Exemplo: ENIAC. Máquina muito grande com funcionamento a válvulas eletrônicas, programação por cabos e entrada de dados por cartões perfurados.

2ª Geração (Transistores)

Utilização de transistores em vez de válvulas, tornando os computadores menores, mais rápidos e eficientes. Surgimento do programa monitor para sistema operacional.

3ª Geração (Circuitos Integrados)

  • Utilização de Circuitos Integrados (CI), miniaturizando
... Continue a ler "Guia Completo sobre Computadores: Tipos e Componentes" »

Melhores Práticas em Desenvolvimento de Software

Classificado em Computação

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

Organizacionais

  • Administração Geral

    • Gerências: Gerências da empresa - projetos, financeira, marketing e outros.
    • Infraestrutura: Rede, máquinas, espaço, banco de dados e outros.
    • Melhoria: Análise de processos, ferramentas e propostas de melhorias.
    • Treinamento ou RH: Foco no aperfeiçoamento contínuo dos colaboradores.
    • Gestão de Ativos: Patrimônio - visando reuso/lucro.
    • Programa de Reuso: Foco em refatoração e componentização de módulos de sistemas de modo a viabilizar o reuso entre módulos de projetos distintos no longo prazo.

Atividades Primárias

  • Aquisição (Proposta -> Análise): Capacidade de analisar as propostas dos terceiros.
  • Fornecimento (Proposta -> Elaboração): Competência para elaborar proposta.
  • Desenvolvimento:
... Continue a ler "Melhores Práticas em Desenvolvimento de Software" »

Bancos de Dados: Distribuídos, Orientados a Objetos, Cliente-Servidor e Paralelismo

Classificado em Computação

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

Bancos de Dados Distribuídos

Bancos de dados distribuídos são sistemas compostos por múltiplos bancos de dados interligados, funcionando como um único banco lógico. Por exemplo, cada loja Walmart possui seu próprio banco de dados, mas a central tem acesso a todas as informações, visíveis em um único sistema. São independentes, mas operam de forma unificada.

Vantagens dos Bancos de Dados Distribuídos

Contingência: se a conexão de um servidor cai, ele continua operando e, ao restabelecer a conexão, sincroniza as informações.

Desvantagens

Complexidade, segurança, falta de padrões, inexperiência.

A distribuição é transparente: os usuários interagem com o sistema como se fosse um único. Isso se aplica ao desempenho, métodos... Continue a ler "Bancos de Dados: Distribuídos, Orientados a Objetos, Cliente-Servidor e Paralelismo" »

Hierarquia de Armazenamento, Protocolos e Segurança de Rede

Classificado em Computação

Escrito em em português com um tamanho de 8,98 KB

Cache: É a forma de armazenamento mais rápida e mais cara. A memória cache é pequena e gerenciada pelo sistema operacional ou por uma controladora específica. Não é necessário se preocupar com o gerenciamento do armazenamento em cache em um sistema de banco de dados.

Memória Principal: É a mídia de armazenamento utilizada para os dados disponíveis para serem processados. As instruções de máquina operam sobre a memória principal. O conteúdo desta memória pode ser perdido em caso de falta de energia ou falha no sistema.

Memória Flash: Conhecida como EEPROM (electrically erasable programmable read-only memory), é diferente da memória principal, pois sobrevive à falta de energia. A leitura de seus dados é tão rápida quanto... Continue a ler "Hierarquia de Armazenamento, Protocolos e Segurança de Rede" »

Exercícios de Estruturas de Dados e Algoritmos: Árvores, Grafos e C

Classificado em Computação

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

Questão 1: Árvore B*

Considere a seguinte Árvore B* de ordem m=2 (ou seja, os nós internos podem ter no mínimo dois elementos):

  1. a. Inserções na Árvore B*

    Esquematize como ficaria a árvore após as seguintes inserções: 72, 75, 95, 110 e 115.

  2. b. Remoções na Árvore B*

    Considerando as chaves do item (a) inseridas, esquematize como ficaria a árvore após as seguintes remoções: 60, 29, 45, 52 e 70.

Questão 2: Grafos e Busca em Largura (BFS)

Seja um grafo G cujos vértices são os inteiros de 1 a 8 e os vértices adjacentes a cada vértice são dados pela tabela abaixo:

Vértice | Vértice Adjacente
--------|------------------
1       | 4, 3 e 2
2       | 1, 3, 4 e 5
3       | 1, 2 e 4
...

Assuma que, em um caminhamento de G, os vértices... Continue a ler "Exercícios de Estruturas de Dados e Algoritmos: Árvores, Grafos e C" »

Scrum: Guia Completo do Framework Ágil para Projetos

Classificado em Computação

Escrito em em português com um tamanho de 14,9 KB

O que é Scrum?

Scrum surge da necessidade de aumentar o índice ou taxa de sucesso em projetos.

Scrum vs. Métodos Tradicionais

Enquanto métodos tradicionais focam no triângulo de escopo, custo e prazo, Scrum se destaca ao integrar a qualidade, visando gerar projetos ágeis e de alta qualidade.

A concentração exclusiva em escopo e requisitos pré-estabelecidos nem sempre resulta em valor.

Agilidade significa entregar resultados e valor de forma contínua.

Características da Agilidade

  • Método ágil para gerenciamento de projetos
  • Pequenos times auto-organizados
  • Flexibilidade - um "Framework"
  • Visibilidade e Adaptação

Manifesto Ágil

Criado em 2001, o Manifesto Ágil visa melhorar o desenvolvimento de software, priorizando:

  • Indivíduos e interações
... Continue a ler "Scrum: Guia Completo do Framework Ágil para Projetos" »

Questões Essenciais de Engenharia de Software: ISO 25000, Paradigmas e Testes

Classificado em Computação

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

Atributos ISO/IEC 25000 em Cenários de Software

Para cada uma das histórias abaixo, enumere e justifique os atributos aplicáveis (Grupo/Atributo, Ex: Funcionalidade/Acurácia):

  1. O sistema X possui um programa de instalação no Windows, porém, para instalar no Linux, o usuário precisa recorrer a um processo manual - Portabilidade/Capacidade para ser Instalado.
  2. Quando temos que efetuar alguma manutenção no software Y, em função da arquitetura ruim e do alto acoplamento entre os módulos, qualquer alteração no código pode facilmente contaminar negativamente uma série de funcionalidades presentes em diferentes módulos - Manutenibilidade/Estabilidade.
  3. O sistema Z permanece estável durante o tempo médio de uma semana, sendo observado
... Continue a ler "Questões Essenciais de Engenharia de Software: ISO 25000, Paradigmas e Testes" »

Conceitos Fundamentais de Java e JVM

Classificado em Computação

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

Conceitos Fundamentais de Java: JVM, Garbage Collector, JIT e HotSpot

1. Explique o que é a JVM (Java Virtual Machine), Garbage Collector, JIT e HotSpot.

  • JVM (Java Virtual Machine): É um programa que carrega e executa aplicativos Java, convertendo bytecodes em código executável de máquina. A JVM gerencia os aplicativos durante a execução. Graças à JVM, programas Java podem funcionar em qualquer plataforma (hardware e software) que possua uma versão da JVM, tornando-os independentes da plataforma.
  • Garbage Collector: Responsável por liberar espaço na memória, removendo objetos que não estão mais sendo utilizados.
  • JIT (Just-In-Time Compiler): Técnica utilizada para otimizar o desempenho da JVM, atuando como um compilador em tempo de
... Continue a ler "Conceitos Fundamentais de Java e JVM" »

Glossário de Termos de Segurança da Computação

Classificado em Computação

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

Segurança

É a minimização do risco associado às atividades de computação, incluindo a ligação a redes. Aplicação da política de segurança. Quanto mais segurança, menos praticidade.

Criptografia

Mensagens devem ter redundância, é necessário um método para evitar os ataques, algoritmo de criptografia de conhecimento público.

Criptografia Simétrica

O lado que criptografa usa uma chave, e o lado para descriptografar usa a mesma chave.

Criptografia Assimétrica

Uma chave para criptografar e outra diferente para descriptografar (pública ou privada).

Segurança em Algoritmos Criptográficos

Fatores importantes:

  • Geração de chaves (número aleatório)
  • Mecanismos de troca de chaves públicas (criptografia/descriptografia)
  • Taxa de troca de
... Continue a ler "Glossário de Termos de Segurança da Computação" »