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
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
algoritmo de sensor
avaliacao
estruturas de dados · algoritmos de programação
Revisar conceitos de algoritmos e estruturas de dados.
O aluno pode falhar ao descrever a estratégia de retransmissão, sugerindo uma abordagem ineficaz ou insegura para a transmissão dos dados.
ciencia_tecnologia
criatividade
cientifico
Questões parecidas com resolução
- — O mapa da feira aparece na tela, mas ninguém consegue escolher uma barraca! — disse Ravi, ao cuidar de um tablet usado…
- No balcão de uma biblioteca de bairro, um computador controla o empréstimo de livros. O funcionário passa o código de…
- Explique o papel do processador (CPU), da memória RAM e do armazenamento ao abrir um arquivo, descrevendo o fluxo de…
- Descreva, passo a passo, como um arquivo grande é fragmentado em pacotes, transmitido por múltiplos roteadores e…
- Por que um algoritmo de verificação baseado em CRC detecta com mais eficácia rajadas de erros em pacotes do que um único…
- Explique, em uma frase, a diferença entre comutação store-and-forward e cut-through em um switch ao encaminhar um pacote…
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
