GeraProva GeraProva Provas com IA para professores do Brasil
Computação5º anoBNCC EF15CO06Difícil⏱ longo

Projete um algoritmo de alto nível para um dispositivo sensor com armazenamento limitado que colete amostras…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF15CO06

Conhecer os componentes básicos de dispositivos computacionais, entendendo os princípios de seu funcionamento.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Projete um algoritmo de alto nível para um dispositivo sensor com armazenamento limitado que colete amostras, processe localmente, divida em pacotes e transmita os dados de forma segura; descreva estruturas de dados, controle de sequência e estratégia de retransmissão.

✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.

Resposta esperada

Resposta modelo (algoritmo de alto nível): 1) Estruturas: ring buffer de amostras; tabela de pacotes pendentes com campos {seq, tamanho, timestamp, estado}; chave simétrica e nonce. 2) Coleta: ler sensor em intervalo T e armazenar no ring; aplicar pré-processamento (média/filtragem). 3) Compressão: aplicar compressão sem perda leve (ex.: LZ4) sobre bloco de N amostras para reduzir uso de flash. 4) Fragmentação: dividir bloco comprimido em pacotes = MTU; cada pacote recebe cabeçalho {seq, total, offset, checksum, ts}. 5) Segurança: cifrar payload com AES-GCM e gerar tag (autenticidade); armazenar pacote cifrado em flash até confirmação. 6) Transmissão: enviar janela deslizante de W pacotes; aguardar ACK por seq; ao receber ACK marcar estado=OK e liberar espaço. 7) Retransmissão: se timeout por seq, retransmitir com backoff exponencial; limitar tentativas e sinalizar erro se esgotar. 8) Gerenciamento de armazenamento: se espaço baixo, priorizar descarte de amostras mais antigas com registro de perda; compactar blocos inativos. 9) Energia: agrupar transmissões, desligar rádio entre janelas, salvar estado em armazenamento antes de hibernar. Pseudocódigo (resumido): - loop coletar -> append ring - quando ring.size >= N -> bloco = compress(pop N) - pacotes = fragmentar(bloco) - for p in pacotes: p.payload = aes_gcm_encrypt(p.data); store(p); send(p) - on ACK(seq): marcar e apagar p - on timeout(seq): retransmit(p) até max_retries Observações: usar seq numérico para remontagem, checksum para detectar corrupção local, e MAC/AEAD para integridade e confidencialidade durante rotas múltiplas.

Explicação

O algoritmo proposto aborda de forma abrangente os desafios de coleta, processamento e transmissão de dados em um dispositivo com armazenamento limitado, utilizando estruturas de dados apropriadas para gerenciar amostras e pacotes. A implementação de criptografia e controle de sequência garante a segurança e a integridade dos dados transmitidos, enquanto as estratégias de retransmissão e gerenciamento de armazenamento otimizam a eficiência do sistema. Além disso, a consideração do consumo de energia é crucial para prolongar a vida útil do dispositivo em campo.

Raio-X da questão

Dificuldade Difícil
Bloom Criar
Leitura alto
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade multipla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

algoritmo de sensor

📌 Objetivo

avaliacao

🧱 Pré-requisitos

estruturas de dados · algoritmos de programação

📚 Reveja

Revisar conceitos de algoritmos e estruturas de dados.

⚠️ Erro mais comum

O aluno pode falhar ao descrever a estratégia de retransmissão, sugerindo uma abordagem ineficaz ou insegura para a transmissão dos dados.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

criatividade

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Funcionamento de dispositivos computacionais

🔎 Procurar outra questão

Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.