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

Ordenar por
Matéria
Nível

Padrões de Projeto — Resumo e Quando Usar

Classificado em Computação

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

Resumo dos principais padrões de projeto (design patterns), com motivação, uso e exemplos práticos para facilitar a tomada de decisão na arquitetura de software.

Abstract Factory

Proporciona uma interface para criação de famílias de objetos relacionados ou dependentes sem especificar suas classes concretas.

Quando utilizar

  • O sistema deve ser configurado com uma de múltiplas famílias de produtos.
  • Estes produtos relacionados são projetados para ser utilizados juntos, e você quer garantir essa restrição.

Exemplo

Montar uma interface gráfica para vários sistemas operacionais; família de componentes gráficos:

  • Windows
  • Linux

Builder

Separa a construção de um objeto complexo da sua representação, permitindo diferentes tipos de representação... Continue a ler "Padrões de Projeto — Resumo e Quando Usar" »

Guia de Estudo: Camada de Enlace e Protocolos Ethernet

Classificado em Computação

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

Questões sobre Camada de Enlace e Protocolos de Rede

Quais são os três fatores que devem ser considerados na implementação de um protocolo de Camada 2 em uma rede? (Escolha três.)

  • O escopo geográfico da rede;
  • A implementação da camada física;
  • O número de servidores a serem interligados.

Consulte a imagem. Supondo que a rede seja convergente (ou seja, as tabelas de roteamento e tabelas ARP estão completas), qual endereço MAC ocupará o campo de endereço de destino dos quadros Ethernet destinados ao servidor web?

  • 00-0c-85-cf-65-c0

Quais opções são propriedades do acesso ao meio baseado em contenção em mídias compartilhadas? (Escolha três.)

  • Não-determinístico;
  • Menos sobrecarga;
  • Existência de colisões.

O que é correto afirmar sobre

... Continue a ler "Guia de Estudo: Camada de Enlace e Protocolos Ethernet" »

Estados, Criação e Término de Processos

Classificado em Computação

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

Estados dos Processos

1. Em execução: Realmente usando a CPU naquele momento.

2. Pronto: Executável, temporariamente parada para dar lugar a outro processo.

3. Bloqueado: Incapaz de executar enquanto não ocorre um evento externo.

Casos de Transição de Estado

Caso 1: O sistema operacional descobre que um processo não pode prosseguir.

Casos 2 e 3: Causados pelo escalonador, sem que o sistema saiba:

  • Caso 2: O escalonador decide que o processo já teve tempo suficiente de CPU e aloca o tempo de CPU para outro processo.
  • Caso 3: Ocorre quando todos os processos já obtiveram o tempo de CPU de maneira justa, e é hora de voltar para o 1º processo.

Caso 4: Evento externo (como chegada de uma entrada). Se nenhum processo estiver executando neste momento,... Continue a ler "Estados, Criação e Término de Processos" »

Gestão de Memória e Sistemas de Arquivos

Classificado em Computação

Escrito em em português com um tamanho de 13,74 KB

Endereçamento e Swapping

Endereçamento absoluto ou relativo - O programa pode ser executado em qualquer partição ou processo da memória.

Swapping - "troca" de armazenamento entre memória principal e secundária; consiste em retirar o programa inteiro da memória enquanto ele não estiver sendo executado. Em seguida, ele é armazenado no disco rígido (HD).

Problemas - Ineficiência em função do tempo gasto em cada carregamento.

Solução - Implementação no hardware dos computadores para permitir que a relocação seja realizada durante a execução do programa.

Vantagens e desvantagens do Swapping

  • Vantagens:
    • Maior compartilhamento da memória;
    • Maior throughput;
    • Eficiência (quando bem implementado).
  • Desvantagens:
    • Elevados custos das operações
... Continue a ler "Gestão de Memória e Sistemas de Arquivos" »

Algoritmos de Busca e Ordenação em Estruturas de Dados

Classificado em Computação

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

Algoritmos de Busca

Busca Sequencial

  • Percorre cada item do vetor até encontrar a informação solicitada.
  • Apresenta baixo desempenho quando se tem uma grande quantidade de registros.
  • Melhor desempenho quando os dados estão ordenados.

Busca Binária

  • Divide o vetor ao meio e compara o elemento central com o procurado.
  • Se o elemento procurado for menor, repete o processo no lado esquerdo; se for maior, repete no lado direito.
  • Os elementos devem estar ordenados.
  • Desempenho melhor que a busca sequencial.

Busca por Interpolação

  • É uma variação da busca binária.
  • Escolhe a próxima posição pesquisada com base em uma estimativa sobre a posição do elemento procurado em relação ao restante do vetor.
  • Pode ser mais eficiente do que a pesquisa binária,
