Prova Engenharia da Computação ENADE 2023 com Gabarito
Prova Engenharia da Computação ENADE 2023 com Gabarito
OBS: as questões de 01 a 09 são de Formação Geral, portanto, cobradas em todas as provas. Para conferir elas, basta acessar essa página.
CONHECIMENTO ESPECÍFICO
QUESTÃO 10
ENADE 2023: Os resistores são dispositivos utilizados com finalidade de limitar a corrente elétrica em um circuito elétrico. Eles conseguem desempenhar essa função por apresentarem a propriedade da resistência elétrica, que é a capacidade de um corpo se opor à passagem de corrente elétrica. Diversos materiais podem ser utilizados como resistores, tais como níquel-cromo, carbono e grafite.
Diante disso, considere uma situação hipotética em que seja preciso construir resistores cilíndricos na forma da figura a seguir, a fim de serem utilizados em um circuito de corrente contínua que possui tensão igual a 12 V. Na figura, L representa o comprimento do material e A representa a área de seção transversal.
Observe, também, a tabela a seguir, a qual especifica características de três tipos de materiais utilizados para fabricação dos resistores hipotéticos, como a resistividade P, o comprimento L e a área A.
Com base nessas informações, é correto afirmar que, a fim de se obter a configuração de resistores viável para se ter uma corrente menor do que 300 mA, é preciso utilizar apenas
A) 2 resistores de grafite em série.
B) 3 resistores de carbono em série.
C) 2 resistores de grafite em paralelo.
D) 2 resistores de carbono em paralelo.
E) 3 resistores de níquel-cromo em série.
QUESTÃO 11
ENADE 2023: O protocolo de roteamento interno OSPF (open shortest path first) representa um sistema autônomo (SA) como um grafo ponderado, em que roteadores são os vértices, conexões entre os roteadores são as arestas e atrasos nas conexões são os pesos.
No OSPF, a identificação de cada conexão e seu respectivo atraso são passados de roteador em roteador até que todos os roteadores formem uma base de dados com o grafo que descreve o SA.
O OSPF utiliza uma versão distribuída do algoritmo de caminhos mínimos de Dijkstra para computar as melhores rotas para todos os possíveis destinos e para produzir as tabelas de rotas para cada roteador. Cada rota computada é a que apresenta o menor valor para a soma dos atrasos nas conexões usadas na rota entre a rede de origem e a rede de destino.
Disponível em: https://memoria.rnp.br/newsgen/9705/n1-1.html.
Acesso em: 1 mar. 2023 (adaptado).
Acerca do protocolo OSPF e com base nas informações apresentadas no texto, avalie as afirmações a seguir.
I. Quando há diferentes caminhos possíveis entre uma origem e um destino, a rota selecionada é a que apresenta o menor número de conexões.
II. Há uma instância da base de dados relativa a conexões e a atrasos, formando o grafo que descreve o SA em cada roteador que compõe o SA.
III. O algoritmo de Dijkstra é executado por um único roteador dentro do SA e a tabela de rotas resultante é passada para todos os roteadores no SA.
IV. Para todos os roteadores dentro de um SA, há a necessidade de tráfego de informações acerca de atrasos e de conexões entre roteadores.
É correto apenas o que se afirma em
A) I e III.
B) II e III.
C) II e IV.
D) I, II e IV.
E) I, III e IV.
QUESTÃO 12
ENADE 2023: Uma relação R em um conjunto S é uma relação de equivalência se ela satisfizer todas as propriedades a seguir:
Uma partição de um conjunto S é uma coleção de subconjuntos disjuntos não vazios, cuja união é igual a S. Se R é uma relação de equivalência em um conjunto S e se x ∈ S, denota-se por [x] o conjunto de todos os elementos relacionados a x em S e chama-se esse conjunto de classe de equivalência de x.
GERSTING, J. L. Fundamentos matemáticos para a ciência da computação: um tratamento moderno de
matemática discreta. 5. ed. Rio de Janeiro: LTC, 2008 (adaptado).
A partir dessas informações, considere que, em um cluster computacional, haja 10 computadores com configurações de hardware diferentes. Os administradores desse cluster pretendem desenvolver um algoritmo de escalonamento de tarefas que mantenha processos de uma mesma aplicação sendo executados em máquinas semelhantes, mesmo com estruturas arquiteturais distintas. Assim, os administradores fizeram uma tabela relacionando os computadores. Essa tabela foi montada considerando pares de computadores.
Dessa forma, dois computadores do cluster fazem parte de uma linha na tabela se possuem alguma característica semelhante, ou seja, se apresentam algum tipo de relacionamento (por exemplo, quantidade de memória ou de núcleos de processamento semelhantes). Obviamente, apesar de não estar evidente na tabela, um computador também tem relação consigo mesmo.
Os computadores estão numerados de 1 até 10 e a tabela resultante pode ser vista a seguir.
Com base nesse cenário e no conceito de relações de equivalência, assinale a opção correta.
A) A relação descrita pela tabela é uma relação de equivalência.
B) A relação descrita pela tabela apresenta a propriedade de simetria, mas não a de transitividade.
C) A relação descrita pela tabela apresenta a propriedade de transitividade, mas não a de simetria.
D) O subconjunto de computadores representados pelos números 1, 3, 5, 7 e 10 forma uma classe de equivalência.
E) O subconjunto de computadores representados pelos números 2, 3, 4, 8 e 9 forma uma classe de equivalência.
QUESTÃO 13
ENADE 2023: Uma forma sistemática de analisar circuitos elétricos de qualquer tamanho, visando à simulação em computadores, consiste em representá-los por meio de grafos. Essa representação implica a substituição dos elementos do ramo do circuito por uma conexão orientada (arco) e de nós do circuito por vértices, resultando em um grafo orientado. A orientação dos arcos coincide com a orientação dos sentidos de referência associados de tensão e corrente, adotados pela convenção passiva.
Grafos são ditos conexos se existir, ao menos, um caminho entre quaisquer dois nós. Corte refere-se a um conjunto de arcos que, se removido, divide o grafo (tornando-o desconexo). A lei de Kirchoff das correntes, usando a nomenclatura de grafos, pode ser enunciada como “para qualquer rede de parâmetros concentrados e para qualquer de seus cortes, a soma algébrica de todas as correntes através dos arcos do corte é zero.”
Disponível em: http://www.peb.ufrj.br/. Acesso em: 16 jun. 2023 (adaptado).
A figura a seguir representa um circuito elétrico e o seu grafo equivalente.
Após aplicar a lei de Kirchoff das correntes para os cortes X = {1, 4, 5}, Y = {1, 2, 3, 5} e Z = {1, 4, 3, 6}, assinale a opção que apresenta equações válidas para a soma algébrica das correntes em dois desses cortes.
A) I1 + I4 - I5 = 0 e I1 + I2 + I3 - I5 = 0
B) I1 + I4 + I5 = 0 e I1 + I2 + I3 + I5 = 0
C) I1 + I4 + I5 = 0 e I1 + I3 + I4 - I6 = 0
D) I1 + I2 - I3 - I5 = 0 e I1 + I3 + I4 - I6 = 0
E) I1 + I2 - I3 - I5 = 0 e I1 - I3 + I4 - I6 = 0
QUESTÃO 14
ENADE 2023: Uma lista pode ser dividida em duas partes: o primeiro elemento (a cabeça da lista) e os demais elementos (sua cauda). Por exemplo, em uma lista de inteiros [1, 2, 3, 4], a cabeça dessa lista é o valor inteiro 1, enquanto sua cauda é a lista de inteiros [2, 3, 4]. Uma lista vazia é representada por [ ].
O código a seguir define duas funções descritas em uma linguagem de programação funcional que manipulam listas de inteiros. A função enade recebe uma lista de inteiros e produz uma nova lista de inteiros. A função auxiliar é chamada pela função enade e possui dois parâmetros: um número inteiro e uma lista de inteiros. Essa função produz uma lista de inteiros.
enade :: [Int] -> [Int]
enade [] = []
enade (cabeca:cauda) = auxiliar cabeca (enade cauda)
auxiliar :: Int -> [Int] -> [Int]
auxiliar x [] = [x]
auxiliar x (cabeca:cauda)
| (x `mod` 2 == 0) = x:cabeca:cauda
| otherwise = cabeca:auxiliar x cauda
Considerando o código apresentado, é correto afirmar que se a função enade for executada recebendo como parâmetro de entrada a lista [1, 2, 3, 4, 5, 6, 7, 8], o resultado será
A) [].
B) [2, 4, 6, 8].
C) [1, 2, 3, 4, 5, 6, 7, 8].
D) [2, 4, 6, 8, 1, 3, 5, 7].
E) [2, 4, 6, 8, 7, 5, 3, 1].
QUESTÃO 15
ENADE 2023: Memory leak, ou vazamento de memória, é um problema que ocorre em sistemas computacionais quando uma parte da memória, alocada para uma determinada operação, não é liberada quando se torna desnecessária. Na linguagem C, esse tipo de problema é quase sempre relacionado ao uso incorreto das funções malloc ( ) e free ( ). Esse erro de programação pode levar a falhas no sistema se a memória for completamente consumida.
A partir dessas informações, assinale a opção que apresenta um trecho com memory leak.
A) void f( ){
void *s;
s = malloc(50);
free(s);
}
B) int f( ){
float *a;
return 0;
}
C) int f(char *data){
void *s;
s = malloc(50);
int size = strlen(data);
if (size > 50)
return(-1);
free(s);
return 0;
}
D) int *f(int n){
int *num = malloc(sizeof(int)*n);
return num;
}
int main(void){
int *num;
num = f(10);
free(num);
return 0;
}
E) void f(int n){
char *m = malloc(10);
char *n = malloc(10);
free(m);
m = n;
free(m);
free(n);
}
QUESTÃO 16
ENADE 2023: Na programação de sistemas embarcados, algumas posições de memória servem para diferentes propósitos, não apenas para armazenar valores.
Em algumas dessas memórias, cada um dos bits possui um significado diferente, sendo necessário manipulá-los individualmente ou em pequenos grupos.
Por isso, o conhecimento da álgebra booliana, bem como dos operadores utilizados para realizar operações binárias nas linguagens de programação, é essencial para o desenvolvimento desse tipo de sistema.
ALMEIDA, R. M.; MORAES, C. H. V.; SERAPHIM, T. F. P.
Programação de Sistemas Embarcados: desenvolvendo
software para microcontroladores em linguagem
C. Rio de Janeiro: Elsevier, 2016 (adaptado).
A partir dessas informações, observe o código apresentado a seguir, escrito na linguagem C, que faz uso de operações binárias sobre variáveis inteiras.
#include <stdio.h>
int main()
{
int a, b;
int x, y, z;
scanf("%d %d", &a, &b);
x = a; y = b; z = a + b;
while (a) {
x = x | b;
y = y ^ a;
z = z & (a+b);
a = a >> 1;
b = b << 1;
}
printf ("%d %d %d\n", x, y, z);
return 0;
}
Após a chamada desse programa, caso o usuário entre com os valores 10 e 1, nessa ordem, qual será, exatamente, o valor da saída do programa?
A) 10 1 0
B) 10 1 11
C) 11 11 11
D) 15 12 2
E) 15 13 0
QUESTÃO 17
ENADE 2023: Dada uma sequência de caracteres S = s1, s2, ..., sn, uma subsequência de S é dada pela remoção de zero ou mais caracteres de S. Formalmente, a sequência X = x1, x2, ..., xk é subsequência de S se existe uma sequência crescente de índices i1, ..., ik de S, tal que xj = Sij para todo j = 1, 2, ..., k. Define-se, também, um prefixo da sequência S com comprimento i para i = 0, ..., n, como Si = s1, s2, ..., si.
O problema da Subsequência Comum Mais Longa (LCS) e suas variações, definido a seguir, pode ser utilizado em análise de textos e em bioinformática. O problema da LCS pressupõe duas sequências de caracteres A = a1, a2, ..., an e B = b1, b2, ..., bm, de comprimentos n e m, respectivamente. Dadas essas duas sequências, é preciso encontrar uma sequência de maior comprimento possível que seja, simultaneamente, subsequência de A e de B.
A partir dessas informações, considere que Z = z1, z2, ..., zk seja uma LCS das sequências A e B. Em relação ao problema da LCS, avalie as afirmações a seguir
I. Se an = bm, então zk = an, zk = bm e Zk-1 é uma LCS de An-1 e Bm-1.
II. Se an ≠ bm e zk ≠ an, então Z é uma LCS de An-1 e B.
III. Seja lcs(i,j) o comprimento da LCS entre Ai e Bj. Para i, j > 0, se ai ≠ bj, entãolcs(i,j) = min{lcs(i, j-1), lcs(i-1, j)}.
IV. Seja lcs(i,j) o comprimento da LCS entre Ai e Bj. Para i, j > 0, se ai = bj, então lcs(i,j) = lcs(i-1,j-1)+1.
É correto apenas o que se afirma em
A) I e III.
B) I e IV.
C) II e III.
D) I, II e IV.
E) II, III e IV.
QUESTÃO 18
ENADE 2023: Vetores de tamanho dinâmico são muito utilizados como estruturas de dados para armazenar listas etabelas de dispersão (tabelas hash).
Essa representação permite que o número máximo de elementos a ser inserido não precise ser pré-determinado. Uma técnica para implementar vetores de tamanho dinâmico é aquela que dobra o tamanho do vetor quando o número de itens a ser armazenado ultrapassa o tamanho atual do vetor.
Essa operação requer uma alocação de memória para conter o vetor com o dobro do tamanho atual e a realização de cópia dos elementos para o novo vetor. Com base nessas informações, considere uma lista linear implementada com um vetor dinâmico. Assuma que todos os itens inseridos na lista tenham o mesmo tamanho e que o vetor tenha tamanho inicial para comportar apenas 1 item.
Considerando uma sequência de n inserções no final dessa lista, o tempo médio por inserção e o tempo total gasto para executar todas as n operações são, respectivamente, da ordem de
QUESTÃO 19
ENADE 2023: É chamado de compilação o processo de conversão do código escrito pelo programador para um arquivo binário que o computador consegue executar. Esse processo é realizado por um programa chamado compilador.
Entre as diversas tarefas de um compilador, destaca-se a de identificar os possíveis erros sintáticos e semânticos. Com base nessas informações, considere uma linguagem de programação em que a sintaxe de uma operação aritmética seja dada pela seguinte gramática livre de contexto:
S → var = E; | var = E; S
E → E + E | E - E | E * E | E/E | E(E) | var
Inspirado nessa gramática, um profissional submete a seguinte sentença ao compilador dessa linguagem
de programação:
a = a / (b - b);
Com base na gramática da linguagem de programação e acerca do processo de análise sintática e semântica da sentença proposta pelo profissional, é correto afirmar que
A) a gramática gera a sentença apresentada e o erro presente na expressão está fora do escopo das análises sintática e semântica.
B) a gramática gera a sentença apresentada, porém o analisador semântico transmitirá uma mensagem de erro.
C) o analisador léxico transmitirá uma mensagem de erro, pois a gramática não gera a sentença apresentada.
D) o analisador semântico transmitirá uma mensagem de erro, pois a gramática não gera a sentença apresentada.
E) a gramática gera a sentença apresentada, porém o analisador léxico transmitirá uma mensagem de erro
QUESTÃO 20
ENADE 2023: Computação em nuvem representa um conceito relativo ao compartilhamento de recursos, tais como capacidade de processamento, armazenamento, comunicação de dados e pessoal qualificado para manter sistemas computacionais disponíveis na internet.
Quando esse compartilhamento constitui um serviço disponível para qualquer pessoa, o serviço é conhecido como nuvem pública. Quando as mesmas tecnologias são empregadas para uma única empresa, não permitindo que terceiros utilizem parte dos recursos, temos uma nuvem privada.
Considerando as vantagens que o gerente de uma empresa espera obter na contratação de um serviço de nuvem pública, avalie as afirmações a seguir.
I. Um serviço de nuvem pública proporciona a redução de custos operacionais, pois é possível dimensionar a necessidade desses recursos com base na demanda, visto que há momentos em que a empresa precisa de mais recursos e há momentos em que ela precisa de menos recursos.
II. Um serviço de nuvem pública gera aumento da velocidade de execução do software e de acesso ao software a partir de qualquer localidade, pois a nuvem pública garante acesso rápido em qualquer parte do mundo, o que contrasta com um servidor localizado na cidade da empresa.
III. Um serviço de nuvem pública viabiliza a redução do investimento inicial com equipamentos, com infraestrutura e com pessoal para iniciar a operação, visto que torna possível adiar a instalação desses recursos na empresa até que a operação se demonstre economicamente viável.
IV. Um serviço de nuvem pública propicia aumento de segurança da informação, pois as rotinas de segurança são responsabilidade do administrador da nuvem pública, não do contratante, o que contrasta com um servidor localizado dentro da empresa.
É correto apenas o que se afirma em
A) I e II.
B) I e III.
C) II e IV.
D) I, III e IV.
E) II, III e IV.
QUESTÃO 21
ENADE 2023: A fim de melhorar a qualidade de vida de seus cidadãos e de criar eficiência nos serviços e nas operações urbanas, um grupo de vereadores de uma pequena cidade decidiu fazer algumas propostas de lei que, se aprovadas e devidamente implementadas, tendem a aproximar a cidade do conceito de “cidade inteligente” por meio da implementação de novos sistemas de software.
O grupo de vereadores, preocupado com acessibilidade, consultou especialistas da área de interação humano-computador (IHC) e levantou informações a respeito de fundamentos de acessibilidade em IHC. Entre eles, estão os seguintes:
Fundamento 1. Um produto ou serviço é equitativo quando é projetado de modo que possa atender a todos os usuários, independentemente de suas habilidades físicas, sensoriais ou cognitivas. Fundamento 2. Um produto ou serviço deve ter informações perceptíveis, o que pode envolver o uso de recursos como, por exemplo, texto alternativo para imagens ou contrastes de cores suficientes para usuários com deficiências visuais ou com daltonismo.
Considerando esse contexto, avalie as afirmações a seguir.
I. Uma lei que prevê que semáforos devem exibir ícones universais associados a cada uma de suas cores está relacionada ao Fundamento 1.
II. Ainda que esteja relacionado à acessibilidade em IHC, o Fundamento 1 deixa de tratar da inclusão de pessoas cegas.
III. Dado que a cidade possui uma página na web para a obtenção de informações, uma lei que preveja a existência de telas digitais públicas que permitam o acesso às informações disponibilizadas é suficiente para caracterizar a aplicação do Fundamento 2.
É correto o que se afirma em
A) I, apenas.
B) II, apenas.
C) I e III, apenas.
D) II e III, apenas.
E) I, II e III.
QUESTÃO 22
ENADE 2023: Considere um banco de dados relacional formado por três tabelas, conforme é apresentado na figura a seguir. As chaves primárias das tabelas cliente e funcionario são chaves estrangeiras da tabela pessoa.
A partir dessas informações, considere que se queira realizar uma consulta que liste o nome e o saldo devedor de um subconjunto dos clientes. Essa consulta tem por objetivo encontrar clientes que são funcionários e que possuem saldo devedor maior do que seu salário.
Com base nessas informações, assinale a opção que apresenta corretamente a consulta SQL, em ordem crescente por saldo devedor.
A) SELECT * FROM cliente as c INNER JOIN pessoa as p, funcionario as f WHERE c.saldo_devedor > f.salario AND c.id_cliente=p.id_pessoa AND f.id_funcionario=p.id_pessoa ORDER BY c.saldo_devedor ASC
B) SELECT p.nome, c.saldo_devedor FROM cliente as c, pessoa as p WHERE c.saldo_devedor > f.salario AND c.id_cliente=p.id_pessoa AND f.id_funcionario=p.id_pessoa ORDER BY c.saldo_devedor DESC
C) SELECT p.nome, c.saldo_devedor FROM cliente as c, pessoa as p, funcionario as f WHERE c.saldo_devedor < f.salario AND c.id_cliente=p.id_pessoa AND f.id_funcionario=p.id_pessoa ORDER BY c.saldo_devedor ASC
D) SELECT p.nome, c.saldo_devedor FROM cliente as c LEFT OUTER JOIN pessoa as p on c.id_cliente=p.id_pessoa LEFT OUTER JOIN funcionario as f on p.id_pessoa=f.id_funcionario WHERE c.saldo_devedor > f.salario ORDER BY f.salario, c.saldo_devedor ASC
E) SELECT p.nome, c.saldo_devedor FROM cliente as c RIGHT OUTER JOIN pessoa as p ON c.id_cliente=p.id_pessoa RIGHT OUTER JOIN funcionario as f on p.id_pessoa=f.id_funcionario WHERE c.saldo_devedor > f.salario ORDER BY c.saldo_devedor ASC
QUESTÃO 23
ENADE 2023: As figuras a seguir representam dois circuitos que possuem a finalidade de construção de filtros para sinais analógicos.
Considerando que os amplificadores operacionais apresentados são ideais, avalie as afirmações a seguir.
I. Existe uma faixa de frequências na qual a impedância de entrada do circuito da Figura 1 é inferior à do circuito da Figura 2.
II. Ambos os circuitos realizam a função de filtro passa-baixa de primeira ordem.
III. A frequência de corte de ambos os filtros é igual.
É correto o que se afirma em
A) I, apenas.
B) II, apenas.
C) I e III, apenas.
D) II e III, apenas.
E) I, II e III.
QUESTÃO 24
ENADE 2023: Um determinado sistema embarcado possui uma porta paralela de 8 bits, na qual cada pino pode ser configurado individualmente como interface de entrada ou de saída. A direção de cada pino da porta é definida pelo bit correspondente do registrador de direção de 8 bits PORT_DIR da seguinte forma: valor 0 para configuração como entrada e valor 1 para configuração como saída.
Os bits de entrada da porta são armazenados no registrador PORT_IN e os bits de saída da porta são armazenados no registrador PORT_OUT, ambos de 8 bits. Os pinos que correspondem ao nibble (conjunto de 4 bits) menos significativo da porta de I/O são conectados aos seguintes dispositivos externos: alarme (SPK1), chave 2 (CH2), LED (LED1) e chave 1 (CH1), conforme a figura a seguir.
Considere que uma tensão VDD na porta corresponda ao valor lógico 1 e que uma tensão próxima a 0 V corresponda ao valor lógico 0.
Com base nas informações apresentadas e no esquema da figura, avalie as afirmações a seguir.
I. O nibble menos significativo do registrador PORT_DIR deverá ser carregado com o valor 9 (decimal) pelo software do sistema para configuração adequada da porta de I/O.
II. Quando ambas as chaves (1 e 2) estiverem fechadas simultaneamente, o registrador PORT_IN possuirá o valor binário X1X0 no nibble menos significativo (X significa irrelevante).
III. Para acionar o alarme e o LED, simultaneamente, o registrador PORT_OUT deverá ser carregado com o valor binário 1X0X no nibble menos significativo (X significa irrelevante).
É correto o que se afirma em
A) I, apenas.
B) II, apenas.
C) I e III, apenas.
D) II e III, apenas.
E) I, II e III.
QUESTÃO 25
ENADE 2023: Os sistemas digitais são componentes essenciais em uma ampla variedade de aplicações, desde dispositivos eletrônicos portáteis até sistemas de controle industrial.
Um dos principais aspectos do projeto desse tipo de sistema é a descrição do circuito em uma Hardware Description Language (HDL), como Verilog ou VHDL.
Essas linguagens permitem descrever o comportamento e a estrutura do circuito de forma abstrata, viabilizando a síntese e a simulação do sistema.
Um exemplo de circuito sequencial é o contador de 4 bits assíncrono, mostrado na figura a seguir, o qual foi implementado utilizando flip-flops JK.
Nesse contexto, considere que um engenheiro proponha as duas traduções desse circuito em Verilog e VHDL, equivalentes entre si, conforme observado a seguir.
Verilog:
//-----------------------------------------------
module contador_4bits (
input wire clk,
input wire reset,
output reg [1:0] count
);
always @(posedge clk or posedge reset) begin
if (reset)
count <= 0;
else
count <= count + 1;
end
endmodule
//-----------------------------------------------
VHDL:
//-----------------------------------------------
library ieee;
use ieee.std_logic_1164.all;
entity contador_4bits is
port (
clk : in std_logic;
reset : in std_logic;
count : out integer range 0 to 3
);
end entity contador_4bits;
architecture behavioral of contador_4bits is
begin
process(clk, reset)
variable q : integer range 0 to 3;
begin
if reset = '1' then
q := 0;
elsif rising_edge(clk) then
q := q + 1;
end if;
count <= q;
end process;
end architecture behavioral;
//-----------------------------------------------
Considerando as informações apresentadas, avalie as asserções a seguir e a relação proposta entre elas.
I. Qualquer um dos códigos corresponde ao circuito contador de 4 bits mostrado na figura.
PORQUE
II. Ao atingir o valor máximo da contagem, o valor da saída será zerado no próximo ciclo de clock e o processo será reiniciado.
A respeito dessas asserções, assinale a opção correta.
A) As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
B) As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I.
C) A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.
D) A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.
E) As asserções I e II são proposições falsas.
QUESTÃO 26
ENADE 2023: Considere um cenário em que um computador seja organizado com múltiplos processadores, os quais compartilham a mesma memória RAM. Cada processador possui múltiplos núcleos.
Nesse arranjo, o sistema operacional permite múltiplas threads, as quais podem ser dinamicamente alocadas para execução em diferentes núcleos e processadores.
A partir das informações apresentadas nessa situação, assinale a opção correta.
A) Sistemas com múltiplos processadores devem alocar a mesma quantidade de memória RAM para cada processador do arranjo.
B) Como há múltiplos processadores, são desnecessários os semáforos, uma vez que não há acessos concorrentes a recursos compartilhados.
C) Como a exclusão mútua não é possível em arquitetura de múltiplos processadores, apenas uma aplicação pode ser executada de cada vez, mas com múltiplas threads.
D) Os processos que possuem múltiplas threads em execução são mantidos por meio de funções da biblioteca no código da aplicação e dispensam serviços do sistema operacional.
E) Dados trocados durante a comunicação entre processos podem ser armazenados nas áreas de memória compartilhada, mas o acesso a essas áreas é intermediado pelo sistema operacional.
QUESTÃO 27
ENADE 2023: A técnica de virtualização de hardware consiste em emular um computador no qual a camada de software é executada sem que detalhes do computador físico e de seus componentes sejam expostos.
Em um ambiente de computação distribuída, a técnica pode ser útil para que o sistema operacional e os softwares do usuário sejam executados em uma máquina virtual com características permanentes, em conformidade com o que foi projetado, verificado e validado, mesmo que um computador físico diferente seja empregado.
Com base nesse contexto, é correto afirmar que
A) adquirir licenças de software do usuário no volume de uma licença para cada computador físico, o que favorece a economia de licenças, pois softwares em máquinas virtuais não correspondem a cópias extras.
B) utilizar um computador com capacidade extra de comunicação de dados para favorecer o seu desempenho, pois um sistema distribuído em máquinas virtuais consome mais recursos de rede do que o mesmo sistema distribuído sendo executado em um computador físico.
C) utilizar um computador com capacidade extra de memória principal para favorecer o seu desempenho, pois um sistema distribuído em máquinas virtuais requer mais espaço de memória física do que o mesmo sistema distribuído sendo executado em um computador físico.
D) adquirir computadores físicos com processadores similares para favorecer a compatibilidade, pois sistemas distribuídos fortemente acoplados compartilham recursos intensamente, funcionando de forma mais eficiente em máquinas virtuais quando os computadores físicos são compatíveis.
E) adquirir dispositivos de armazenamento físico com, pelo menos, o dobro da capacidade do dispositivo virtual a ser usado a fim de favorecer a disponibilidade, pois os sistemas operacionais da máquina virtual e da máquina física devem ter espaço equivalente de dados para que exista o mapeamento direto entre o dispositivo virtual e o dispositivo físico.
QUESTÃO 28
ENADE 2023: Alguns sistemas com memória virtual utilizam uma técnica chamada de paginação. Nesses sistemas, existe um conjunto de endereços de memória, denominados endereços virtuais, que são gerados durante a execução dos programas, com o uso de indexação, de registradores-base, de registradores-segmento ou de outras técnicas.
Um endereço virtual é dividido em número de página virtual e deslocamento. O número de página virtual é usado como índice dentro da tabela de páginas para encontrar o quadro correspondente. O endereço físico de memória é a concatenação entre o endereço do quadro com o deslocamento do endereço virtual.
Um mecanismo denominado TLB (do inglês, translation lookaside buffer), tipicamente implementado em hardware, fornece auxílio durante a atividade de mapeamento de endereços virtuais para endereços físicos sem passar pela tabela de página. A função do TLB é agilizar o processo de tradução de endereços lógicos para físicos.
TANENBAUM, A. S. Sistemas Operacionais Modernos.
3. ed. São Paulo: Pearson Prentice Hall, 2009 (adaptado).
Com relação à memória paginada, avalie as asserções a seguir e a relação proposta entre elas.
I. Quando um processo é escalonado para execução, tanto a MMU (Memory Management Unit) quanto o TLB são reconfigurados para o novo processo.
PORQUE
II. Para livrar-se de resíduos do processo executado anteriormente, a tabela de páginas do novo processo deve tornar-se a tabela atual, o que, em geral, é feito por meio da cópia da tabela ou de um ponteiro para ela em registradores em hardware.
A respeito dessas asserções, assinale a opção correta.
A) As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
B) As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I.
C) A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.
D) A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.
E) As asserções I e II são proposições falsas.
QUESTÃO 29
ENADE 2023: Considere que uma equipe de engenheiros projete um sistema robótico para reciclagem de resíduos sólidos, o qual utiliza visão computacional para separar objetos de plástico e de vidro. Com o objetivo de automatizar o processo de classificação, opta-se pela técnica support vector machine (SVM).
No método SVM, i é o índice do vetor suporte (1 ≤ i ≤ 5), w é o coeficiente angular (peso) e b é o coeficiente linear (polarização) da reta de separação.
O par ordenado (x, y) é a saída do sistema de Visão Computacional que representa os vetores de características dos supostos materiais, plástico ou vidro, com classificação normalizada em ƒ (i) Î {-1, +1} .
A separação linear do material é resultado da diferença entre os pontos P1 = w.x + b e P2 = y, conforme a equação a seguir.
O pseudocódigo apresentado a seguir foi projetado para solucionar o problema de classificação com valores de w e b obtidos a partir de um conjunto de dados de treinamento.
Início
w <- 0.4
b <- 2.7
para i de 1 até 5 faça
yr <- w * x[i] + b
se yr - y[i] > 0 então
f[i] <- 1
senão
f[i] <- -1
fimse
fimpara
para i de 1 até 5 faça
se f[i] = -1 então
escreva("Plástico")
senão
escreva("Vidro")
fimse
fimpara
Fim
Observe a seguinte tabela com dados de teste.
Considerando essas informações, assinale a opção que apresenta a classificação correta da sequência dos materiais na saída do algoritmo.
A) Plástico, Vidro, Vidro, Plástico, Vidro.
B) Plástico, Plástico, Vidro, Vidro, Vidro.
C) Plástico, Vidro, Plástico, Vidro, Vidro.
D) Plástico, Plástico, Plástico, Vidro, Vidro.
E) Plástico, Vidro, Vidro, Plástico, Plástico.
QUESTÃO 30
ENADE 2023: Considere que, para melhorar o desempenho de sistemas computacionais, projetistas de hardware decidam aumentar o número de processadores em vez de aumentar a frequência de clock. Dessa forma, surge a necessidade de utilizar softwares que explorem o paralelismo.
Um problema típico encontrado no desenvolvimento desse tipo de software é a dependência de dados. Nesse contexto, considere que dois processadores precisem realizar, simultaneamente, o acesso a uma mesma matriz A.
Com base nas informações apresentadas, com relação aos trechos de código em linguagem C apresentados a seguir, assinale a opção que apresenta uma situação de conflito de dados.
A) Processador 1:
int a = &A[0][0];
Processador 2:
int b = &A[0][0];
B) Processador 1:
*A[0][0] = 10;
Processador 2:
*A[0][1] = 20;
C) Processador 1:
*A[0][0] = 10;
Processador 2:
int b = &A[0][0];
D) Processador 1:
int a = &A[0][0];
Processador 2:
*A[0][0] = 20;
E) Processador 1:
*A[0][0] = 10;
Processador 2:
*A[0][0] = 20;
QUESTÃO 31
ENADE 2023: Um sinal em tempo contínuo pode ser processado, a partir de suas amostras, por um sistema que opere em tempo discreto. Para isso, é importante manter a taxa de amostragem do sinal suficientemente alta para permitir a reconstrução do sinal original sem erro ou com um erro dentro de uma dada tolerância.
LATHI, B. P. Sinais e Sistemas Lineares, 2. ed.,
Porto Alegre: Bookman, 2007 (adaptado).
Nesse contexto, considerando o teorema da amostragem, avalie as asserções a seguir e a relação proposta entre elas.
I. Para que um sinal contínuo seja reconstruído a partir de suas amostras é necessário que ele possua um espectro em frequência limitado e que a frequência de amostragem seja maior do que duas vezes a largura de faixa do sinal.
PORQUE
II. Na situação proposta, o espectro do sinal amostrado, será limitado em frequência, o que permitirá a reconstrução do sinal original antes da amostragem.
A respeito dessas asserções, assinale a opção correta.
A) As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
B) As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I.
C) A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.
D) A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.
E) As asserções I e II são proposições falsas.
QUESTÃO 32
ENADE 2023: Suponha que uma empresa de transportes deseje calcular uma rota de Manaus para São Paulo utilizando a estratégia da busca gulosa, técnica de busca local que seleciona a melhor alternativa disponível a cada passo.
Observe, a seguir, um grafo de conexão de cidades até o destino final e o quadro com estimativas de distância de São Paulo até as demais cidades do grafo.
Com base nessas informações, é correto afirmar que a solução encontrada a partir da utilização do algoritmo será
A) Manaus → Macapá → São Paulo
B) Manaus → Porto Velho → Cuiabá → Goiânia → São Paulo
C) Manaus → Porto Velho → Palmas → Goiânia → São Paulo
D) Manaus → Macapá → Belém → Palmas → Goiânia → São Paulo
E) Manaus → Macapá → Belém → Palmas → Porto Velho → Cuiabá → Goiânia → São Paulo
QUESTÃO 33
ENADE 2023: Considere que uma empresa planeje desenvolver um sistema de controle automático para manter, em um ambiente industrial, a temperatura constante por meio de um controlador proporcional-integral-derivativo (PID). O controlador PID pode ser implementado em qualquer linguagem que possua estruturas de dados adequadas para a manutenção do histórico e da taxa de mudança do sinal de erro.
Considerando essa situação, avalie as afirmações a seguir.
I. A implementação do componente Integral requer a soma de todos os erros acumulados desde o início da operação do sistema, o que torna necessário o uso de uma estrutura de dados do tipo fila.
II. A parte Proporcional do controlador PID é implementada ao ajustar, proporcionalmente, a variável de controle à diferença entre a temperatura desejada e a temperatura atual.
III. Uma pilha é adequada para o componente Derivativo, pois a taxa de mudança do erro é calculada apenas com a amostra mais recente e a anterior do sinal de erro.
É correto o que se afirma em
A) I, apenas.
B) II, apenas.
C) I e III, apenas.
D) II e III, apenas.
E) I, II e III.
QUESTÃO 34
ENADE 2023: Cada roteador em redes de computadores precisa implementar alguma estratégia de enfileiramento para controlar como os pacotes são armazenados em buffer enquanto esperam para serem transmitidos, independentemente do mecanismo de alocação de recursos.
O algoritmo de enfileiramento aloca tanto largura de banda, ao transmitir pacotes, quanto espaço de buffer, ao decidir quais pacotes são descartados.
PETERSON, L. L.; DAVIE, B. S. Redes de Computadores: uma abordagem de sistemas.
Rio de Janeiro: Elsevier, 2013 (adaptado).
Considerando as informações apresentadas, avalie as afirmações a seguir.
I. O algoritmo FIFO (First-In, First-Out) é adequado para situações em que o tráfego de dados com rajadas de longa duração provoca descarte de pacotes.
II. O algoritmo de enfileiramento justo ponderado (WFQ, do inglês Weighted Fair Queuing) permite definir um peso para cada fila, definindo quantos bits são transmitidos sempre que o roteador atender a uma determinada fila.
III. O algoritmo de enfileiramento por prioridade (PQ, do inglês Priority Queuing) evita que uma fila de menor prioridade fique indefinidamente sem ser atendida (starvation), utilizando o algoritmo Round-Robin para servir a todas as filas.
IV. Os roteadores que implementam o algoritmo de detecção antecipada aleatória (RED, do inglês Random Early Detection) mantêm a média acumulada do tamanho de suas filas e, quando esse tamanho ultrapassa, em algum enlace, um determinado limiar, uma fração dos pacotes é descartada aleatoriamente.
É correto apenas o que se afirma em
A) I e III.
B) I e IV.
C) II e IV.
D) I, II e III.
E) II, III e IV.
QUESTÃO 35
ENADE 2023: O TCP (Transmission Control Protocol) e o UDP (User Datagram Protocol) são opções frequentemente usadas em sistemas distribuídos para realizar transferência de dados entre máquinas, ainda que não sejam os únicos protocolos que funcionam com base no protocolo IP (Internet Protocol).
Com relação a esses protocolos, avalie as afirmações a seguir.
I. O protocolo TCP é usado para implementar o mecanismo de sockets utilizado em sistemas distribuídos, como mecanismo de troca de mensagens confiável.
II. O protocolo UDP é mais eficiente do que o protocolo TCP quanto ao tempo de envio de dados entre os nós de um sistema distribuído, pois gera menor overhead.
III. O protocolo UDP é uma escolha adequada para fluxos de dados em tempo real, especialmente daqueles dados que admitem perda ou corrupção de parte de seu conteúdo, tais como vídeos ou voz.
É correto o que se afirma em
A) II, apenas.
B) III, apenas.
C) I e II, apenas.
D) I e III, apenas.
E) I, II e III.
QUESTÃO 36
ENADE 2023: A análise de desempenho de sistemas computacionais é uma atividade crítica para identificar gargalos, otimizar recursos e garantir a eficiência do hardware e do software utilizados.
Nesse contexto, a respeito do impacto de desempenho gerado pelo número de threads e de núcleos de processamento em hardware e em software, assinale a opção correta.
A) O desempenho do sistema aumenta de maneira linear em relação ao aumento do número de threads e de núcleos de processamento.
B) O número de threads tem um impacto direto no desempenho do sistema, enquanto a influência do número de núcleos de processamento é insignificante.
C) O desempenho do sistema é afetado positivamente pelo aumento do número de threads e de núcleos de processamento até um certo limite dependente da aplicação.
D) O número de núcleos de processamento tem um impacto direto no desempenho do sistema, independentemente do número de threads utilizado.
E) O número de threads e de núcleos de processamento não possui relação direta com o desempenho do sistema, pois esse resultado é determinado, exclusivamente, por técnicas e por algoritmos utilizados no software.
QUESTÃO 37
ENADE 2023: A segurança de sistemas de computação é uma preocupação crescente devido à constante evolução das ameaças e das vulnerabilidades presentes no ambiente digital.
Garantir a integridade, a confidencialidade e a disponibilidade de dados e de recursos é essencial para proteger os sistemas e as informações sensíveis.
A segurança abrange, também, aspectos como autenticação, controle de acesso, criptografia, detecção e prevenção de intrusões, entre outros mecanismos de proteção.
A respeito da segurança de sistemas de computação, avalie as afirmações a seguir.
I. A criptografia é um mecanismo que permite detectar a vulnerabilidade dos dados, tornando-os ilegíveis para usuários não autorizados.
II. A auditoria de segurança é o processo de verificação de identidade de um usuário ou de um sistema, garantindo que apenas entidades confiáveis tenham acesso aos recursos.
III. O controle de acesso consiste em definir e em gerenciar as permissões de usuários e de sistemas para acessar recursos e para realizar operações específicas.
IV. A detecção e a prevenção de intrusão são técnicas utilizadas para identificar atividades maliciosas em um sistema e para tomar medidas a fim de evitar a ocorrência dessas atividades.
É correto apenas o que se afirma em
A) I e II.
B) I e IV.
C) III e IV.
D) I, II e III.
E) II, III e IV.
QUESTÃO 38
ENADE 2023: Os sistemas distribuídos consistem em múltiplos componentes de software que se comunicam e que cooperam entre si para realizar tarefas complexas.
Um padrão arquitetural comumente utilizado em sistemas distribuídos é o de microsserviços, o qual divide o sistema em componentes independentes e escaláveis, cada um executando sua própria funcionalidade específica. Essa abordagem facilita a manutenção, o teste e a escalabilidade do sistema como um todo.
Em relação a esse tema, qual dos seguintes benefícios é associado à arquitetura de microsserviços em sistemas distribuídos?
A) Capacidade de escalabilidade.
B) Garantia de consistência de dados.
C) Melhor desempenho de processamento.
D) Menor consumo de recursos de hardware.
E) Redução da complexidade de comunicação entre os componentes.
COMENTÁRIOS