Untitled

Transcrição

Untitled
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Prefácio
Este é o primeiro volume da série
Além do Gabarito,
Handbook de Questões de TI Comentadas para Concursos
que traz para você a oportunidade de se preparar para concursos de TI
através do estudo de provas reais. Além disso, não faltará embasamento teórico ao concurseiro,
uma vez que os comentários elaborados não se limitam à simples resolução das questões.
Este volume traz a prova para Analista de Suporte do BNDES, aplicada em meados de 2008 pela
Fundação Cesgranrio. São 40 questões comentadas "além do gabarito"para você se preparar não
só para os concursos do BNDES, mas, também, para todos os demais concursos de alta concorrência na área de TI.
Pelo fato do BNDES oferecer salário e benefícios superiores aos da maioria das empresas públicas
e órgãos governamentais, o cargo de Analista de Suporte do BNDES é um dos mais disputados
no Brasil na área de TI.
Trata-se de uma prova completa, que cobre assuntos como segurança de informação, arquitetura
de computadores, banco de dados, governança de TI, gerenciamento de projetos e muito mais.
Bons estudos,
Equipe Handbook de TI
Página 1 de 46
Handbook de Questões de TI Comentadas para Concursos
31.
Tags:
Volume 01
linux, comandos linux,
No Linux, que comando é utilizado para criação de links simbólicos?
(a). dmesg
(b). rsync
(c). mv -f
(d). ln -s
(e). chmod -l
Solução:
(A) ERRADA
O comando dmesg é um comando do UNIX utilizado para imprimir as mensagens do
kernel na saída padrão.
Por padrão, as mensagens do kernel são salvas do arquivo
/var/log/dmesg. O parâmetro mais comum do comando dmesg é o -n, que serve para
controlar o nível de log que será enviado para a saída padrão. Usualmente, o comando
dmesg é utilizado para diagnosticar problemas durante a etapa de inicialização do sistema.
(B) ERRADA
O rsync é um aplicativo UNIX que sincroniza diretórios e arquivos entre dois computadores. O aplicativo trabalha de forma incremental, sincronizando apenas as partes
alteradas dos arquivos, poupando a rede e tornando a sincronização mais rápida.
O
rsync também é capaz de preservar links, propriedades e permissões dos arquivos, bem
como as datas de criação e modicação.
(C) ERRADA
No UNIX, o comando mv é utilizado para renomear um arquivo ou movê-lo de um diretório para outro. Com a opção -f, o mv irá mover o arquivo sem solicitar a conrmação
ao usuário, mesmo que um arquivo de mesmo nome já exista no diretório de destino.
(D) CORRETA
O comando ln é utilizado par criar links entre arquivos ou diretórios. Por sua vez, os
links são pseudo arquivos que apontam para um arquivo real. No UNIX, existem basicamente dois tipos de links: os hard links e os links simbólicos. Os links simbólicos são
criados pela opção -s do comando ln.
Um hard link é uma cópia de uma entrada do sistema de arquivos. As duas entradas
contém nomes diferentes, mas apontam para o mesmo inode, de modo que o conteúdo e
as permissões sejam compartilhados. Embora os hard links não ocupem espaço útil no
sistema de arquivos, eles possuem duas limitações básicas. A primeira é que o hard-link
e o arquivo precisam estar no mesmo sistema de arquivos, e a segunda é que os hard
links não podem apontar para diretórios.
Os links simbólicos são pequenos arquivos que apontam para outros arquivos, que podem estar localizados em qualquer lugar, inclusive em sistemas de arquivos remotos.
Ao contrário dos hard links, os links simbólicos ocupam espaço, embora pequeno, no
Página 2 de 46
Handbook de Questões de TI Comentadas para Concursos
sistema de arquivos e podem apontar para diretórios.
Volume 01
As permissões do arquivo real
são herdadas pelos links simbólicos e, caso o arquivo real seja apagado, o link simbólico
torna-se um dead link, pelo fato de apontar para um arquivo ou diretório que não mais
existe no sistema de arquivos.
(E) ERRADA
O comando chmod é utilizado para modicar as permissões de acesso em arquivos ou
diretórios no UNIX. Com o chmod é possível, por exemplo, denir se um usuário ou um
grupo pode ler, alterar ou executar os arquivos. No caso dos diretórios, o privilégio de
execução corresponde ao direito de listar seu conteúdo.
32.
Tags:
redes de computadores, TCP/IP, endereçamento IP,
Suponha uma rede TCP/IP formada por 3 equipamentos conectados em um mesmo switch:
Estação X, IP 192.168.10.100/24
Estação Y, IP 192.168.10.200/24
Roteador R, IP 192.168.10.1/24
Considerando-se que o default gateway (default route, rota padrão) de cada estação é R,
observe as armativas abaixo.
I - Caso X inicie uma conexão TCP destinada a Y, os pedidos de requisição de conexão
(SYN) passarão por R.
II - Todas as mensagens ARP Request enviadas por Y são recebidas por R.
III - Sem que o endereçamento IP seja alterado, é possível adicionar 253 estações a essa rede.
SOMENTE está(ão) correta(s) a(s) armativa(s)
(a). I
(b). II
(c). I e II
(d). II e III
(e). I, II e III
Solução:
A armativa I é incorreta. Como X e Y pertencem a mesma subrede, as requisições enviadas de X para Y não passarão por R. As requisições partindo de X ou Y só passarão
por R caso sejam destinadas a alguma estação localizada em uma subrede diferente de
192.168.10.0/24.
A alternativa II é correta.
As mensagens ARP Request (Address Resolution Proto-
col) tem por objetivo recuperar o endereço MAC de outros elementos da rede, para os
quais é conhecido o endereço IP. Em linhas gerais, quando Y precisa descobrir o endereço
MAC de X, o processo é o seguinte:
•
Y monta um pacote ARP Request com a pergunta "Quem tem o IP 192.168.10.100?"
•
Y envia o pacote para o endereço de broadcast FF:FF:FF:FF:FF:FF
Página 3 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
•
Todos os integrantes da subrede recebem o pacote ARP Request
•
Ao receber o pacote, X verica que é capaz de receber a pergunta
•
X monta um pacote ARP Response contendo seu endereço MAC e o envia diretamente a Y
•
Y recebe o ARP Response, e agora está preparado para montar o pacote e endereçálo com o MAC de X
A alternativa III é incorreta.
A subrede 192.168.10.0/24 contém 256 endereços.
No
entanto, a faixa de endereçamento útil é de 192.168.10.1 até 192.168.1.254, já que os
endereços 192.168.10.0 e 192.168.10.255 são os endereços de rede e de broadcast, respectivamente. Ou seja, a subrede em questão pode conter, no máximo, 254 elementos.
Como X, Y e R já consumiram 3 desses endereços, podem ser adicionados, no máximo,
mais 251 elementos a essa subrede.
33.
Tags:
gerenciamento de identidades, single sign-on,
No âmbito de segurança, é INCORRETO armar que o single sign-on:
(a). permite que um usuário se autentique uma única vez para acessar múltiplos sistemas e aplicações.
(b). é aplicável em sistemas WEB, mesmo que não se utilize certicação digital.
(c). é implantado mais facilmente em ambientes de Infra-estrutura homogênea do que
heterogênea.
(d). reduz a complexidade da Infra-estrutura e diculta ataques de forçabruta em senhas.
(e). facilita a gerência e a administração centralizada de identidades.
Solução:
Single sing-on é um método de controle de acesso que habilita ao usuário a realizar o
logon uma vez e ganhar acesso a múltiplos recursos da rede sem a necessidade de se
autenticar novamente. As soluções de single sign-on podem ser implementadas de várias
formas, por exemplo, por meio do uso de smarts cards, certicados digitais e kerberos.
Entre as principais vantagens das soluções de single sign-on estão a utilização de um
método único de autenticação, o que acaba por facilitar a administração. Além disso, o
single sign-on pode aumentar a produtividade e reduzir o número de problemas com a administração de senhas. A desvantagem mais clara do single sign-on refere-se a segurança
das informações.
Caso um atacante A venha a descobrir a senha de B , automatica-
mente ele terá acesso a todos os sistemas de B. Além disso, as soluções de single sign-on
geralmente fazem uso de um repositório central de autenticação, o que representa um
ponto único de falha e de invasão. Caso um atacante domine o repositório central, ele
pode vir a comprometer a autenticação de todos os sistemas da rede.
Para contornar o problema de ponto único de falha, muitas organizações optam por implantar soluções de sincronismo de senhas, ao invés de soluções de single sign-on. Assim,
Página 4 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
os usuários precisam decorar apenas uma senha, mas continuam precisando digitá-las
nos diversos sistemas da rede.
A complexidade da Infra-estrutura de soluções de single sign-on depende do ambiente
em que se deseja realizar a implantação. Quanto maior o número de sistemas envolvidos
e mais diversas forem as tecnologias, mais complexa será a implantação do single sign-on.
Além disso, em soluções de single sing-on e de sincronismo de senha, a complexidade da
política de senhas geralmente é denida pelas capacidades do sistema menos restritivo.
Ou seja, se um dos sistemas alvo do single sign-on só aceitar senhas alfanuméricas, a
política de senha geral deverá comportar essa limitação, o que pode diminuir a segurança
da rede como um todo.
34.
Tags:
banco de dados, SGBD,
O catálogo (ou dicionário de dados) de um Sistema Gerenciador de Bancos de Dados Relacional
(a). visa a propiciar o acesso rápido a dados com um determinado valor.
(b). é um item opcional do banco de dados, que pode ser removido caso o usuário
deseje.
(c). é raramente utilizado, sendo sua organização pouco inuente no desempenho do
sistema.
(d). contém informações descritivas sobre os diversos objetos do sistema.
(e). tem seus dados organizados segundo um esquema hierárquico, para maior eciência
no acesso.
Solução:
O dicionário de dados (DD) é a parte do Sistema Gerenciador de Bancos de Dados
(SGBD) responsável por armazenar informações sobre a estrutura geral do banco de
dados, incluindo cada um dos seus elementos de dados. Tais informações são conhecidas
como metadados. Diz-se que o DD é um banco de dados sobre o banco de dados.
No contexto dos bancos de dados relacionais, exemplos de elementos de dados são
tabelas, colunas, relacionamentos, índices, entre outros.
No DD são armazenados os
nomes das tabelas, os relacionamentos entre elas, bem como os nomes da colunas, os
tipos e os domínios de dados.
Além de informações estruturais, o DD também armazena informações de segurança,
que indicam as permissões de acesso aos elementos de dados, assim como informações
físicas, indicando onde e como os dados são armazenados. Elementos como funções e
stored procedures também são armazenados nos dicionários de dados do SGBD.
As implementações de dicionário de dados podem variar de acordo com a tecnologia
do SGBD. No caso dos bancos de dados relacionais, os dicionários de dados, geralmente,
são implementados como tabelas.
A forma como essas tabelas são indexadas e orga-
nizadas em disco é fator fundamental para o desempenho do banco de dados, pois as
mesmas são acessadas em maior parte das operações realizadas pelos SGBD.
Página 5 de 46
Handbook de Questões de TI Comentadas para Concursos
35.
Tags:
Volume 01
técnicas de programação, modularização de algoritmos,
Considere o projeto da rotina escrita em pseudo-código, apresentada a seguir.
1. função processar() {
2. // recuperar lista do banco de dados
3. // ordenar lista
4. // atualizar lista
5. // enviar lista via e-mail
6. // gravar lista no banco de dados
7. m da função }
Sabendo-se que o desenvolvedor implementou o algoritmo responsável pelas linhas 2, 3, 4, 5
e 6 completamente no corpo da função apresentada acima, quais são as características deste
trecho de código?
(a). Alta coesão e baixa modularização.
(b). Alta coesão e alto acoplamento.
(c). Baixo acoplamento e baixa modularização.
(d). Baixa coesão e baixa modularização.
(e). Baixa coesão e alta modularização.
Solução:
A forma natural de solucionarmos problemas complexos é dividi-los em problemas mais
simples, aos quais chamamos de módulos. Essa divisão em programação é chamada de
modularização.
Um módulo é um grupo de comandos, constituindo de um trecho de algoritmo, com
uma função bem denida e o mais independente possível em relação ao resto do algoritmo.
Devemos utilizar módulos de tamanho limitado, pois módulos muito extensos
acabam perdendo sua funcionalidade. Cada módulo pode denir as próprias estruturas
de dados necessárias para sua execução. A comunicação entre módulos deverá ser feita
através de variáveis globais ou por transferência de parâmetros.
O objetivo da modularização é aumentar a conabilidade, legibilidade, manutenibilidade e exibilidade de um software. Podemos utilizar dois tipos de ferramentas para
fazer a modularização: procedimentos ou funções.
A declaração de um procedimento ou função é composta por um cabeçalho e um corpo.
O cabeçalho, que contém um nome e uma lista de parâmetros, identica o procedimento,
e o corpo contém declarações locais e os comandos do procedimento. Para ativarmos
um módulo, fazemos referência a seu nome e a indicação dos parâmetros atuais.
Quando projetamos um algoritmo devemos construir módulos com apenas um propósito,
alta coesão, e diminuir ao máximo a interação entre eles, baixo nível de acoplamento. Ou
seja, o ideal é projetar software de forma que cada módulo encaminhe uma sub-função
especíca de requisitos e tenha uma interface simples quando visto de outras partes da
estrutura do programa. A independência funcional é fundamental para um bom projeto.
Página 6 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
A coesão mede quão relacionadas ou focadas estão as responsabilidades da classe ou
módulo. Uma classe com baixa coesão faz muitas coisas não relacionadas, ou seja, assumi responsabilidades que pertencem a outras classes, e leva aos seguintes problemas:
difícil de entender; difícil de reusar; difícil de manter; e "delicada"(constantemente sendo
afetada por outras mudanças).
O acoplamento ou conexão é a interdependência relativa entre módulos, ou seja, o que
um módulo conhece sobre o outro.
Mudanças em módulos com baixo acoplamento
não são reetidas em outros módulos. Podemos classicar um software, em relação ao
acoplamento, da seguinte maneira:
•
baixo acoplamento: quando a interface entre módulos se faz através da passagem
de dados;
•
acoplamento moderado: quando a interface entre os módulos é feita por controle,
p.ex., quando o módulo1 passa o controle para o módulo 2;
•
acoplamento elevado:
quando o módulo está ligado a um ambiente externo ao
software, p.ex., a E/S acopla um módulo a dispositivos, formatos e protocolos de
comunicação. Ou ainda, módulos que utilizam variáveis globais.
De acordo com o algoritmo apresentado, o desenvolvedor não se preocupou com a modularização, coesão e acoplamento. Isto é, concentrou todas as funcionalidades em uma
única função. Assim, caracterizando o código com baixa modularidade, baixa coesão e
alto acoplamento.
36.
Tags:
técnicas de programação, passagem de parâmetros,
Observe a rotina abaixo escrita em pseudocódigo.
1. inicio
2. p : inteiro = 20
3. misturar(p,p)
4. imprimir p
5. m
6. procedimento misturar(a:inteiro, b:inteiro)
7. a = a + (b / 2) (b / 5) + 14;
8. b = (a / b) - 1;
9. m da função
Considerando-se a linha 1 como o ponto de entrada, e que os parâmetros `a' e `b' da subrotina são passados por referência, qual será o valor impresso na linha 4?
(a). 0
(b). 1
(c). 19
(d). 20
(e). 40
Página 7 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Solução:
Existem várias formas de passarmos parâmetros entre funções, e a escolha depende do
nosso objetivo.
Em uma passagem de parâmetro por valor, as alterações realizadas nos parâmetros
dentro da função invocada (parâmetros formais) não reetem nos parâmetros da função
invocadora (parâmetros efetivos) correspondente. Neste caso, os parâmetros são de entrada.
Em uma passagem por referência, as alterações realizadas nos parâmetros formais reetem nos parâmetros efetivos da função correspondente. Neste caso, os parâmetros são
de entrada e saída. As alterações dos parâmetros são reetidas, pois se altera o valor do
endereço de memória dos parâmetros.
Na linha 2 do código, a variável p, que é do tipo inteiro, recebe o valor 20. Na linha
3, a função misturar é invocada. Como os parâmetros dessa função são passados por
referência, devemos lembrar que qualquer alteração dentro do corpo da função misturar
reete no valor p. Para essa função, os parâmetros a e b são iguais p, isto é, a = 20 e b
= 20.
Vale destacar que qualquer alteração em a é reetida em b, e em b reetida em a e conseqüentemente em p, pois as três variáveis apontam para o mesmo endereço de memória.
No corpo da função misturar, linha 7, o parâmetro a é computado. O resultado dessa operação é a = 40, e conseqüente b = 40, pois apontam para mesmo endereço de memória,
p. Na linha 8, o parâmetro b é computado. O resultado dessa operação é b = 0. O
valor de p foi atualizado para 0.
Na linha 4, o valor atual de p é 0. Então, o valor impresso de p é igual 0.
Vale lembrar que cada linguagem de programação tem suas regras especícas para realizar a passagem de parâmetros.
37.
Tags:
backup, operação de infra-estrutura,
O backup de um determinado servidor, que possui uma unidade de ta P para armazenamento, demora 2h e 30min para ser concluído. Esse mesmo backup, desse mesmo servidor,
é nalizado em 1h e 40min, quando um dispositivo Q é utilizado como armazenamento. O
desempenho de Q em relação a P é
(a). 50% superior.
(b). 2/3 superior.
(c). 9/23 superior.
(d). 1/3 inferior.
(e). 30% inferior.
Página 8 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Solução:
Para a unidade de ta P, o tempo de backup é de 2h e 30min (150min).
dispositivo Q, o tempo total de backup é de 1h e 40min (90min).
Já para o
O desempenho de
um processo de backup é inversamente proporcional ao tempo gasto. Ou seja, podemos
dizer que o desempenho do backup para P e Q, respectivamente são:
D(P) = K * (1/150) D(Q) = K * (1/100)
Logo, a relação de desempenho de Q em relação a Q pode ser dado pela fórmula:
D(Q/P) = D(Q)/D(P) = 1,5
Portanto, o desempenho de backup usando o dispositivo Q é 50% superior ao desempenho
do backup usando a ta P.
38.
Tags:
RAID, storage, cache,
Oito discos rígidos, cada um com 1TB de capacidade, formam um arranjo do tipo RAID 5.
A esse respeito, considere as armativas a seguir.
I - Caso dois discos falhem simultaneamente, o desempenho de leitura, em média, será
25perda de dados.
II - Nesse arranjo, 1TB é utilizado para dados de redundância e, portanto, o espaço em disco
útil é de 7TB.
III - O disco destinado à paridade efetua muitas operações de escrita e, por isso, é recomendável que possua, pelo menos, 1GB de cache de escrita.
Está(ão) correta(s) somente a(s) alternativa(s)
(a). I
(b). II
(c). III
(d). I e II
(e). I e III
Solução:
Em um arranjo em RAID 5, as informações de paridade são distribuídas ao longo de
todos os discos do conjunto, ao invés de serem armazenas em disco dedicado assim como
ocorre no RAID 4. Entretanto, a informação de paridade é única, ou seja, um valor de
paridade armazenado em um disco é calculado a partir dos outros sete discos. Então,
não será possível recuperar o dado caso mais de um disco falhe. Logo, a alternativa I
está incorreta.
É necessário lembrar que a única diferença em um arranjo em RAID 6 em relação
ao RAID 5, é que o primeiro possui o dobro de bits de paridade, tornando possível a
recuperação quando até dois discos falharem.
A alternativa II está correta, uma vez que o espaço reservado para as informações de
paridade é equivalente a um disco do conjunto (1TB), embora seja distribuído, tornando
o espaço em disco útil equivalente a 7TB (8TB - 1TB).
Página 9 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Como explicado anteriormente, as informações de paridade são distribuídas e, portanto,
não existe disco dedicado para armazenar essas informações. Esse fato torna a alternativa III incorreta.
Logo, somente a alternativa II está correta, tornando C a resposta a ser marcada.
39.
Tags:
gerenciamento de projetos, gerenciamento de custos, análise do valor agregado,
Em determinado momento, um projeto apresenta as seguintes características:
•
custo real (actual cost): R$1.000,00
•
valor agregado (earned value): R$1.200,00
•
valor planejado (planned value): R$1.600,00
Segundo o PMBOK, qual o índice de desempenho de custos (cost performance index) desse
projeto?
(a). 2,5
(b). 1,25
(c). 1,2
(d). 0,625
(e). 0,4
Solução:
O Índice de desempenho de custos (IDC) mede a eciência de custos em um projeto.
Este índice é calaculado a partir da divisão do valor agregado (VA) pelo custo real (CR).
Assim, para este projeto, nós teremos um IDC igual a 1,2 (1.2000/1.000). Este resultado
nos informa que tal projeto encontra-se em uma condição favorável pois o IDC é maior
(ou igual) a 1,0 (caso o IDC fosse menor do que 1,0, diríamos, de acordo com o PMBOK,
que o projeto encontra-se em uma condição desfavorável).
Note que, para esta questão, o valor planejado (VP) fornecido não foi utilizado. Tal valor
é empregado no cálculo de outros índices como, por exemplo, o Índice de desempenho
de prazos (IDP).
40. Segundo o PMBOK, NÃO é característica de um projeto:
Tags:
(a). possuir início e m denidos.
(b). desenvolver-se em etapas e continuar por incrementos.
(c). ser contínuo e repetitivo.
(d). criar serviços únicos.
(e). criar produtos únicos.
Página 10 de 46
gerenciamento de projetos,
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Solução:
Um projeto é um esforço temporário, desenvolvido em etapas, empreendido para criar
um produto, serviço ou resultado únicos.
Todo projeto possui início e nal denidos, sendo que o nal pode ser alcançado por
uma das seguintes formas:
•
Quando os objetivos do projeto tiverem sido atingidos;
•
Quando se tornar claro que os objetivos não serão ou não poderão ser atingidos;
•
Quando o projeto deixa de ser necessário, sendo, portanto, encerrado.
Uma segunda característca de um projeto diz respeito à singularidade do que será entregue, quer seja um produto, um serviço ou um resultado de pesquisa.
Por m, de acordo com a terceira e última característica de um projeto (Elaboração
Progressiva), ele é desenvolvido em etapas e incrementado durante a sua existência.
Considere, por exemplo, o caso em que o escopo de um projeto se aperfeiçoa, no que diz
respeito ao nível de detalhismo, ao longo da sua existência.
41.
Tags:
Apache, web servers, segurança de informação,
No Apache 2.x, que diretiva de conguração está relacionada à segurança por obscuridade?
(a). ServerTokens
(b). HeaderCong
(c). FooterCong
(d). AuthCongLimiter
(e). SecurityHostInfo
Solução:
Segurança por obscuridade é uma técnica que se baseia em esconder informações do
sistema que possam ser utilizadas por um atacante no processo de descoberta de vulnerabilidades. Ao identicar a versão de um sistema, um atacante pode em seguida mapear
quais vulnerabilidades estão presentes.
Por si só, a obscuridade não é suciente na proteção de um sistema, devendo ser utilizada
apenas de forma complementar a outros métodos. Portanto, esconder informações não
é suciente para impedir um atacante que esteja realmente disposto a comprometer um
sistema.
No caso do servidor web Apache, a diretiva de conguração ServerTokens é a responsável
por controlar quais informações são enviadas aos clientes no campo Server, presente no
header da mensagem de resposta. Os valores que a diretiva ServerTokens pode assumir
assim como as informações retornadas no campo Server são mostrados a seguir:
ServerTokens Prod: Retorna apenas o nome do produto. (Server: Apache)
Página 11 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
ServerTokens Min: Retorna o nome do produto e a versão. (Server: Apache/1.3.0)
ServerTokens OS: Retorna o nome do produto, a versão e o sistema operacional hospedeiro. (Server: Apache/1.3.0 Unix)
ServerTokens Full: Retorna o nome do produto, a versão, o sistema operacional hospedeiro, e a lista de módulos instalados.
(Server:
Apache/1.3.0 Unix PHP/3.0 My-
Mod/1.2)
42.
Tags:
J2EE, EJB, servidor de aplicação,
Uma aplicação empresarial contendo componentes EJB e módulos web deverá ser publicada
em um servidor de aplicação compatível com J2EE. No contexto do empacotamento dessa
aplicação para publicação (deploy), é correto armar que
(a). não há como juntar componentes EJB e módulos web em uma mesma aplicação,
pois deverão ser publicados separadamente.
(b). um arquivo EAR poderá conter arquivos WAR e JAR representativos
dos módulos web e EJB.
(c). o tamanho do pacote, em bytes, sempre ca maior que o código original, em virtude
do algoritmo empregado no empacotamento da aplicação em um arquivo EAR.
(d). módulos web não devem ser empacotados, pois isso inviabiliza seu acesso pela
Internet.
(e). arquivos JAR servem apenas para empacotar componentes EJB.
Solução:
Os arquivos JAR (Java Archive) agrupam arquivos de classes e os recursos utilizados por
essas classes, como imagens e propriedades. Os pacotes JAR são muitos utilizados no
mundo Java e são facilmente visualizáveis por softwares de descompactação populares
como o Winzip. A utilização desses arquivos JAR não se restrigem ao empacotamento
de componentes EJB, pois também são utilizados para empacotar componentes Java não
pertencentes ao padrão J2EE. Concluímos, então, que a alternativa E está incorreta.
O que difere um arquivo JAR comum e um arquivo JAR que armazena componentes
EJB são os arquivos "manifest", cuja nalidade é fornecer informações adicionais que
serão utilizadas em tempo de execução.
Os arquivos JAR "comuns"possuem o ar-
quivo meta-inf/Manifest.mf. Já os arquivos que armazenam EJBs possuem o arquivo
META_INF/ejb-jar.xml.
Os módulos web podem ser empacotados em arquivos com extensão WAR (Web Archive)
e não há problema nenhum em relação ao seu acesso pela internet, pois, uma vez que
o arquivo WAR siga as especicações do padrão J2EE, o container web do servidor de
aplicação será responsável em gerar os arquivos HTML para serem entregues ao browser.
Logo, a alternativa D está incorreta.
A alternativa C está errada, uma vez que os arquivos JAR, WAR etc. são compactados
e tendem a possuir tamanho reduzido, embora não haja garantia de que sejam menores
Página 12 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
que o código original.
Um arquivo EAR (Enterprise Application Archive) é utilizado para permitir que uma
aplicação J2EE complexa possa ser facilmente instalada em um servidor J2EE. Ele permite agrupar pacotes JAR comuns, pacotes JAR com EJB's e pacotes WAR. Portanto,
a alternativa B é a alternativa correta para a questão.
43.
Tags:
redes de computadores,
Quantos bits um link Internet de 10 megabits por segundo transmite, em máxima utilização,
em 5 segundos?
(a). 52428800
(b). 50000000
(c). 10000000
(d). 2097152
(e). 2000000
Solução:
Para resolver essa questão é importante saber que, quando se fala de redes e taxas de
transmissão, os multiplicadores Kilo, Mega, Giga e assim sucessivamente são, geralmente, potências de 10 e não de 2. Portanto:
103 bits
6
Megabit = 10 bits
9
Gigabit = 10 bits
1 Kilobit =
1
1
As potências de 2 geralmente são utilizadas para denir tamanhos de memória, e tal
convenção deve ao fato dos computadores atuais serem baseados em lógica binária. Ou
seja:
10 ) bytes = 1.024 bytes
10
10
1 Megabyte = (2 ) * (2 ) bytes = 1.048.576 bytes
10
10
10
1 Gygabyte = (2 ) * (2 ) * (2 ) bytes = 1.099.511.627.776 bytes
1 Kilobyte = (2
Feitas as considerações sobre os multiplicadores, vamos agora introduzir a fórmula de
cálculo da quantidade de dados transferidos por um link em um determinado periodo
de tempo, que é dada pela seguinte fórmula:
Total(t) = Taxa de Transmissão x Tempo de Transmissão
Logo:
Total(t) = Taxa de Transmissão x Tempo de Transmissão
Total(t) = 10 *
Total(t) = 50 *
106
106
bits/segundo x 5 segundos
bits
Página 13 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Total(t) = 50000000 bits
44.
Tags:
redes de computadores, gerenciamento de redes, SNMP,
O gerente de redes de uma empresa deseja monitorar o desempenho de seus servidores,
equipamentos de rede e links de comunicação de dados. Os dados de monitoramento devem
contemplar o nível de utilização de:
•
links, por tráfego de entrada e saída;
•
CPU dos roteadores;
•
CPU, rede, memória principal e espaço em disco de servidores.
Que solução tecnológica pode ser implantada para atender ao gerente?
(a). Criar um servidor central com as ferramentas de ping, traceroute e netstat.
(b). Criar um servidor LDAP que armazene a coleta central de dados via HTTP.
(c). Adicionar endereços IPv6 nos servidores e demais elementos de rede.
(d). Habilitar o protocolo 802.1Q em cada ativo da rede.
(e). Montar uma estrutura de monitoramento dos ativos envolvidos via
SNMP.
Solução:
(A) ERRADA
O aplicativo ping pode ser utilizado para ns de monitoração de disponibilidade, mas é
insuciente para monitoramento de desempenho. Já as ferramentas traceroute e netstat
são mais utilizadas para diagnóstico de problemas de roteamento e conexões, não sendo
aplicáveis a atividades de monitoramento.
(B) ERRADA
Diretórios LDAP geralmente são utilizados como repositórios centrais de dados de usuários
e recursos da rede, não tendo utilidade para ns de monitoração de desempenho. Já o
HTTP é um protocolo de comunicação vastamente utilizado na web e nas intranets, e
não tem relação direta com atividades de monitoração de elementos de rede.
(C) ERRADA
A tecnologia IPv6 tem como objetivo principal ampliar o espaço de endereçamento da
internet de aproximadamente 4 bilhões para 3.4 x
1038
endereços.
A limitação atual
é decorrente da utilização do protocolo IPv4, cujo endereço é formado por 32 bits, enquanto o IPv6 baseia-se em endereços de 128 bits.
(D) ERRADA
O IEEE 802.1Q é um protocolo que tem por objetivo permitir a criação de múltiplas
redes locais lógicas (VLANs) independentes dentro de uma mesma rede física. A principal vantagem das VLANs é a facilitação da administração, uma vez que tal tecnologia
permite que grandes redes físicas sejam subdividas em várias redes lógicas que reitam
melhor as características da organização. Na prática, o padrão 802.1Q é implementado
Página 14 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
pelos switches, que são encarregados de acrescentar um cabeçalho adicional aos frames
montados pela camada de enlace.
(E) CORRETA
O Simple Network Management Protocol, ou simplesmente SNMP, refere-se a um conjunto de especicações para gerenciamento e monitoramento de dispositivos em uma
rede TCP/IP. O SNMP é, atualmente, o padrão de fato para gerenciamento de redes.
O gerenciamento de redes usando SNMP baseia-se em três elementos: os dispositivos
gerenciados, os agentes de monitoração e os sistemas de gerenciamento de redes. Cada
dispositivo gerenciado possui um agente de monitoração, responsável por responder as
requisições enviadas pelo sistema de gerenciamento de redes.
Alguns agentes de monitoração também são capazes de disparar mensagens para os
sistemas de gerenciamento com base em eventos especícos. Tais mensagens são conhecidas como traps. Tipicamente, os agentes de monitoração de servidores são capazes
de enviar traps quando a temperatura da CPU atinge patamar, enquanto agentes de
monitoração de roteadores podem gerar traps quando a utilização de um determinado
link alcança um valor especíco.
O conjunto de informações oferecidas por cada agente de monitoração é denida e armazenada na Management Information Base (MIB), e essa pode variar de acordo com
o dispositivo gerenciado, com o fabricante e com a versão do protocolo.
45.
Tags:
segurança de informação, criptograa,
Um conjunto de algoritmos de criptograa simétrica é:
(a). DSA, MD5, IDEA e SHA-256.
(b). RSA, SERPENT, DES e RC4.
(c). RIJNDAEL, IDEA, Blowsh e RC5.
(d). MD5, DES, RC5 e 3DES.
(e). Die-Hellman, IDEA, Blowsh e RC4.
Solução:
(A) ERRADA
IDEA é um algoritmo de criptograa simétrica, mas DSA, MD5 e SHA-256 não são.
O MD5 e o SHA-256 são algorítimos de hash criptográco, não sendo utilizados para
segurança em comunicações. Uma das propriedades fundamentais das funções hash é a
não reversibilidade. Ou seja, não é possível recuperar a informação original a partir do
hash.
Já o DSA (Digital Signature Algorithm) é um algorítimo de chave assimétrica, sobre o
qual se baseia o padrão DSS (Digital Signature Standard), denido pelo governo americano. Padrões de assinatura digital exigem a utilização de criptograa assimétrica, para
garantir a identidade e o não repúdio por parte do assinante que, por denição, deve ser
o único portador da chave privada utilizada no processo de assinatura.
Página 15 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
(B) ERRADA
SERPENT, DES e RC4 são algorítmos de chave simétrica, porém o RSA não é. O RSA
leva esse nome devido aos nomes de seus inventores, a saber, Ron Rivest, Adi Shamir
e Len Adleman. O RSA fundamenta-se na teoria clássica dos números e é considerado,
atualmente, o algorítmo de criptograa mais seguro.
(C) CORRETA
A letra C é a única opção em que todos os algorítmos são simétricos e, portanto, é a
resposta correta. O RIJNDAEL é, na verdade, o nome do vencedor do concursos que
selecionou o algorítmo do AES (Advanced Encryption Standard), encomendado pelo
governo americano para substituir o padrão DES (Data Encryption Standard), criado
pela IBM.
O IDEA (International Data Encryption Algorithm) é um algorítmo que, assim como o
AES, foi projetado no intuito de substituir o DES. No entanto, a utilização do IDEA é
licenciada por uma empresa chamada MediaCrypt. O IDEA tem sido aplicado no PGP
(Pretty Good Privacy), um programa de computador que comumente é utilizado para
assintaura e criptograa de mensagens de email.
O Blowsh também é um exemplo de algorítmo simétrico, tendo sido desenvolvido em
1993 por Bruce Schneier como uma alternativa mais rápida aos algorítimos existentes.
Além do fato de ser muito rápido, o Blowsh não é patenteado e sua utilização é livre.
Esses dois fatores zeram com que o algorítimo se tornasse muito popular, sendo utilizado em inúmeros suítes criptogracas e produtos que requerem comunicação segura,
notoriamente, o OpenSSH.
O RC5 é um algorítimo de criptograa simétrica conhecido por sua simplicidade. Ele
é contruído basicamente por módulos AND e XOR, e é capaz de operar com variados
tamanhos de bloco e de chave. Alguns dizem que o RC leva esse nome por conta do nome
de seu projetista, Ron Rivest. O RC signicaria "Ron's Code"ou então "Rivest Cipher".
(D) ERRADA
Os algorítmo MD5 é um hash criptográco, conforme explicado na alternativa A, o que
torna a opção D incorreta. Assim como o RC5 e o DES, O 3DES (Triplo DES) também
é simétrico. Tal algorítmo é baseado na utilização de 3 blocos DES em sequencia, e foi
desenvolvido para tornar o DES mais seguro, quando detectou-se que a chave de 56 bits
do DES não era mais forte o suciente para impedir ataques de força bruta.
(E) ERRADA
O Die Hellman não é um algorítimo de cifragem, mas sim um protocolo criptográco
que permite que as duas partes comunicantes a estabelecer conjuntamente uma chave
secreta de comunicação através de um canal inseguro. Um aspecto importante do DieHellman é que, para o estabelecimento da chave secreta entre A e B, A não precisa
conhecer previamente informações de B, e vice versa.
O Die-Hellman provê a base
para vários protocolos de autenticação, como o TLS (Transport Layer Security) e SSL
(Security Sockets Layer).
46.
Tags:
normalização, banco de dados,
Página 16 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
A relação Vendas, apresentada a seguir, foi montada para armazenar os dados de um sistema
de vendas. Considere que atributo sublinhado representa o identicador da relação, e item
marcado com * representa atributo multi-valorado.
Vendas(NumeroNota, CodProduto, DescProduto, NomeCliente, CPFCliente,
Data, QtdeVendida, ValorUnitVendido, Peso, Telefone*)
Foram especicadas as seguintes dependências funcionais:
CodP roduto− > DescP roduto, P eso
N umeroN otaF iscal− > Data, CP F Cliente
N umeroN otaF iscal, CodP roduto− > QtdeV endida, V alorU nitV endido
CP F Cliente− > N omeCliente
Considerando-se que para um dado valor em CPFCliente podem existir vários telefones associados e vice-e-versa, qual o conjunto de tabelas que armazena as informações apresentadas,
atende às dependências funcionais e se encontra na terceira forma normal?
(a). Produtos(CodProduto, DescProduto, Peso)
Vendas(NumeroNota, CodProduto, CPFCliente, QtdeVendida, ValorUnitVendido)
Clientes(CPFCliente, NomeCliente, Data, Telefone*)
(b). Clientes(CPFCliente, NomeCliente)
Telefone(CPFCliente, Telefone)
NotasDeVenda(NumeroNota, CodProduto, CPFCliente, Data)
Produtos(CodProduto, DescProduto, ValorUnitVendido, Peso)
ProdutosVendas(NumeroNota, CodProduto, CPFCliente, QtdeVendida)
(c). Clientes(CPFCliente, NomeCliente)
Telefone(CPFCliente, Telefone)
Nota(NumeroNota, CPFCliente, Data)
Produtos(CodProduto, DescProduto, Peso)
NotasProdutos(NumeroNota, CodProduto, QtdeVendida, ValorUnitVendido)
(d). Vendas(NumeroNota, CodProduto, QtdeVendida, ValorUnitVendido, CPFCliente,
Data)
Produtos(CodProduto, DescProduto, Peso)
Cliente(CPFCliente, NomeCliente)
Telefone(CPFCliente, Telefone)
(e). Cliente(CPFCliente, Telefone, NomeCliente)
Nota(CPFCliente, NumeroNota, CodProduto, QtdeVendida, ValorUnitVendido, Data)
Produtos(CodProduto, DescProduto, Peso)
Solução:
Uma dependência funcional da forma
A− > B
determina que cada valor do atributo A
determina exatamente um valor do atributo B. Por exemplo, na dependência funcional
CodP roduto− > DescP roduto, P eso,
supomos CodProduto = 1001, a esse CodPro-
duto estará associada exatamente uma dupla da forma
SaboemP M ix, 500g .
DescP roduto, P eso,
exemplo:
Nenhum outra dupla será permitida para ser representada pelo
CodProduto 1001.
Página 17 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Um conjunto de tabelas está na terceira forma normal se todas as relações satisfazem as
condições da terceira forma normal. Além disso, uma relação que está na terceira forma
normal necessariamente satisfaz as condições previstas na primeira e na segunda forma
normal.
A primeira forma normal proíbe a existência de campos multi-valorados.
Logo, a al-
ternativa A já pode ser eliminada, já que "Telefone"da tabela Clientes é representado
como um atributo multi-valorado.
Uma relação estará satisfazendo as condições da segunda forma normal se atender as
condições da primeira forma normal e, além disso, dada qualquer chave candidata, qualquer atributo que não faça parte da chave candidata deve depender funcionalmente de
todos os campos da chave candidata e não somente de uma parte dela. Exemplo: Na
tabela NotasDeVenda, os campos CPFCliente e Data dependem funcionalmente somente
do campo NumeroNota e não de toda a chave primária (NumeroNota, CodProduto), que
por denição é uma chave candidata. Logo, a alternativa B também pode ser eliminada,
uma vez que não atende nem à segunda forma normal.
Analisando a denição acima, podemos concluir que as relações da alternativa C satisfazem às condições da segunda forma normal, mas o que mais é necessário para que
essas relações estejam na terceira forma normal? Para isso, é necessário conhecer mais
algumas denições. A primeira delas é o de atributo não-primo, que, basicamente, é um
atributo que não pertence a nenhuma chave candidata da relação. Outro conceito é o
de dependência funcional transitiva, quando uma dependência funcional X->Z é determinada indiretamente da forma X->Y e Y->Z. Voltando à denição da terceira forma
normal, ela exige que todo atributo não-primo da relação seja diretamente dependente
(ou seja, não seja transitivamente dependente) de qualquer chave. Não existe nenhuma
relação transitiva dos atributos não-primos nas relações descritas na alternativa C, logo
é a resposta correta para a questão.
Finalizando, a relação Vendas da alternativa D e as relações Cliente e Nota da alternativa E não satisfazem as condições da segunda forma normal. Portanto, também
não estão na terceira forma normal.
47.
Tags:
ITIL, gerenciamento de incidentes,
O administrador de uma rede deseja reiniciar (reboot) um determinado servidor. Segundo
a ITIL (v2), onde o administrador pode consultar que serviços serão impactados com essa
manutenção?
(a). Central de Serviços
(b). Catálogo de Serviços
(c). BDGC (Banco de Dados do Gerenciamento da Conguração)
(d). BSD (Biblioteca de Software Denitivo)
(e). BRPM (Base de Respostas a Problemas de Manutenção)
Solução:
Página 18 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
(A) ERRADA A Central de Serviços, também conhecida em inglês como Service-Desk
(nome-original), é uma função dentro da TI que tem como objetivo ser o ponto único de
contato entre os usuários/clientes e o departamento de TI. A proposta sugerida é separar
dentro das operações de TI quem faz parte do suporte aos usuários de quem vai realizar
atividades de resolução de problemas e desenvolvimento. Ter uma área especíca para
o suporte traz vantagens para os usuários, propiciando um suporte com maior agilidade
e qualidade, e para a equipe de TI mais eciência, pois o técnico especialista acaba não
sendo mais interrompido pelas chamadas diretas dos usuários.
(B) ERRADA Trata-se de um documento que contém todos os Serviços que estão sendo
fornecidos, uma descrição do serviço, níveis de serviço, custo do serviço, cliente e a
pessoa/departamento responsável pela manutenção do serviço. O conteúdo do Catálogo
de Serviço irá variar de acordos com os requisitos da organização de TI.
(C) CORRETA O BDGC fornece informações sobre os IC's (Itens de Conguração, os
quais estão conecetados a incidentes) e os relacionamentos de pai/lho entre eles. Isto
ajuda determinar a causa, a solução, o roteamento e o possível impacto de um incidente
rastreando as falhas anteriores ao mesmo IC relacionado. Por exemplo, se um usuário
não puder acessar a Internet, vericando os relacionamentos de pai/lho daquele PC irá
descobrir que um Hub utilizado pelo usuário para se conectar a rede (ligação pai com o
PC), é um IC potencial que deve ser investigado.
(D) ERRADA A Biblioteca de Software Denitiva (BSD), utilizada pelo Gerenciamento
de Liberação, fornece um local de armazenamento físico de todos os itens de conguração
de software.
Os softwares vêm de diversas formas tais como códigos-fonte, pacotes,
bibliotecas e executáveis.
As diferentes versões do mesmo software são mantidas na
BSD e, através de autorização e controles de qualidade, são usadas para construção e
implementação das liberações.
(E) ERRADA O assunto ITIL muitas vezes é tido como genérico demais por boa parte
dos prossionais de TI. Em alguns momentos, o ITIL trata o gerenciamento de serviços
em alto nível e, em certa medida, de forma subjetiva. Isso se traduz, às vezes, em nomes
e siglas "bonitas"para coisas muito simples. Temos, por exemplo, a BSD (Biblioteca de
Software Denitiva) e o BDGC (Banco de Dados de Gerenciamento de Conguiração).
Embora, ao implementar o ITIL, uma organização tenha a liberdade de criar uma espécie de "Base de Respostas a Problemas de Manutenção", essa não é uma das bases
mencionadas na literatura ocial do ITIL. Conclusão: para estudar ITIL, é importante
conhecer a terminologia ocial, para que não se corra o risco de ser engando por mais
uma sigla interessante!
48.
Tags:
segurança de informação, criptograa,
Uma determinada empresa implantou um sistema WEB para relacionamento com seus
clientes e fornecedores pela Internet.
O diretor dessa empresa determinou que o nível de
segurança desse sistema fosse alto, e as seguintes medidas foram tomadas:
•
utilização do protocolo HTTPS em qualquer tipo de acesso;
•
antes de serem armazenadas no banco de dados, as senhas dos usuários passam por um
algoritmo forte de hash;
•
autenticação do usuário é realizada por login, senha e 2 perguntas aleatórias de uma
base de dados composta por dados pessoais do usuário, tais como data de nascimento,
nome do pai, número de telefone celular, local de nascimento etc.
Página 19 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Baseado nessa situação, tem-se que:
(a). a autenticação implementada por esse sistema é caracterizada como forte, uma
vez que existem 4 fatores questionados ao usuário.
(b). um atacante pode obter as senhas originais dos usuários, uma vez que possua os
hashes das senhas, o algoritmo e a chave simétrica utilizada no hashing.
(c). para maior segurança, esse sistema pode ser evoluído para permitir,
adicionalmente, o uso de certicados digitais ICP-Brasil na autenticação
de cliente via HTTPS.
(d). embora a autenticidade e integridade das conexões HTTPS sejam garantidas, não
existe condencialidade nesse tipo de tráfego.
(e). RIJNDAEL e DSA são exemplos de algoritmos de hash que poderiam ser utilizados
na geração do hash das senhas.
Solução:
(A) ERRADA Autenticação fornece os meios de vericar a identidade de um sujeito para
garantir que uma identidade é válida. Ela pode ser baseada em três fatores básicos:
1. O que você sabe (que é o caso das senhas, logins, PINS, frases de segurança, etc.)
2. O que você possui (que é o caso de crachás, smartcards, tokens, chave, etc.)
3. O que você é (mapeamento da retina, voz, impressão digital, etc.)
Uma autenticação é considerada forte quando ela se baseia na combinação de pelo menos
dois dos fatores mencionado acima. Desta forma, podemos concluir que o processo de
autenticação adotado nesta empresa não é caracterizado como forte pois ele é construído
a partir de um único fator ("o que você sabe").
(B) ERRADA Uma função hash é uma forma de que tem como entrada texto e como
saída uma mensagem cifrada de comprimento xo.
A saída de tamanho xo é um
conjunto de bits que serve como uma única "impressão digital"para a mensagem original.
As funções hash são ditas ser de "sentido único", o que signica que é fácil de calcular
o hash da mensagem mas que é muito difícil reverter a hash para a mensagem original
(no caso, desta questão, para a senha original). As características da função Hash são
listadas aqui:
•
Em uma função hash deve ser impossível, para duas mensagens diferentes, produzir
a mesma mensagem crifada. A alteração de um único caracter em uma mensagem
irá produzir uma mensagem crifada completamente diferente (em Uma função de
hash dita forte, a mudança de um bit na mensagem original resulta em um novo
hash totalmente diferente);
•
Deverá ser impossível produzir uma mensagem que tenha alguma saída desejada
ou predenidas;
•
Deverá ser impossível de recuperar a mensagem o orignal (no nosso caso, a semnha)
a partir da mensagem cifrada. Isto, porque uma mensagem cifrada poderia ter sido
produzida por um número quase innito de mensagens;
Página 20 de 46
Handbook de Questões de TI Comentadas para Concursos
•
Volume 01
O algoritmo hash não precisa ser mantido em segredo. Ele é disponibilizado ao
público. Sua segurança vem da sua capacidade para produzir hashes;
(C) CORRETA ICP é a sigla no Brasil para PKI - Public Key Infrastructure. Trate-se de
um conjunto de técnicas, práticas e procedimentos elaborado para suportar um sistema
criptográco com base em certicados digitais, através do qual consegue-se assegurar
a identidade de um usuário de mídia eletrônica ou assegurar a autenticidade de um
documento suportado ou conservado em mídia eletronica.
(D) ERRADA HTTPS (Hypertext Transfer Protocol Secure) é a utilização do protocolo
HTTP em conjunto com o protocolo SSL (Secure Socket Layer), o qual foi desenvolvido e
especicado para prover uma camada de segurança entre a camada de transporte (TCP)
e os protocolos de aplicação de mais alto nível, tais como HTTP, TELNET, FTP, NNTP,
SMTP, etc.
Este protocolo (o SSL) provê criptograa de dados (condencialidade),
autenticação de servidor, integridade de mensagem e, opcionalmente, autenticação de
cliente para uma conexão TCP/IP, evitando, desta forma, que a informação transmitida
entre o cliente e o servidor, tanto na Internet quanto na Intranet, seja visualizada por
terceiros, como por exemplo no caso de compras online.
(E) ERRADA O RIJNDAEL é um algoritmo simétrico que cifra blocos de tamanho
variável, com chaves de tamanho também variável.
A natureza do algoritmo permite
que os tamanhos das chaves e dos blocos sejam múltiplos de 32 bits.
A estrutura do
algoritmo baseia-se em sucessivas rodadas, chamadas também de rounds, nas quais
funções especícas são aplicadas sobre o bloco de bits de entrada. O número de rodadas
depende do número de bits de entrada, bem como do tamanho da chave utilizada.
O DSA (Digital Signature Algorithm) é um algorítimo de chave assimétrica, sobre o
qual se baseia o padrão DSS (Digital Signature Standard), denido pelo governo americano. Padrões de assinatura digital exigem a utilização de criptograa assimétrica, para
garantir a identidade e o não repúdio por parte do assinante que, por denição, deve ser
o único portador da chave privada utilizada no processo de assinatura.
49.
Tags:
banco de dados, transação,
Considere o ambiente de uma aplicação multiusuário que acessa um sistema de gerência
de banco de dados relacional. Os usuários acessam a aplicação em simultâneo, submetendo
transações concorrentes ao banco de dados. Todas as transações realizadas na base de dados,
pela referida aplicação, estão denidas com o nível de isoladamente READ COMMITTED
(leitura com efetivação).
O usuário João está executando, através da aplicação, uma transação T1, composta por
vários comandos SQL. Neste caso, é correto armar que
(a). o nível de isolamento adotado não irá impedir o aparecimento de linhas
fantasmas (phantom) durante a execução de T1.
(b). as atualizações de dados realizadas por João dentro de T1 podem ser lidas por
outros usuários imediatamente, mesmo antes de João efetivar sua transação.
(c). se João abortar a execução de T1 após ter executado, como parte da transação,
comandos de atualização de dados, as referidas atualizações não poderão ser desfeitas.
Página 21 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
(d). no ambiente descrito, a execução intercalada de qualquer conjunto de transações
será serializável.
(e). devido à utilização do nível de isolamento especicado, enquanto João executar
T1, nenhum outro usuário poderá executar comandos no banco de dados.
Solução:
(A) É a alternativa correta. O nível de isolamento de uma determinada transação dene o
tipo de bloqueio em relação às operações de leitura. No caso de um nível de isolamento
READ UNCOMMITTED (leitura sem efetivação), a transação poderá ler dados que
foram modicados por outras transações e que ainda não foram conrmadas.
Já o
nível de isolamento READ COMMITTED impede que isso ocorra, que são fenômenos
conhecidos como dirty reads (leituras sujas).
Ainda há dois tipos de anomalias que ainda não são resolvidos por esse nível de isolamento que são leitura não-repetível e leitura fantasma (phantom). Suponha que duas
consultas sejam executadas uma após a outra dentro da mesma transação.
No nível de isolamento READ COMMITTED nada impede que outra transação efetive
suas alterações durante a execução da primeira consulta. O comando SELECT, nesse
nível de isolamento, enxerga apenas os dados conrmados antes da consulta ser executada. Nesse caso, os resultados das duas consultas realizadas uma após a outra, mesmo
pertencentes à mesma transação, podem ser diferentes.
Já o fenômeno de leitura fantasma é semelhante à leitura não-repetível no sentido em
que são necessárias duas consultas com os mesmos critérios para que o fenômeno possa
ser observado.
Quando o retorno são as mesmas linhas, mas com dados diferentes, o
fenômeno é de leitura não-repetível.
Quando a diferença no resultado indica que as
linhas não são as mesmas, diz-se que ocorreu uma leitura fantasma.
O padrão ISO dene mais dois níveis de isolamento que são o de leitura repetível e
seriálizável. O fenômeno de leitura fantasma só eliminado na nível serializável, que é o
nível mais restrito.
(B) Para que o citado ocorra, o nível de isolamento deveria ser READ UNCOMMITTED. A alternativa é falsa.
(C) Todo sistema gerenciador de banco de dados deve garantir que uma transação possa
ser desfeita para manter a propriedade de atomicidade, que é essencial para a recuperação dos dados em casos de desastre ou na resolução de conitos entre transações. Logo,
tal fato é impensável e alternativa C está incorreta.
(D) A alternativa está errada, pois o nível de isolamento citado permite a não-serialização
em relação às outras transações em favor da melhoria do desempenho do sistema.
(E) Errada também, pois várias transações podem ser executadas simultaneamente,
mas respeitando os bloqueios que garantem o modo de serialização adotado.
50.
Tags:
sistemas de arquivos, banco de dados,
Os dados de uma agenda contendo nome, telefone e endereço de pessoas estão organizados
em um arquivo de dados com acesso somente de leitura. Um dispositivo eletromecânico
Página 22 de 46
D,
Handbook de Questões de TI Comentadas para Concursos
Volume 01
que possibilita acesso direto, contém, aproximadamente, 90 milhões de registros ordenados
por nome.
Assumindo que o tamanho do campo endereço é variável e que D pode ter
arquivos (pré-existentes) de índices que se referenciam ao arquivo de dados, e supondo que
não possui cache, qual é a estratégia que realizará, em média, menos operações de I/O para
consultar todos os registro cujo nome começa por uma determinada letra?
(a). Pesquisa binária diretamente sobre o arquivo de dados, uma vez que já existe
ordenação por nome.
(b). Pesquisa sobre o arquivo de índices indexados pelo nome, implementando um
algoritmo de busca em uma árvore B-Tree balanceada.
(c). Pesquisa seqüencial sobre um arquivo de índices indexado pelas letras
do alfabeto e posterior leitura seqüencial sobre o arquivo de dados, nos
quais cada índice aponta para o endereço do início da respectiva letra
na agenda.
(d). Pesquisa binária sobre um arquivo de índices indexado pelo nome, para posterior
acesso ao arquivo de dados.
(e). Leitura seqüencial diretamente sobre o arquivo de dados, sem a utilização de arquivos auxiliares de índice.
Solução:
(A) Para que uma pesquisa binária fosse possível diretamente sobre o arquivo de dados,
dados que seus registros são de tamanho variável, seria necessário incluir informações
que servissem como "ponteiros"em cada registro. O que não é possível já que o arquivo
de dados é de somente leitura. Portanto, a alternativa A não é possível.
(B) De maneira geral, a abordagem por B-Tree é uma boa opção.
Entretanto, é
necessário observar que para recuperar cada registro será necessária uma consulta à
B-Tree e posteriormente ao arquivo de dados. Tal implementação utilizaria um número
de operações da ordem (n/26).log(n), onde n é o número total de registros. Analisaremos as outras opções adiante. Note que a opção nem explicitou como seria o acesso ao
arquivo de dados.
(C) Essa é uma opção bem eciente para o caso, já que será necessário apenas encontrar
a letra do alfabeto correspondente (mesmo que de maneira seqüencial) no arquivo de
índices e depois percorrer seqüencialmente o arquivo de dados e seria da ordem 13+n/26,
ou seja, mais rápido que o caso descrito na alternativa B.
(D) O caso e o custo são muito parecidos com aqueles explicitados na alternativa B
e não superam o desempenho descrito na alternativa C.
(E) Nesse caso, a ordem seria percorrer o arquivo de dados até encontrar o primeiro
registro em que o nome comece com a letra especicada e depois percorrer todos os
elementos que atendam a condição. O custo seria algo da ordem n/2+n/26.
Concluímos, pela análise, que alternativa mais eciente é a alternativa C.
51.
Tags:
organização de computadores, arquitetura, memória,
Página 23 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
O hardware de um sistema microprocessado foi projetado para funcionar com uma memória
de 20 bits de endereçamento e palavra de 16 bits. Se neste sistema já estão instalados 1.024
KB de memória, qual a quantidade máxima de memória possível para expansão, em KB?
(a). 1.024
(b). 924
(c). 768
(d). 512
(e). 256
Solução:
As memórias são constituídas de células que são identicadas por número, denominado
endereço, pelo qual programas podem referenciá-la. Todas as células contêm o mesmo
número de bits.
Se uma célula consisti de m bits, ela pode armazenar 2m bits de
informação.
Os endereços de memória são expressos por números binários. Se um endereço tiver n
bits, o número máximo de células endereçáveis é 2n.
Para determinar a quantidade máxima de memória possível para expansão, primeiramente, devemos calcular a capacidade total de memória em bytes que o hardware em
questão suporta.
A informação de que 20 bits são necessários para endereçar uma
memória, isso nos informa que o hardware possui 220 células. Uma palavra de 16 bits
informa que cada célula de memória armazena até 24 bits de informação.
A capacidade total de memória suportada é obtida pela multiplicação entre número
de posições e a quantidade de cada posição, ou seja, 220*24, 224 bits. Esse resultado,
expresso em KB é 2048 KB. Como no sistema já estão instalados 1024 KB, a quantidade
máxima de memória possível é de 1024 KB.
52.
Tags:
organização de computadores, arquitetura, memória virtual,
O uso de memória secundária (de menor velocidade, comparada com a memória principal)
como memória virtual acaba ocasionando perda de desempenho. Neste contexto, supondo
que um computador da linha PC, monoprocessado, admita expansibilidade de seus componentes, a solução que atualmente oferece melhor relação custo-benefício para atenuar o
problema é:
(a). adicionar um disco rígido de maior capacidade.
(b). adicionar memória RAM.
(c). aumentar o tamanho do arquivo de troca (swap) do sistema operacional.
(d). substituir o processador por um mais veloz.
(e). trocar o computador todo por um mais moderno, pois não há solução para o
problema.
Solução:
Assim como as memórias caches permitem acesso rápido a instruções e dados na memória,
a técnica de memória virtual permite acesso rápido a dados e programas localizados em
unidades de armazenamento secundário (disco rígido).
Página 24 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Imagine uma coleção de programas executando em um computador ao mesmo tempo. A
memória total para a execução desses programas pode ser maior do que a memória física
do computador. Entretanto, pode acontecer que apenas uma fração da memória total
seja necessária ser usada em qualquer ponto de execução dos programas. A memória
principal precisa conter apenas a parte ativa dos programas, em execução.
A técnica de memória virtual permite compartilhar de forma eciente o uso da memória
principal entre vários programas, realizando a gerência automática entre os dois níveis de
hierarquia de memória (memória principal e secundária). Essa gerência é feita realizando
a transferência de dados e instruções de partes do programas entre a memória principal
e secundária, e vice-versa.
De acordo com o exposto, analisaremos cada alternativa:
(A) Um disco com maior capacidade não resolveria o nosso problema, pois partes de
dados e instruções dos programas precisariam, ainda, ser transferidos da memória secundária para a principal. Essa transferência é lenta, pois demando acesso a memória
secundária.
(B) Adicionar memória RAM, memória principal, ao computador seria uma solução com
o melhor custo-benefício, pois a memória RAM é barata e permitiria que mais programas
fossem alocados na memória principal, reduzindo o acesso a memória secundária, que é
lento. Portanto, esta é a alternativa correta.
(C) Essa solução apresenta um custo-benefício alto, pois para trocar o tamanho do
arquivo de troca teríamos que alterar o kernel do sistema operacional. Isso não é nada
fácil, e não traria benefícios.
(D) A troca de um processador não atenuaria o problema.
Como explicado acima, a
memória virtual é dependente da memória principal, indiferente do processador utilizado.
(E) A troca do computador por um mais moderno poderia atenuar a o problema,
mas seria uma solução cara. E, existe solução para o problema em questão, conforme
mostramos na alternativa B.
53.
Tags:
redes de computadores, modelo OSI, arquitetura de redes,
Que camada no modelo OSI é responsável por converter diferentes representações de números
inteiros na comunicação entre dois sistemas distintos?
(a). Apresentação
(b). Sessão
(c). Transporte
(d). Padronização
(e). Aplicação
Solução:
O modelo OSI (Open Systems Interconection) foi o primeiro passo para padronização
internacional dos processos de comunicação de sistemas abertos. Em outras palavras,
o modelo OSI foi desenvolvido com a nalidade de padronizar o desenvolvimento de
produtos para redes de comunicação de dados.
O modelo OSI é conhecido por ser um modelo em camadas, denidas à partir dos
seguintes princípios:
Página 25 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
•
Uma camada deve ser criada onde houver necessidade de abstração adicional;
•
Uma camada deve executar tarefas bem denidas;
•
O limite das camadas deve minimizar o uxo de informações sobre as interfaces.
As 7 camadas do modelo OSI e suas respectivas funções são:
1. Camada Física:
Responsável pela transmissão de bits brutos em um canal de
comunicação, envolvendo codicações, voltagens etc;
2. Camada de Enlace: Responsável por transformar o canal bruto em uma linha que
pareça livre de erros para a camada de rede, tratando de erros na transmissão,
controle de uxo, além da montagem e fragmentação dos frames de dados;
3. Camada de Rede:
Responsável por determinar como os dados são roteados da
origem ao destino;
4. Camada de Transporte: É a camada que realiza o chamado controle m-a-m,
garantindo que os dados chegarão corretamente ao destino. Outras tarefas típicas
da camada de transporte são a abertura e encerramento de conexões, além dos
controles de uxo e de congestionamento;
5. Camada de Sessão: Realiza o controle de diálogo, gerenciamento de tokens (para
controle de acesso a sessão crítica), sincronização (para interrupção e retomada de
transmissões longas);
6. Camada de Apresentação:
Preocupa-se com a sintaxe e a semântica das infor-
mações transmitidas, com o objetivo de permitir que entidades com diferentes
representações de dados se comuniquem. Para isso, a camada de apresentação se
preocupa com aspectos de formatação, codicação e decodicação de dados; e
7. Camada de Aplicação: Oferece, por meio de protocolos de alto nível, os serviços
que de fato são de interesse do usuário nal, como transferência de arquivos, envio
de mensagens de email etc.
É importante frisar que o modelo OSI não é uma arquitetura, visto que não são xados os
protocolos das camadas, mas apenas especicado o que eles devem fazer. A arquitetura
TCP/IP, mais famosa do mercado, tem o modelo OSI como referência, mesmo que
não apresente o mesmo número de camadas. As camadas de sessão e apresentação do
modelo OSI não aparecem explicitamente na especicação do TCP/IP, pois suas funções
são desempenhadas pela camada de aplicação desta arquitetura.
Muitos browsers e servidores HTTP suportam a compactação e descompactação de
dados, de forma transparente para o usuário para aumento de desempenho. Essa tarefa
é claramente uma atividade da camada de apresentação, muito embora os browsers e os
servidores sejam típicos elementos da chamada camada de aplicação.
54.
Tags:
redes de computadores, protocolo TCP,
O algoritmo de slow start do TCP
(a). obriga que a fonte retransmita segmentos sem que se espere pelo timeout, no caso
de recebimento de três reconhecimentos (ACK) duplicados.
Página 26 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
(b). impede que segmentos cheguem fora de ordem devido a congestionamentos em
links de baixa velocidade.
(c). utiliza os bits URG e PSH para indicar retransmissões prioritárias, no caso de
fontes com baixa velocidade de transmissão.
(d). eleva, gradativamente, a taxa de transmissão de tráfego na rede até que
seja atingida uma situação de equilíbrio.
(e). limita o tamanho da janela deslizante de recepção a 1 byte, durante o ciclo de vida
de uma conexão TCP.
Figura 1: Algoritmo Slow-Start
Solução:
O algoritmo Slow Start é uma das estratégias do protocolo TCP para realizar o controle de congestionamento da rede. O funcionamento do algoritmo pode ser explicado
em termos do controle da janela de congestionamento, cujo tamanho visa representar a
quantidade máxima de dados que pode ser enviada pela rede sem acarretar congestionamento. A implementação típica do Slow Start, é mostrada no gráco 1.
No início da transmissão de dados, a janela de congestionamento é congurada para 1
MSS (Maximum Segment Size). Isso signica dizer que o transmissor só pode enviar pela
rede, no máximo, 1 MSS de dados, antes da conrmação do recebimento dos mesmos
pelo destinatário.
Caso o recebimento seja conrmado, o transmissor aumenta o tamanho da janela em 2
vezes, fazendo ela valer 2 MSS. Agora o transmissor pode enviar até 2 MSS de dados não
conrmados pela rede. À medida que os dados vão sendo conrmados, o transmissor vai
aumentando a janela em duas vezes. Essa etapa do Slow Start é conhecida como Fase
de Crescimento Exponencial, e essa dura até que uma seguintes situações ocorra:
•
Ocorre timeout na conrmação de recebimento dos dados. Nesse caso, o valor da
janela de congestionamento é diminuído pela metade, como ilustrado na série 2 do
gráco. Essa contenção, conhecida como fase de backo, tem por objetivo evitar
que o congestionamento da rede se agrave.
•
O patamar máximo da fase de crescimento exponencial é alcançado. Nesse caso,
o tamanho da janela começa a ser incrementado de forma linear, e não mais exponencial. A Fase de crescimento linear segue então até alcançar o valor máximo
do tamanho da janela de congestionamento. Essa situação é ilustrada em ambas
as séries do gráco.
Página 27 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Muitos dos leitores já devem ter notado que ao iniciar um download de arquivo na
Internet, as taxas de transferência crescem rapidamente e depois tendem a se estabilizar,
ou até mesmo diminuir.
Em boa parte, o slow start é um dos responsáveis por esse
comportamento.
É importante frisar que a implementação do algorítimo slow start pode variar entre os
diversos sistemas operacionais.
Na verdade, poucos são os sistemas operacionais que
implementam o slow start de forma el às RFCs que denem o TCP. Algumas implementações podem ser, por exemplo, mais agressivas nas fases de crescimento exponencial
ou de backo.
55.
Tags:
segurança de informação, criptograa,
A força do algoritmo RSA é baseada na:
(a). impossibilidade de se quebrar o algoritmo SHA-1 em tempo computacionalmente
viável.
(b). diculdade de implementação de um algoritmo eciente para fatoração
de números grandes.
(c). diculdade de implementação de um algoritmo eciente para determinar a primalidade de um número.
(d). obscuridade do algoritmo de geração do par de chaves assimétricas, que varia de
acordo com a implementação.
(e). utilização de números complexos, fortemente aleatórios, na geração da chave simétrica.
Solução:
O algoritmo RSA é usado para criptograa de chaves públicas (ou criptograas assimétricas) e assinaturas digitais. É o algoritmo de criptograa de chave pública mais
largamente utilizado, e o seu nome provém das inciais dos professores criadores (Rivest,
Shamir, Adleman).
A sua segurança baseia-se no fato de que encontrar dois números primos de grandes
dimensões (por exemplo, 100 dígitos) é computacionalmente fácil, no entanto, conseguir
fator o produto de tais números é considerado computacionalmente complexo (em outras
palavras, o tempo estimado de milhares de anos em um máquina comum)
A sua força é geralmente quanticada com o número de bits utilizados para descrever
tais números.
Para um número de 100 dígitos são necessários cerca de 350 bits, e as
implementações atuais superam os 512 e mesmo os 1024 bits.
No RSA, a geração de chaves é realizada da seguinte forma:
1. Escolha de forma aleatória dois números primos grandes
2. Compute
p
e
q
n = pq
3. Compute a função totiente em n:
4. Escolha um inteiro
e
tal que
ϕ(n) = (p − 1)(q − 1)
1 < e < ϕ(n),
comum diferente de 1.
Página 28 de 46
de forma que
e
e
ϕ(n)
não têm fator
Handbook de Questões de TI Comentadas para Concursos
5. Compute
k
d
de forma a satisfazer a relação a igualdade
Volume 01
de = 1kϕ(n),
para algum
inteiro
n e do público (ou criptografado)
do número n e do privado (ou descrip-
Por nal temos que a chave pública consiste do número
expoente e, já a chave privada consiste, também,
tografado) expoente
d
que deve ser mantido em segredo.
Dentre os possíveis usos do RSA, podemos citar:
56.
•
IPSEC/IKE: segurança nos dado dados IP;
•
TLS/SSL: segunrançã no transporte de dados (web).
•
PGP: segurança de e-mail;
•
SSH: segurança para conexão de terminal;
•
SILC: segurança no serviço de conferência.
Tags:
banco de dados, álgebra relacional, funções básicas dos SGBDs,
Sobre bancos de dados relacionais é INCORRETO armar que
(a). fornecem outra tabela, como resultado de consulta a uma tabela.
(b). possuem um otimizador que é responsável por implementar de forma eciente as
consultas relacionais realizadas pelo usuário.
(c). armazenam dados organizados logicamente em tabelas e sicamente em arquivos.
(d). disponibilizam estruturas para manutenção de integridade dos dados.
(e). permitem a realização de operações de junção e união de conjuntos,
mas não de projeção e restrição.
Solução:
Em bancos de dados relacionais, as tabelas são estruturas lógicas que tem por objetivo
simplicar a modelagem e a visualização dos dados, que sicamente são armazenados
como arquivos.
O diagrama de tabelas é um nível de abstração de dados também
conhecido como modelo lógico de dados.
Independente do formato dos arquivos e dos métodos de acesso utilizados, o usuário nal
sempre enxerga os dados como tabelas. Quando uma consulta é submetida ao SGBD
relacional, pode ser necessário unir dados de vários arquivos para fornecer o resultado.
No entanto, o usuário nal não precisa tomar parte dessa necessidade, pois o resultado
da consulta será fornecido como uma tabela, essa montada dinamicamente de acordo
com os critérios da operação.
A otimização das consultas, assim como a manutenção da integridade dos dados, é
papel do SGBD. Como atribuições dos SGBDs, podemos citar também a manutenção
da segurança e o controle de concorrência, permitindo que vários usuários ou processos
usem o banco de dados simultaneamente sem prejuízo aos dados.
Em grande parte dos sistemas, os projetistas não precisam se preocupar com aspectos físicos do armazenamento de dados.
Geralmente, isso se faz necessário quando o
Página 29 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
otimizador de consultas do SGBD por si só não é suciente para responder aos requisitos de desempenho do sistema.
Com base nos argumentos apresentados, podemos dizer que as alternativas A, B, C e D
apresentam informações corretas sobre os SGBDs relacionais. Portanto, por eliminação
chegamos a alternativa E.
A resposta também pode ser alcançada de forma direta, sendo necessário para isso o
conhecimento das operações básicas da Álgebra Relacional, base conceitual dos bancos
da linguagem de SQL. As operações de junção nada mais são que as realizadas pelo
operador JOIN, da linguagem SQL, enquanto as operações de união são realizadas pelo
operador UNION. As restrições são denidas pela cláusula WHERE.
Já as projeções referem-se seleção de um subconjunto N de colunas, onde N é menor que
o número total de colunas da relação. Ou seja, se tabela ALUNOS possui 5 colunas,
o comando SELECT NOME,IDADE FROM ALUNOS é uma projeção, pois só foram
selecionadas duas das 5 colunas na consulta.
57.
Tags:
virtualização de computadores, máquinas virtuais,
No âmbito de monitores de máquinas virtuais, que propriedade garante que um software em
execução em uma máquina virtual não acesse, nem modique, outro software em execução
em outra máquina virtual?
(a). Recompilação dinâmica
(b). Paravirtualização de código
(c). Virtualização de CPU
(d). Interposição
(e). Isolamento
Solução:
Em computação, virtualização é um termo amplo que se refere à abstração dos recursos computacionais. Ainda dentro de uma visão conceitual, virtualizar é colocar uma
camada de abstração entre o recurso e o usuário do recurso, desacoplando os limites da
natureza física e os recursos dos usuários, permitindo o compartilhamento simultâneo.
No âmbito de virtualização de computadores, virtualizar signica permitir que vários
sistemas operacionais executem sobre um único computador físico simultaneamente.
Cada sistema operacional em execução executa em uma máquina virtual própria.
O monitor de máquina virtual é o responsável por arbitrar o acesso aos recursos (disco,
processador, memória etc) da máquina hospedeira, de modo que esses possam ser compartilhados pelos sistemas clientes de forma eciente e segura.
Nesse contexto, segurança signica garantir a correta execução das aplicações que estão
rodando nas diversas máquinas virtuais. Para isso, é necessário que os monitores implementem mecanismos de controle para a utilização simultânea dos recursos físicos pelas
diversas máquinas virtuais, como a proteção dos espaços de endereçamento, da alocação
de espaço em disco, e do processamento das aplicações.
A implementação desses mecanismos de controle é o que confere às máquinas virtuais a propriedade de Isolamento.
Isolar signica tornar o funcionamento das diversas
Página 30 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
máquinas virtuais independentes entre si, apesar do fato de elas compartilharem os
mesmos recursos físicos.
58.
Tags:
Governança de TI, ITIL,
O processo ITIL (v2) responsável pela implementação das mudanças no ambiente de infraestrutura de TI é o Gerenciamento de
(a). Mudança.
(b). Implantação.
(c). Redes
(d). Liberação
(e). Conguração
Solução:
O ITIL (Information Technology Infrastructure Library) é uma biblioteca de melhores
práticas para gerenciamento de serviços de TI. Embora a questão fale do ITIL v2, os
conceitos dos processos na versões 1, 2 e 3 são os mesmos. As mudanças da versão inicial
até a versão mais atual apenas conduziram o ITIL de um foco mais operacional para
um foco mais de processos, onde o gerenciamento do ciclo de vida dos serviços de TI é o
centro das atenções. Portanto, o fato da questão falar na versão 2, isso não é relevante
para resolvê-la.
A questão tenta conduzir os que não conhecem os nomes dos processos ao erro. Primeiramente, os processos "Gerenciamento de Implantação"e de "Gerenciamento de Redes"não
existem. Isso já elimina as alternativas B e C.
Já o Gerenciamento de Conguração é o responsável por prover informações conáveis
sobre as congurações e documentações relativas à infraestrutura de TI, de forma suportar os demais processos de gerenciamento de serviços. É o processo de gerenciamento de
conguração o responsável pela construção e manutenção do BDGC (Banco de Dados
de Gerenciamento de Conguração), considerado o coração do modelo de gerenciamento
de serviços do ITIL. Lá está armazenado o estado atual da infraestrutura, com informações sobre os servidores, aplicações, responsáveis e também o inter-relacionamento
entre todos os elementos do ambiente.
Por sua vez, o Gerenciamento de Mudanças é o processo que garante a aplicação de
procedimentos padronizados a m de lidar de forma eciente com todas as mudanças no
ambiente operacional, minimizando os impactos na qualidade dos serviços e prevenindo
a ocorrência de incidentes em decorrência das mudanças.
Em resumo, é o processo
responsável pelo planejamento das mudanças.
Comumente, os iniciantes em ITIL tendem a achar que o Gerenciamento de Mudanças realiza todas as atividades relativas às mudanças, inclusive a implementação. No entanto,
os trabalhos do Gerenciamento de Mudanças limitam-se ao planejamento e a validação
das mudanças, que por sua vez são implementadas pelo processo de Gerenciamento de
Liberação. Portanto, a resposta da questão é a letra D.
59.
Tags:
segurança de informação, segurança de redes, DDoS, TCP SYN Flood,
Página 31 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Uma empresa possui um link com a Internet de 10 Mbps (full-duplex), por meio de um
determinado provedor.
O site dessa empresa está hospedado em um servidor WEB na
seguinte topologia:
Uma empresa possui um link com a Internet de 10 Mbps (full-duplex), por meio de um
determinado provedor.
O site dessa empresa está hospedado em um servidor WEB na
seguinte topologia:
Um ataque distribuído de negação de serviço (DDoS) externo está sendo disparado para essa
empresa, tendo como alvo o servidor WEB. O link Internet apresenta, do ponto de vista da
empresa, utilização máxima no tráfego de entrada e baixa utilização no tráfego de saída.
Além disso, o servidor HTTP está sobrecarregado processando, em sua maioria, solicitações
de conexão (SYN) oriundas de endereços pertencentes a uma determinada sub-rede com
prexo /26.
De acordo com a situação exposta, é correto armar que o(a)
(a). desempenho no acesso de usuários externos ao site não está comprometido, já que
o tráfego de saída está livre.
(b). bloqueio de inundação UDP (UDP Flood) pode ser ativado no rewall para impedir
a sobrecarga de conexões do servidor WEB.
(c). roteador de borda deve ser congurado para bloquear todos os endereços que
solicitam mais de uma conexão (SYN) por vez.
(d). redução do impacto desse ataque pode ser obtida junto ao provedor,
com a conguração de bloqueios especícos de tráfego.
(e). instalação de um IDS entre o roteador e o rewall para prevenção de ataques de
buer overow impediria o DDoS.
Figura 2: Topologia da Rede
Solução:
A alternativa A está incorreta pois, embora o link de saída não esteja sobrecarregado, o
servidor está sobrecarregado devido ao grande número de solicitações de conexão que está
tendo que responder. Desse modo, o tempo de processamento das requisições oriundas
de conexões legítimas será comprometido.
Já a grande quantidade de solicitações de conexão indica que o ataque é um SYN Flood e,
portanto, explora uma vulnerabilidade da implementação do protocolo TCP no servidor
atacado. Logo, a alternativa B, que fala de UDP Flood, pode ser eliminada.
A alternativa C não é aplicável, pois a abertura de várias conexões simultâneas entre dois
computadores é legítima e muito comum, principalmente em aplicações WEB. Tipicamente, os browsers abrem várias conexões TCP com o servidor HTTP em paralelo, para
Página 32 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
que a página e seus respectivos objetos (guras, vídeos, etc) possam ser "baixados"mais
rapidamente.
Como o ataque se trata de um TCP SYN Flood, e não de um buer overow, pode-se
eliminar também a alternativa E, embora a instalação de um IDS (Intrusion Detection
System) poderia ajudar na identicação mais rápida da anomalia no tráfego da rede.
Eliminadas as alternativas A,B,C e E, chegamos a alternativa D como resposta. Como
o link de entrada de Internet esta sobrecarregado e o link de saída apresenta baixa
utilização, pode-se se concluir que o ataque está partindo da Internet para dentro da
rede. No entanto, ao analisar o tráfego percebeu-se que a faixa de endereçamento dos
pacotes que compõe o tráfego malicioso é da subrede interna de prexo /26.
A partir desses dados, pode-se concluir também que o atacante utilizou alguma técnica de spoong com o objetivo de confundir ainda mais os administradores da rede e,
possivelmente, comprometer outras máquinas da subrede /26.
Anal, se uma máquina está dentro da rede, é impossível que os pacotes por ela enviados
cheguem de fora da rede.
Tal situação conota um ataque de spoong e, por isso, os
provedores utilizam uma convenção básica de bloqueios nas bordas das redes, de modo
que os pacotes entrantes não tenham endereços de origem da própria rede interna.
60.
Tags:
banco de dados, consulta SQL,
As relações abaixo compõem uma base de dados em que atributos sublinhados são identicadores e atributos em itálico são chaves estrangeiras.
Autor (CPFAutor, Nome, DataNascimento)
Obra (TituloObra, DataConclusao, CPFAutor, CodigoAssunto)
Editora (CNPJEditora, Nome, Local)
Publicacao (TituloObra, CNPJEditora, DataLancamento )
Assunto (CodigoAssunto, Descricao)
Que comando SQL apresenta como resultado a quantidade de publicações do assunto `Policial' por editora?
(a). Select P.CNPJEditora, count(P.TituloObra)
from Publicacao P inner join Obra O
on P.TituloObra = Obra.TituloObra
inner join Assunto A on O.CodigoAssunto = A.CodigoAssunto
where A.Descricao = `Policial'
(b). Select P.CNPJEditora, count(P.TituloObra)
from Publicacao P, Obra O, Assunto A
where P.TituloObra = O.TituloObra
and O.CodigoAssunto = A.CodigoAssunto
and A.Descricao = `Policial'
group by P.CNPJEditora
(c). Select P.CNPJEditora, count(P.TituloObra)
from Publicacao P, Obra O, Assunto A, Editora E
group by P.CNPJEditora
having A.Descricao = `Policial'
(d). Select P.CNPJEditora, sum(P.TituloObra)
from Publicacao P inner join Obra O
Página 33 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
on P.TituloObra = Obra.TituloObra
inner join Assunto A on O.CodigoAssunto = A.CodigoAssunto
where A.Descricao = `Policial'
group by P.CNPJEditora
(e). Select P.CNPJEditora, count(P.TituloObra)
from Publicacao P left outer join Obra O
on P.TituloObra = Obra.TituloObra
left outer join Assunto A on O.CodigoAssunto = A.CodigoAssunto
group by P.CNPJEditora
Solução:
Para encontrarmos o resultado da quantidade de publicações do assunto "Policial"por
editora, devemos ter em mente que precisamos utilizar a função de agrupamento groupby
para agrupar as editoras com mesmo CNPJ, e a função agregada count para contabilizar
o número de registros de um determinado CNPJ.
(A) inner join é uma operação de composição de relações condicional e é usada na
cláusula from. Sua sintaxe é relacao1 inner join relacao2 on condição.
O select em questão explora as relações de chave estrangeira entre os relacionamentos,
e a execução dos dois inner join produzem um relacionamento que é possível extrair os
CNPJs cujo Descricao de Assunto é "Policial".
O problema deste select é que não agrupa os registros para contabilizar a quantidade de
um determinado CNPJ. Portanto, alternativa errada.
(B) os predicados da cláusula where do select em questão produz a mesma relação
obtida na alternativa (A) pelos inner joinr. Com uma diferença, ao obter os registros
que contém a Descricao de Assunto igual a "Policial", agrupa-se as editoras de mesmo
CNPJ para contabilizar a quantidade de editoras para cada CNPJ por meio da função
count no select. Portanto, alternativa correta.
Vale destacar que na cláusula where as operações de = exploram os relacionamentos
entre as relações existentes.
Então, quando selecionamos os registros com Descricao
igual a "Policial", as operações de = garantem que estamos selecionando registros com
mesmo TituloObra e CodigoAssunto.
(C) o candidato desatento tende a marcar esta alternativa, pois se esquece dos relacionamentos existentes entre as relações. A forma como o select foi elaborado, agruparia
atributos CNPJEditora da relação Publicacao diferentes do atributo CNPJEditora da
relação Editora. O mesmo é válido para os atributos de TituloObra de Obra e Publicacao. Portanto, alternativa errada.
(D) o select desta alternativa utiliza a função sum para contabilizar a quantidade de um
determinado CNPJ. Primeiramente, a função correta para essa nalidade é a count, e
segundo, a função sum aceita como entrada um conjunto de números. Neste select essa
função recebe o parâmetro P.TituloObra, que não é um número. Portanto, alternativa
errada.
(E) oselect desta alternativa não consta na cláusula where que se deve procurar no
atributo Descrição da relação Assunto a palavra "Policial". Portanto, alternativa errada.
61.
Tags:
padrões W3C, web services,
Página 34 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
A empresa de informática X pretende acessar o web service da empresa Y. Qual o padrão
W3C que possibilitará ao desenvolvedor de software da empresa X implementar a parte
cliente que acessará o web service da empresa Y?
(a). WSDL
(b). HTML
(c). XQuery
(d). XPath
(e). UDDI
Solução:
Web Service é um componente de software identicado por uma URI (Uniform Resource
Identier) que independe de implementação ou de plataforma e pode ser descrito, publicado e invocado por meio de mensagens no padrão XML. Com web services, é possível
realizar a integração entre sistemas desenvolvidos de diferentes linguagens e plataformas,
além de disponibilizar serviços interativos na Web. É uma tecnologia de padrão aberto
e padronizada pelo W3C.
A arquitetura do Web Service é constituída por três componentes básicos: o servidor de
registro (broker server ou service registry), o provedor de serviços (service provider) e o
solicitante de serviços (service requestor). As interações entre esses componentes são de
busca, publicação e integração.
A interação entre os Web Services se dá sob vários protocolos abertos, em diferentes
níveis de abstração. Os protocolos utilizados para realizar a comunicação são o: UDDI
(Universal Description Discovery and Integration), WSDL (Web Services Description
Language), XML (Extensible Markup Language), SOAP (Simple Object Access Protocol) e o HTTP.
O XML é uma linguagem de marcação apropriada para representação de dados, documentos e demais entidades cuja essência fundamenta-se na capacidade de agregar informações.
O SOAP é um protocolo de comunicação simples baseado em XML para troca de informações entre aplicações.
A especicação do SOAP provê maneiras para construir
mensagens que possam trafegar por meio de diversos protocolos de forma independente
da linguagem de programação e do sistema operacional.
Normalmente, o protocolo
utilizado para troca de informações é o HTTP.
Analisando as alternativas:
(A) O WSDL é uma linguagem baseada em XML, utilizada para descrever um web
service e como acessá-lo. A descrição de um serviço consiste de duas partes: denição
de implementação do serviço e denição da interface do serviço. A primeira descreve
como uma interface de serviço é implementada por um provedor: onde o serviço está
instalado e como pode ser acessado.
E a segunda descreve o web service, incluindo
métodos que são invocados e parâmetros que são enviados.
(B) O HTML (Hyper Text Markup Language) é uma linguagem de marcação de tags
utilizada para produzir páginas na Web.
(C) O XQuery (XML Query) é uma linguagem utilizada para executar consultas em
dados XML.
Página 35 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
(D) O XPath (XML Path) é uma linguagem para encontrar informações em um documento XML. O XPath é utilizado para navegar através de atributos e elementos em um
documento XML. É o principal elemento no padrão XSLT.
(E) Para que um serviço seja utilizado é necessário que o cliente consiga localizá-lo, e
essa localização pode ser feita por meio do UDDI, que é uma especicação técnica para
descrever, descobrir e publicar web services.
Portanto, a resposta da questão é a alternativa A.
62.
Tags:
sistemas operacionais, sistemas de arquivos, fragmentação,
Sobre a fragmentação de dados em um disco rígido, tem-se que
(a). é desejável porque aumenta o desempenho de leitura dos arquivos, embora o
diminua nos acessos de gravação.
(b). não há relação com a quantidade de movimentações dos cabeçotes de leitura e
gravação no acesso de um arquivo.
(c). o nível de fragmentação dos sistemas de arquivos EXT3 e NTFS é zero, ou seja,
não existem arquivos fragmentados.
(d). discos menos fragmentados têm vida útil mais reduzida em comparação com discos
mais fragmentados.
(e). comparando discos utilizados com o mesmo padrão de interleaving sobre
os setores, o impacto negativo da fragmentação é atenuado pelo disco
de maior densidade de dados e maior velocidade de rotação.
Solução:
Diz-se que um arquivo está fragmentado quando o espaço por ele alocado no disco rígido
não é contíguo.
Ou seja, os dados que compõe o arquivo não estão unidos, mas sim
espalhados pelo disco. Isso signica dizer que para acessar um arquivo fragmentado será
necessário um maior deslocamento do cabeçote de leitura do disco rígido.
Por consequência, a fragmentação causa queda de desempenho do sistema, tanto para
operações de leitura quanto para escrita.
Lembrando que o tempo de acesso a um
determinado dado em disco é dado pela fórmula:
Ta cesso = Ts eek + Tl atencia + Tt ranf erencia
Em discos com altos níveis de fragmentação, o tempo de seek, que é o necessário para
deslocar o cabeçote de leitura até o cilindro correto, tende a ser mais alto, já que os
diversos setores do disco que compõe o arquivo estão espalhados.
Na prática, a fragmentação ocorre quando nenhum dos espaços contíguos disponíveis no
disco é suciente para comportar um arquivo, e isso independe do sistema de arquivos,
seja ele FAT, NTFS, EXT3 etc.
É claro que alguns sistemas de arquivos são mais
ecientes na prevenção de altos índices de fragmentação. Notoriamente, os sistemas de
arquivos do Linux, por meio de técnicas heurísticas de alocação de espaço, apresentam
índices de fragmentação quase nulos. Porém, ela ainda se manifesta quando o disco está
com alta utilização e existam arquivos grandes no sistema.
O padrão de interleaving, do qual fala a alternativa E, está relacionado com a organização
dos setores no disco. Discos com mesmo fator de interleaving e mesma velocidade de
Página 36 de 46
Handbook de Questões de TI Comentadas para Concursos
rotação, podem ser ditos equiparáveis em tempo médio de seek.
Volume 01
A alternativa E é a
correta pois quanto maior a velocidade de rotação, menor será o tempo de seek e, por
consequência, menor o tempo de acesso.
63.
Tags:
redes de computadores, redes locais, IEEE 802, Ethernet,
Dois switches devem ser interligados, por meio de uma única interface, a uma velocidade
mínima de 4 Gbps. Para isso, é necessário que os switches possuam uma interface compatível
com o padrão IEEE
(a). 802.1x
(b). 802.3z
(c). 802.3u
(d). 802.3ae
(e). 802.6
Solução:
IEEE 802 refere-se a um conjunto de padrões denidos pelo IEEE que tratam de redes
locais (LANs) e redes metropolitanas (MANs). Os protocolos e serviços denidos pela
família de padrões 802 está relacionada com as duas camadas mais baixas do modelo de
referência OSI, à saber, a camada física e a camada de enlace.
A família 802 apresenta uma subdivisão em grupos, cada um deles preocupado com um
aspecto diferente. Alguns exemplos de grupos da família 802 são mostrados a seguir:
•
IEEE 802.1 Bridging and Network Management
•
IEEE 802.3 Ethernet
•
IEEE 802.6 Metropolitan Area Networks
•
IEEE 802.11 Wireless LAN & Mesh
Como podemos ver, o grupo 802.1 trata da parte de bridging e gerenciamento. Exemplos
de tecnologias que usam os protocolos do grupo 802.1 são VLANs (802.1q), 802.1d (Spanning Tree) e também o controle de acesso a rede (802.1x), mencionado na alternativa A
da questão. Já o grupo 802.6 trata dos padrões para redes metropolitanas. Portanto,
as alternativas A e E podem ser eliminadas, visto que não tratam especicamente de
velocidades de transmissão.
O grupo 802.3 certamente é o mais notório da família 802, sendo conhecido também
como Ethernet.
Na verdade, os termos Ethernet, Fast Ethernet, Gigabit Ethernet e
10 Gigabit Ethernet são muito mais utilizados do que seus respectivos nomes no grupo
802.3. A tabela a seguir relaciona o nome de cada um dos subgrupos do Ethernet com
seu código na família 802.
Entre as alternativas, o único padrão que pode proporcionar a interligação dos switches
a uma velocidade mínima de 4 Gbits/s é o 802.3ae (10 Gibagit Ethernet). Portanto, a
resposta da questão é a alternativa D.
Página 37 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Vale ressaltar que além desses subgrupos do 802.3, existem inúmero outros, sendo que
alguns deles tratam de aspectos diferentes de velocidade de transmissão e meios de transmissão. Um exemplo típico é o 802.3af (Power Over Ethernet), que permite transmitir
energia em conjunto com os dados, sendo especialmente útil para elementos de rede
como access points e pequenos switches.
Tabela 1:
Padrões IEEE 802.3
Padrão IEEE
Nome Popular
Características
802.3
Ethernet
Transmissão a 10 Mbits/s sobre cabo coaxial
802.3u
Fast Ethernet
Transmissão a 100 Mbits/s sobre cabo coaxial ou bra ótica
802.3z
Gigabit Ethernet
Transmissão a 1 Gbits/s sobre bra ótica
802.3ab
Gigabit Ethernet
Transmissão a 1 Gbits/s sobre cabo de par trançado
802.3ae
10 Gigabit Ethernet
Transmissão a 10 Gbits/s sobre sobre bra ótica
64.
Tags:
redes de computadores, qualidade de serviço,
No âmbito de Qualidade de Serviço (QoS) em redes de computadores, as aplicações de
e-mail, transferência de arquivos e login remoto requerem, respectivamente, os níveis de
conabilidade:
(a). baixo, médio, alto.
(b). baixo, alto, alto.
(c). baixo, alto, médio.
(d). médio, baixo, baixo.
(e). alto, alto, alto.
Solução:
No contexto de redes de computadores, um uxo é o envio de uma sequência de pacotes
de uma origem até um determinado destino. A Qualidade de Serviço (QoS) pode ser
denida em termos do conjunto de requisitos de um determinado uxo de pacotes. Os
requisitos de QoS mais comuns são os seguintes:
•
Conabilidade: Garantia da entrega e integridade dos pacotes transmitidos;
•
Flutuação ou Jitter: É a variação do atraso entre os pacotes;
•
Largura de Banda: Taxa com a qual os dados são transmitidos;
•
Retardo: Atraso total na transmissão de um pacote.
No que diz respeito a conabilidade, o serviço de correio eletrônico tem alto requisito
de conabilidade, já que o corrompimento de dados pode invalidar por completo a mensagem de correio. O mesmo é válido para a transmissão de arquivos e o login remoto.
Portanto, a resposta da questão é a letra E.
A título de exemplo, imagine como se comportaria uma aplicação de vídeo sob demanda
diante da perda ou corrompimento de alguns pacotes. Essa situação é comum, e nem
Página 38 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
por isso invalida a transmissão como um todo. O impacto da perda de alguns pacotes
para o usuário nal é uma imagem com algumas falhas, porém aceitável.
Anal, de nada adiantaria retransmitir os pacotes perdidos de uma cena A e eles
chegarem quando a cena B já estiver em exibição. Por esse motivo, nas redes TCP/IP
muitas vezes o protocolo UDP é escolhido para suportar aplicações de vídeo.
Obviamente, existem aplicações com altos requisitos de qualidade de imagem. Nesses
casos, pode-se optar por uma estratégia de retransmissões de pacotes.
No entanto,
o destino deverá se encarregar também de tarefas como ordenação e buerização de
pacotes.
65.
Tags:
segurança de informação,
NÃO é uma boa prática de uma política de segurança:
(a). difundir o cuidado com a segurança.
(b). denir responsabilidades claras de usuários e administradores.
(c). ser de fácil leitura e compreensão.
(d). incluir os detalhes técnicos de implementação dos mecanismos de segurança.
(e). explicitar conseqüências das violações da própria política.
Solução:
(A) ERRADA Uma vez que a política de segurança tenha sido estabelecida, ela deve ser
claramente comunicada aos usuários, funcionários e gestão. Tendo todo o pessoal que
assinar uma declaração indicando que leu, entendeu e concordou com a política.
(B) ERRADA As políticas de segurança devem ter implementação realista, e denir
claramente as áreas de responsabilidade dos usuários, do pessoal de gestão de sistemas
e redes e da administração.
(C) ERRADA Deve ser também um documento de fácil leitura e compreensão, além
de resumido.
Ela deve ser tão explícita quanto possível para evitar ambiguidades ou
equívocos.
(D) CORRETA O documento que dene a política de segurança deve deixar de fora
todos os aspectos técnicos de implementação dos mecanismos de segurança, pois essa
implementação pode variar ao longo do tempo, em outras palavras, uma política de
segurança deve ser (principalmente) independente de hardware e software.
(E) ERRADA Em uma boa implementação de política de segurança, existirá O Relatório
de Violação de Política que indica quais tipos de violação (por exemplo, a privacidade
e segurança, interna e externa) devem ser denunciados e para os quais os relatórios são
feitos. Faz parte de boa prática, também, a existência de uma atmosfera não-ameaçadora
e a possibilidade de uma reportagem anônima, pois isto torna provável que uma violação
será noticada, se for detectada.
66.
Tags:
segurança de informação, redes de computadores,
Há dois meses foi anunciada uma vulnerabilidade, que permite exploração remota com direitos administrativos, em um determinado produto que implementa o serviço de DNS. O
Página 39 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
servidor primário DNS de uma empresa que vende produtos pela Internet utiliza esse produto.
Os administradores, por descuido, não instalaram a atualização lançada na época
para corrigir essa vulnerabilidade e perceberam, hoje, a situação de risco. Após vericação
detalhada dos mapas DNS, os administradores concluíram que estão corretos e guardaram
uma cópia. Além disso, vericaram a existência de um processo nesse servidor escutando na
porta 31337 (TCP). Sobre a situação exposta, observe as armativas abaixo.
I O bloqueio no rewall externo do acesso à porta 31337 desse servidor impede que
usuários maliciosos efetuem controle remoto nesse servidor.
II A instalação de correções de segurança é um procedimento importante em servidores
que atuam na Internet.
III É recomendável que um novo servidor de DNS seja instalado e os mapas DNS restaurados a partir da cópia salva pelos administradores.
Está(ão) correta(s) SOMENTE a(s) armativa(s)
(a). II
(b). III
(c). I e II
(d). I e III
(e). II e III
Solução:
Na armativa I, o bloqueio à porta 31337 apenas impedirá que os atacantes externos
explorem a vulnerabilidade em questão. No entanto, essa medida pode não ser suciente
para impedir ataques por parte de usuários maliciosos internos.
A existência de um processo de instalação de correções de segurança, mencionada no item
II, é fundamental para manutenção da segurança de servidores. No caso de servidores
que atuam na Internet, isso é ainda mais válido, já que esses estão mais expostos a
ataques.
Quanto às atualizações de segurança, o documento "Práticas de Segurança para Administradores de Redes Internet", elaborado pelo CERT BR (Centro de Estudos, Resposta
e Tratamento de Incidentes de Segurança do Brasil), faz ainda as seguintes observações:
"A maioria dos fornecedores de software libera correções para problemas de segurança que
sejam descobertos em um sistema, sem que se tenha de esperar pela sua próxima versão
... Nem sempre todas as correções disponíveis precisam ser instaladas. Restrinja-se
àquelas que corrigem problemas em componentes que estejam efetivamente instalados
no seu sistema. Em caso de dúvida, recorra ao suporte técnico do seu fornecedor. A
instalação indiscriminada de atualizações pode enfraquecer a segurança do sistema ao
invés de fortalecê-la."
A medida III, por sua vez, é a mais efetiva para garantir que o servidor de DNS esteja livre da vulnerabilidade em questão. A presença de um processo desconhecido no
servidor de DNS aponta para a possibilidade do servidor estar com a segurança comprometida.
Ou seja, assim como foi detectada a presença de um processo malicioso,
congurações de segurança podem ter sido alteradas. Como o serviço de DNS crítico,
é recomendável que um novo servidor seja preparado "do zero", assegurando que todas
as congurações de segurança estejam aplicadas.
Página 40 de 46
Handbook de Questões de TI Comentadas para Concursos
67.
Tags:
Volume 01
banco de dados, concorrência,
Em ambiente de Sistema Gerenciador de Banco de Dados (SGBD) multi-usuários, bloqueios
e controles por timestamp (registro de tempo) são mecanismos utilizados para a manutenção
da integridade das transações.
Sobre tais mecanismos e sua utilização em SGBD relacionais, tem-se que
(a). a utilização de intenções de bloqueio visa aumentar a capacidade de concorrência
do sistema, no qual são permitidos somente bloqueios e intenções de bloqueio em
linhas individuais.
(b). a utilização de bloqueios pode ocorrer tanto em linhas de dados quanto
em estruturas de maior granularidade, como tabelas, podendo, também,
ocorrer em estrutura de índices.
(c). o protocolo de bloqueio em duas fases foi desenvolvido para utilização em banco
de dados distribuídos, e nele um nó coordenador realiza uma eleição para que cada
nó participante indique se pode ou não concluir uma transação.
(d). o protocolo de ordenação por timestamp (registro de tempo) é baseado no momento em que um bloqueio foi obtido por uma transação, indicando que esse
bloqueio somente pode ser mantido por determinado período de tempo.
(e). o protocolo de ordenação por timestamp (registro de tempo) garante que não ocorrerão deadlocks, pois esse protocolo impede que transações mantenham o bloqueio
de um objeto por tempo indenido.
Solução:
Bloqueios permitem que apenas uma única transação manipule (altere) um item de dados em um dado momento. Também é possível o bloqueio multigranular, que permite a
uma transação bloquear diferentes tipos de recursos como tabelas e estruturas de índices
e, geralmente, esse bloqueio se dá de forma hieráquica onde o bloqueio explícito de um
determinado objeto implica no bloqueio implícito dos seus sub-objetos. Concluímos que
a alternativa B é a alternativa correta e excluímos a alternativa A.
O protocolo de bloqueio de duas fases pode ser utilizado em qualquer SGBD e não
foi especicamente desenvolvido para uso em bancos de dados distribuídos e, sim, para
garantir a serialização de transações. Logo, a alternativa C está errada.
O protocolo de ordenação por timestamp atribui um timestamp para cada transação
antes que ela inicie e serve para garantir que quaisquer execuções de leitura e escrita
sejam executadas por ordem de timestamp. No protocolo de ordenação por timestamp,
não é possível que ocorram deadlocks, pois não é um método baseado em bloqueios de
recursos. Entretanto, uma transação pode ser cancelada várias vezes. A alternativas D e
E estão erradas, pois não há bloqueios no processo de ordenação por timestamp. O que
existe são métodos que se baseiam em timeout para a manutenção do bloqueio por um
tempo denido e são especicamente para manuseio de deadlocks e não um protocolo
que garanta a serialização como o protocolo de timestamp.
68.
Tags:
banco de dados, bancos de dados distribuídos,
A fragmentação de dados utilizada em um banco de dados distribuído tem como objetivo
dividir as informações de uma determinada relação R. Sobre essa fragmentação de dados,
tem-se que
Página 41 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
(a). os dados estão sempre replicados pelos diversos nós existentes, no caso das fragmentações horizontal e vertical.
(b). não é possível reconstruir a relação original R por meio dos diversos fragmentos
existentes.
(c). na fragmentação vertical, ocorre a decomposição de atributos de R em
um ou mais fragmentos.
(d). na fragmentação vertical, ocorre a decomposição de R em subconjuntos de dados
selecionados a partir de um critério comum de ltragem relativo a um atributo de
R.
(e). a reconstrução dos dados de uma fragmentação horizontal é possível através da
interseção dos subconjuntos de dados fragmentados.
Figura 3: Fragmentação de Dados
Solução:
Como mencionado no enunciado da questão, a fragmentação de dados é uma técnica
utilizada em bancos de dados distribuídos, e tem como objetivo dividir as informações de
uma determinada relação R por vários servidores (chamados nós) do banco de dados. A
fragmentação permite o processamento paralelo proporcionando ganhos de desempenho,
especialmente, nas operações de consulta.
Os dois métodos de fragmentação mais comuns são a fragmentação horizontal e a fragmentação vertical, ilustrados na gura 3.
As características da fragmentação horizontal são as seguintes:
•
Cada fragmento contém um subconjunto das tuplas da relação completa;
•
Cada tupla de uma relação precisa ser armazenada em pelo menos um servidor;
•
A relação completa pode ser obtida fazendo a união dos fragmentos;
•
Não há necessidade de replicação de dados entre os nós.
Já na fragmentação vertical:
•
Relações são decompostas em conjuntos de atributos mantidos em servidores diferentes;
•
Cada fragmento é uma projeção da relação completa;
•
A relação completa pode ser obtida fazendo a junção de todos os fragmentos;
•
Há necesidade de replicação da chave primária entre os nós, para que seja possível
a operação de junção.
Página 42 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Como podemos ver, para obter-se a relação completa é necessário realizar operações de
união (no caso da fragmentação horizontal), ou de junção (no caso da fragmentação vertical). Tais operações são de responsabilidade do SGBD, de modo permitir aos usuários
utilizar o banco de dados de forma transparente, como se estivessem utilizando um
SGBD não distribuído.
69.
Tags:
técnicas de programação, estruturas de dados,
Seja P uma pilha que, inicialmente vazia, sofre, sequencialmente, as seguintes operações:
PUSH(P,3)
PUSH(P,5)
POP(P)
PUSH(P,7)
PUSH(P,9)
PUSH(P,6)
PUSH(P,2)
POP(P)
POP(P)
PUSH(P,8)
PUSH(P,1)
POP(P)
POP(P)
POP(P)
Qual a soma dos valores dos elementos restantes de P?
(a). 10
(b). 9
(c). 16
(d). 19
(e). 35
Solução:
A pilha é um estrutura de dados que implementa uma la do tipo LIFO (Last In, First
Out). As duas operações básicas para manipulação de pilhas são PUSH e POP. O PUSH
é utilizado para adicionar um novo dado ao topo da pilha, enquanto o POP é utilizado
para remover o último elemento inserido. A gura 4 mostra os estados da pilha P após
serem aplicadas cada uma das operações da sequência.
Portanto, após a sequência de operações, a soma dos elementos restantes é 7 + 3 = 10.
As pilhas são largamente utilizadas em vários níveis dos sistemas computacionais modernos, sendo tipicamente úteis para manipulação de interrupções, tanto de hardware
quanto de software.
Nesses casos, nas pilhas são armazenados os endereços das in-
struções a serem executadas pelo computador.
São estruturas de dados do tipo pilha que permitem que o uxo de execução dos programas seja desviado por meio da chamada de funções. Os leitores que tiverem alguma
Página 43 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
experiência com programação recursiva, em especial e C, já devem ter se deparado com o
erro Control Stack Overow. Isso acontece quando, por um erro de denição da condição
de parada da recursão, novas chamadas da função recursiva vão sendo feitas até que o
espaço alocado para a pilha de execução se esgote, abortando a execução do programa.
Figura 4: Sequência de estados da pilha
70.
Tags:
operação de infra-estrutura, backup,
Um determinado servidor de arquivos S realiza
backup:
•
completo (full) no 1o dia de cada mês;
•
diferencial nos dias 8, 15 e 22 de cada mês;
•
incremental no restante dos dias.
Existe uma mídia para cada backup, que ocorre diariamente às 19h e dura, no máximo, 4
horas. Em determinado mês, no dia 19, às 15h, houve uma pane em S, ocasionando a perda
total de seus arquivos. Para restaurar a posição mais recente dos arquivos de S, o conjunto
necessário e suciente é formado pelas mídias dos dias
(a). 1 a 18
(b). 15 e 18
(c). 1, 8, 15 e 18
(d). 1, 15, 16, 17 e 18
(e). 8, 15, 16, 17 e 18
Solução:
Para chegar à resposta, primeiramente é necessário compreender o funcionamento de
cada um dos tipos de backup mencionados: completo, diferencial e incremental.
•
Backup Completo (BC): Nesse modo de backup, também conhecido como full,
todos os dados são copiados, independente de suas datas de criação ou modicação.
•
Backup Diferencial (BD): No modo diferencial, somente são copiados os dados
alterados desde a data de realização do último backup completo.
•
Backup Incremental (BI): Nesse modo, somente os dados modicados desde o
último backup, independente do modo em que foi realizado, são copiados.
Página 44 de 46
Handbook de Questões de TI Comentadas para Concursos
Volume 01
Na maioria dos casos de pane, é necessário utilizar uma combinação de backups para
que seja possível realizar a restauração dos dados minimizando as perdas. Na situação
em questão, a sequência de restaurações de backup que minimiza os danos da pane do
dia 19 é a seguinte:
Backup Completo do dia 1 (BC1)
Backup Diferencial do dia 15 (BD15)
Backups Incrementais dos dias 16 (BI16), 17 (BI17) e 18 (BI18)
BC1: Restaura os dados até o dia 1 às 19 horas
BC1 + BD15: Restaura os dados até o dia 15 às 19 horas
BC1 + BD15 + BI16 + BI17 + BI18: Restaura os dados até o dia 18 às 19 horas
Com isso, chegamos a letra D. Vale observar que o último backup é o do dia 18, já que a
pane do dia 19 ocorreu antes da realização do backup, planejado para rodar às 19 horas.
Portanto, as modicações feitas a partir do dia 18 às 19 horas foram perdidas.
Página 45 de 46
Índice Remissivo
padrões W3C, 34
passagem de parâmetros, 7
protocolo TCP, 26
álgebra relacional, 29
qualidade de serviço, 38
análise do valor agregado, 10
Apache, 11
RAID, 9
arquitetura, 23, 24
redes de computadores, 3, 13, 14, 25, 26, 3739
arquitetura de redes, 25
redes locais, 37
backup, 8, 44
segurança de informação, 11, 15, 19, 28, 31, 39
banco de dados, 5, 16, 21, 22, 29, 33, 41
segurança de redes, 31
bancos de dados distribuídos, 41
servidor de aplicação, 12
SGBD, 5
cache, 9
single sign-on, 4
comandos linux, 2
sistemas de arquivos, 22, 36
concorrência, 41
sistemas operacionais, 36
consulta SQL, 33
SNMP, 14
criptograa, 15, 19, 28
storage, 9
DDoS, 31
técnicas de programação, 6, 7, 43
EJB, 12
endereçamento IP, 3
estruturas de dados, 43
TCP SYN Flood, 31
TCP/IP, 3
transação, 21
Ethernet, 37
virtualização de computadores, 30
fragmentação, 36
web servers, 11
funções básicas dos SGBDs, 29
web services, 34
gerenciamento de custos, 10
gerenciamento de identidades, 4
gerenciamento de incidentes, 18
gerenciamento de projetos, 10
gerenciamento de redes, 14
Governança de TI, 31
IEEE 802, 37
ITIL, 18, 31
J2EE, 12
linux, 2
máquinas virtuais, 30
memória, 23
memória virtual, 24
modelo OSI, 25
modularização de algoritmos, 6
normalização, 16
operação de infra-estrutura, 8, 44
organização de computadores, 23, 24
46

Documentos relacionados