... Continue a ler "Algoritmos de Busca e Ordenação em Estruturas de Dados" »

Sistemas de Arquivos e Gerenciamento de Disco

Classificado em Computação

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

Questões sobre Sistemas Operacionais

1. Explique qual é a finalidade dos sistemas de arquivos?

Resposta: É um conjunto de estruturas lógicas e de rotinas que permitem ao sistema operacional controlar o acesso ao disco rígido.

2. Explique o que são "clusters" ou unidades de alocação?

Resposta: É o nome dado a um sistema que seleciona dois ou mais computadores para que estes trabalhem de maneira conjunta no intuito de processar uma tarefa. Estas máquinas dividem entre si as atividades de processamento e executam este trabalho de maneira simultânea.

3. Comente sobre as vantagens e desvantagens em se definir grandes unidades de alocação em um disco rígido?

Resposta: Pode-se obter resultados tão bons quanto ou até superiores aos de um... Continue a ler "Sistemas de Arquivos e Gerenciamento de Disco" »

Padrões de Projeto: Guia para Desenvolvedores

Classificado em Computação

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

Padrões de Projeto: O Que São e Por Que Usar?

Padrões de projeto existem para evitar reinventar algo que já foi inventado, para melhorar a qualidade do software, a sua documentação e facilitar a comunicação geral. Eles não definem soluções exatas, não resolvem todos os problemas de design e não são exclusivos de Orientação a Objetos (OO).

Características dos Padrões de Projeto

  • Encapsulamento: Deve encapsular um problema ou uma solução bem definida e específica, deve ser independente do restante do software e sua aplicação deve ser clara.
  • Generalidade: Deve permitir a construção de outras implementações.
  • Equilíbrio: Deve haver uma razão para utilizar o padrão (restrição, análise abstrata, observação, exemplos e
... Continue a ler "Padrões de Projeto: Guia para Desenvolvedores" »

Software Livre, Comunidades e Inclusão Digital

Classificado em Computação

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

Software Livre vs. Código Aberto

O termo código aberto afirma que qualquer pessoa pode ter acesso ao código do programa, mas o seu desenvolvedor determina as suas condições de uso.

Entre os motivos alegados para a utilização de software privado no servidor, incluem-se a facilidade de uso e a dificuldade de encontrar técnicos especialistas em sistemas de software livre.

Já nos sistemas que utilizam softwares livres, em todos os casos, o motivo da utilização está diretamente relacionado à segurança da rede, à sua leveza e à facilidade de modificação e acesso ao código-fonte.

Por que Usar Software Livre?

  • Utilizar o software para qualquer finalidade;
  • Interagir e compartilhar soluções com a sua comunidade, seja ela física ou virtual.
... Continue a ler "Software Livre, Comunidades e Inclusão Digital" »

CMMI e Requisitos Funcionais e Não Funcionais

Classificado em Computação

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

CMMI

Inicial: Processos são imprevisíveis, pouco controlados e reativos.

Gerenciado: Processos são caracterizados por projeto e as ações são frequentemente reativas.

Definido: Processos são caracterizados para a organização e são proativos.

Quantitativamente Gerenciado: Processos são medidos e controlados.

Otimização: Foco contínuo na melhoria dos processos.

Modelos de Desenvolvimento

Linear: Definição de requisitos, viabilidade do sistema, estabilização dos requisitos, projeto, modelagem.

Cascata: Processo linear, 7 fases: Viabilidade, Requisitos, Projeto, Codificação e Teste, Integração, Entrega e Aceitação, Manutenção.

Prototipação (Iterativo): Ouvir o cliente, avaliação do cliente, desenho e construção.

Incremental:... Continue a ler "CMMI e Requisitos Funcionais e Não Funcionais" »

Conceitos Fundamentais de E/S e Gerenciamento de Dispositivos

Classificado em Computação

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

13) Por Que os Arquivos de Saída para Impressora Normalmente São Colocados em SPOOL no Disco Antes de Serem Impressos?

Como a impressora é um periférico muito mais lento que o computador, este teria de ficar esperando a impressão terminar para, então, executar uma nova tarefa. Para resolver esse problema, a maioria das impressoras tem um buffer, ou seja, uma memória interna utilizada para armazenar temporariamente os dados que estão vindo do computador. Com isso, os dados são transferidos do computador para o buffer, liberando-o mais rapidamente. Quanto maior o buffer da impressora, mais cedo esta liberará o computador.

A solução adaptada por todos os sistemas operacionais (com exceção do DOS) chama-se spooler. O aplicativo gera... Continue a ler "Conceitos Fundamentais de E/S e Gerenciamento de Dispositivos" »