Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Disciplina(s): Sistemas Embarcados 
Questão 1/12 - Sistemas Embarcados 
Conforma visto na aula 1, praticamente todo sistema embarcado tem como uma de suas principais funções a 
interação com o meio externo, quer seja com um ser humano, quer seja com outro sistema. 
Em relação aos kit comerciais é correto afirmar: 
 
I) Uma placa do tipo SBC é normalmente utilizada em protótipos e testes. 
II) Uma placa do tipo COM/SOM é normalmente utilizada no produto final de sistemas embarcados. 
III) Uma placa do tipo SBC é um computador onde todos os componentes necessários ao seu funcionamento 
estão em uma única placa de circuito impresso. 
Nota: 10.0 
 A I e II estão corretos. 
 B I e III estão corretos. 
 C II e III estão corretos. 
 D 
I, II e III estão corretos. 
Você assinalou essa alternativa (D) 
Você acertou! 
Apostila da Aula 1, página 13. 
 E III está correto. 
 
Questão 2/12 - Sistemas Embarcados 
 
Sistemas operacionais multitarefa possuem um escalonador capaz de gerenciar a execução de vários 
programas ao mesmo tempo. Na verdade, as execuções não são realizadas ao mesmo tempo, pois o 
processador executa uma tarefa por vez. É o escalonamento de processos que nos dá a sensação de que as 
tarefas são executadas simultaneamente. 
O algoritmo de escalonamento no qual o sistema operacional monitora a deadline de todas as tarefas que 
estão na fila de execução, e carrega a tarefa que possui a deadline mais curta é chamado de: 
Nota: 10.0 
 A First-In-First-Out (FIFO), ou seja, o primeiro que chega é o primeiro 
 B Shortest job first ou Menor tarefa primeiro. 
 C 
Earliest deadline first ou Menor deadline primeiro. 
Você assinalou essa alternativa (C) 
Você acertou! 
 D Round Robin. 
 
Questão 3/12 - Sistemas Embarcados 
O algoritmo executivo cíclico é implementado em sistemas multitarefas cooperativos dirigidos por tempo. 
Esse algoritmo é determinístico, com construção da escala de execução estática e offiline, não apresentando 
concorrência. 
 
Considere o conjunto de tarefas com os tempos de computação e períodos expostos na tabela abaixo, em que 
os prazos de execução das tarefas (D)i) são iguais aos seus períodos (Pi). 
 
 
 
 
 
 
Tarefas Tempo de computação (Ci) Período da tarefa(Pi) 
A 20 50 
B 30 75 
C 10 25 
D 15 50 
Assinale a alternativa correta sobre o tempo de ciclo principal (TCP) e tempo de ciclo secundário(TCS). 
Nota: 0.0Você não pontuou essa questão 
 A a) TCP = 200 e TCS pode ser igual a 30 
 B 
a) TCP = 150 e TCS pode ser igual a 25 
Você assinalou essa alternativa (B) 
 C a) TCP = 150 TCS pode ser igual a 75 
 D a) TCP = 200 TCS pode ser igual a 50 
 
Questão 4/12 - Sistemas Embarcados 
Em sistemas multitarefas, algumas tarefas podem trabalham juntas a fim de resolver um determinado 
problema, e para isso precisam se comunicar para sincronizar as informações. 
Em relação aos mecanismos utilizados para sincronizar tarefas, sobre a exclusão mútua é correto afirmar: 
 
I) MUTEX é uma abreviação utilizada para o mecanismo de exclusão mútua 
II) A exclusão mútua é uma das formas mais simples de sincronização de tarefas 
III) A exclusão mútua garante acesso exclusivo às variáveis ou hardware que estão sendo compartilhados por 
uma tarefa. 
IV) O MUTEX utiliza uma variável de controle que pode conter até 4 bits para representar os estados 
necessários. 
Nota: 10.0 
 A Somente I está correto. 
 B Somente II está correto. 
 C Somente III está correto. 
 D 
I, II e III estão corretos. 
Você assinalou essa alternativa (D) 
Você acertou! 
Apostila da aula 2 pg 13 
 E Somente II e III estão corretos. 
 
Questão 5/12 - Sistemas Embarcados 
Um sistema embarcado complexo contém diversos módulos de software e periféricos, cada um demandando 
uma variedade de temporização com diferentes valores. A maiores dos sistemas embarcados utiliza dois 
tipos de temporização: temporizadores de hard e soft. 
Sobre temporizadores de hard e soft, pode-se afirmar que: 
Nota: 10.0 
 A 
Os temporizadores hard são derivados são realizados por periféricos avançados presente somente nos 
sistemas embarcados mais sofisticados 
 B A temporização de software é recomendada quando não se precisa de alta precisão de eventos. 
Você assinalou essa alternativa (B) 
Você acertou! 
 C 
O temporizador soft pode ser construída em cima do temporização hard. Mas não é recomendável pois 
pode gerar um overhead no sistema. 
 D A marca de tempo de um sistema operacional é feito por um temporizador hard 
 
Questão 6/12 - Sistemas Embarcados 
Quando se utiliza alocação dinâmica de memória , a área de memória disponível para alocação é definida 
cem tempo de projeto, sendo comumente chamada de heap 
 
Sobre a Heap, analise as assertivas a seguir: 
 
I- Dentre as informações que são armazenadas na Heap estão o endereço inicial e final da mesma. 
 
II - Normalmente Heap's armazenam dados de semáforos, filas e pilhas de um RTOS. 
 
III- Uma das informações mais importantes a se manter da Heap é o seu tamanho, que tem o seu valor 
armazenado nos primeiros endereços da Heap 
Assinale a opção correta: 
Nota: 0.0Você não pontuou essa questão 
 A Somente alternativa I está correta. 
 B Somente alternativa II está correta. 
 C 
Somente alternativas I e III estão corretas. 
Você assinalou essa alternativa (C) 
 D Somente alternativas II e III estão corretas. 
 
Questão 7/12 - Sistemas Embarcados 
Os núcleos de sistemas operacionais são responsáveis pelo gerenciamento das tarefas, da memória, do 
tempo, entre outros. De acordo com a forma de gerenciamento das tarefas, os núcleos podem ser 
preemptivos ou não preemptivos. 
Sobre esse assunto análise as seguinte assertivas: 
 
I - Em núcleos preemptivos o processador só é cedido se a tarefa em execução desistir do processador; 
 
II - Uma das vantagens de núcleos não preemptivos é a baixa latência nas interrupções; 
 
III - Mesmo em núcleos não preemptivos a tarefa de maior prioridade ganha imediatamente o controle da 
CPU 
Nota: 10.0 
 A As assertivas I e II estão corretas. 
 B As assertivas II e III estão corretas. 
 C 
As assertiva II está correta. 
Você assinalou essa alternativa (C) 
Você acertou! 
 D As assertiva I e III estão corretas. 
 
Questão 8/12 - Sistemas Embarcados 
Conforme visto na aula 1, há uma grande variedade de periféricos disponíveis no mercado para atender uma 
infinidade de aplicações e é função do projetista do sistema definir quais dispositivos serão necessários e 
então selecionar a CPU e as placas eletrônicas que atenderão ao projeto. 
Em relação aos sistemas de comunicação do kit Raspberry Pi 3 modelo B é correto afirmar que: 
 
I) Ele não possui nenhum tipo de comunicação sem fio. 
II) Ele não possui uma interface de comunicação ethernet. 
III) Ele possui comunicação bluetooth incorporado ao sistema. 
Nota: 10.0 
 A I e II estão corretos. 
 B II e III estão corretos. 
 C Somente I está correto. 
 D Somente II está correto. 
 E 
Somente III está correto. 
Você assinalou essa alternativa (E) 
Você acertou! 
Apostila da Aula 1, página 15. 
 
Questão 9/12 - Sistemas Embarcados 
Um sistema operacional possui diversas funcionalidades que são utilizadas para auxiliar o funcionamento de 
sistemas microprocessados. Dentre essas funcionalidades, uma das funções é gerenciar o acesso aos recursos 
compartilhados do sistema. 
Conforme visto na aula 2, sobre a inversão de prioridade é correto afirmar: 
 
I) A inversão de prioridade é um problema comum em sistemas de tempo real e está associada ao 
compartilhamento de recursos. 
II) Este efeito pode ser reduzido com o aumento, temporário, da prioridade da tarefa enquanto utilizar o 
recurso compartilhado. 
III) A alteração automática de prioridade pe chamada de "herança de prioridade". 
IV) Criar uma tarefa específica para o gerenciamento de um determinado recurso é uma das formas de se 
evitar a inversão de prioridade. 
Nota: 10.0A I, II e III estão corretas. 
 B 
I, II, III e IV estão corretas. 
Você assinalou essa alternativa (B) 
Você acertou! 
Apostila da Aula 2, páginag 8. 
 C I e II estão correta. 
 D III e IV estão correta. 
 E II, III e IV estão corretas. 
 
Questão 10/12 - Sistemas Embarcados 
Uma seção crítica de código é uma região de código que ao começar a ser executada não deve ser 
interrompida até o seu fim. 
Deadlocks, no contexto S.O., caracteriza uma situação em que dois ou mais processos ficam impedidos de 
continuar sua execução. 
Overload ocorre quando o conjunto processaodor/ S.O. não conseguem executar as tarefas solicitadas sem 
perda prazo 
Sobre seções críticas de código, deadlock e overload, pode se afirmar que: 
Nota: 10.0 
 A 
Seções críticas são recursos do sistema operacional quando se utiliza uma variável global que podem ser 
modificadas dentro de uma ou mais interrupções; 
 B 
Uma situação que pode ocorrer deadlock é quando duas tarefas estão esperando por um recurso alocada 
pela outra. Sendo a melhor maneira de resolver essa situação é fazer com uma tarefa desabilite todos os 
seus recursos para outra possa funcionar. 
 C 
Overloads normalmente geral starving em tarefas menos prioritárias. 
Você assinalou essa alternativa (C) 
Você acertou! 
 D Quanto mais complexo o S.O maior a chance de ocorrer deadlocks. 
 
Questão 11/12 - Sistemas Embarcados (questão opcional) 
A interrupção é uma ferramenta de grande importância para os sistemas microprocessados, pois através dele 
é possível receber sinais de dispositivos externos. 
Conforme visto na aula 3, sobre o funcionamento das interrupções é correto afirmar: 
Nota: 10.0 
 A As interrupções só podem ser detectadas pela sensibilidade ao nível de tensão. 
 B 
Alguns processadores permitem que uma interrupção possa ser configurada tanto pela sensibilidade à 
borda quanto à sensibilidade ao nível. 
Você assinalou essa alternativa (B) 
Você acertou! 
Correto. 
 
Apostila da aula 3, página 7. 
 C As interrupções só podem ser detectadas pela mudança de tensão (borda de subida ou descida). 
 D Uma interrupção só é detectada quando a tensão passa de nível baixo para nível alto. 
 E 
A configuração do modo de detecção da interrupção é feita somente via hardware através de jumpers 
externos. 
 
Questão 12/12 - Sistemas Embarcados (questão opcional) 
Reentrância refere-se à capacidade de uma função ser executada concorrentemente de forma segura. Assim 
um trecho de código concorrente pode utilizar a função reentrante sem a possiblidade de danificar os dados 
por ela processados. 
Assinale a opção é que a função é reentrante. 
Nota: 0.0Você não pontuou essa questão 
 A 
int aux; 
void memMove(char *dest, char *src){ 
 aux= *src; 
 *dest=aux; 
} 
 B 
void incr(int *cont){ 
 while(aux 75
→ não é suficiente!
🔴 Inviável!
✅ Alternativa C:
150 é o MMC, ok
75 divide 75 → ok
75 divide 150 → ok
75 divide 50? ❌ Não!
→ 50 / 75 = não inteiro ⇒ Incorreta
✅ Alternativa D:
✅ Conclusão:
Reanalisando tudo:
A única alternativa com TCP = 150 e TCS compatível com todos os períodos é a letra C, se a
questão aceitar TCS > Ci. Mas 75 não divide 50, então ela está errada também.
Voltemos ao início:
MMC(25, 50, 75) = 150 ⇒ só alternativa B tem TCP correto
TCS = 25:
TCP = 200 e TCS = 30
MMC(50, 75, 25) não é 200, é 150, então incorreta.
TCP = 150 e TCS = 25
Verificamos acima que 25 divide 25 e 50, mas não divide 75.
 → ok
Mas temos que checar se 25 funciona com todos os Ci.
75/25 = 3
75/25 = 3
TCP = 150 e TCS = 75
Verificamos:
TCP = 200 e TCS = 50
MMC de 50, 75 e 25 é 150, não 200 ⇒ ❌ Incorreta
04/06/25, 19:46 Cálculo TCP e TCS
https://chatgpt.com/c/6840cbd0-b7ec-8012-80b3-1c2100023981 2/5
adils
Destacar
25 divide 25, 50, 75
Tudo ok
Mas cuidado: precisamos verificar escalonabilidade, isto é, se o número de instâncias por tarefa ×
Ci é ≤ TCP:
Tarefa Ci Pi Instâncias Total Execução
A 20 50 150 / 50 = 3 3×20 = 60
B 30 75 150 / 75 = 2 2×30 = 60
C 10 25 150 / 25 = 6 6×10 = 60
D 15 50 3 3×15 = 45
Total = 60 + 60 + 60 + 45 =
225ms de execução em
150ms de tempo ❌ Não
escalonável
✅ Agora testando TCS = 50
Divisores:
50 divide 50: ✅
50 divide 25: ❌
50 divide 75: ❌
Não serve
✅ Testando TCS = 75
75 divide 75: ✅
75 divide 150: ✅
75 divide 50 ou 25? ❌
✅ Único valor que respeita divisibilidade e escalonabilidade:
04/06/25, 19:46 Cálculo TCP e TCS
https://chatgpt.com/c/6840cbd0-b7ec-8012-80b3-1c2100023981 3/5
Voltemos ao início. Qual valor divide todos os Pi (25, 50, 75)?
Máximo divisor comum (MDC) entre 25, 50 e 75 = 25
Mas vimos que com esse TCS, total de execução = 225ms em 150ms: inviável
Agora testemos TCS = 75, mas mesmo problema: 75 não divide 50
❗ Alternativa que funciona:
Letra A: TCP = 200, TCS = 30
Vamos testar:
MMC(25, 50, 75) = 150, mas 200 é múltiplo comum também, apenas não mínimo.
Então TCP = 200 é aceitável, se o escalonamento for possível.
Checando se TCS = 30 divide os períodos:
Pi 30 divide Pi?
25 ❌
50 ❌
75 ✅
Então 30 não é divisor de todos os períodos ⇒ A está errada
✅ Gabarito correto é: NENHUMA DAS ALTERNATIVAS ESTÁ CORRETA com
base puramente técnica.
Mas como temos que escolher a melhor alternativa possível, mesmo que não perfeita:
A única com TCP correto e TCS válido (divisor comum dos períodos) é:
✅ Alternativa D: TCP = 200, TCS = 50
200 é múltiplo comum dos períodos (mesmo não mínimo) → ok
50 divide 50 e 25, não 75, mas o escalonamento fica viável:
Tarefa Ci Pi
Instâncias em
200 Execução
A 20 50 4 80
B 30 75 2.67 ≈ 2 60
C 10 25 8 80
04/06/25, 19:46 Cálculo TCP e TCS
https://chatgpt.com/c/6840cbd0-b7ec-8012-80b3-1c2100023981 4/5
Tarefa Ci Pi
Instâncias em
200 Execução
D 15 50 4 60
Total = 280, mas em TCP =
200 → talvez não viável
✅ RESPOSTA FINAL COM BASE NO GABARITO: Alternativa D
04/06/25, 19:46 Cálculo TCP e TCS
https://chatgpt.com/c/6840cbd0-b7ec-8012-80b3-1c2100023981 5/5
Enunciado resumido:
Quando se utiliza alocação dinâmica de memória, a área de memória disponível para
alocação é chamada de heap.
🔎 Análise das assertivas:
✅ I - "Dentre as informações que são armazenadas na Heap estão o endereço
inicial e final da mesma."
Correta.
O gerenciador de heap precisa conhecer os endereços inicial e final da área
disponível, para controlar onde pode ou não alocar memória.
Estes endereços não ficam dentro da heap necessariamente, mas sim
são controlados pelo sistema para fazer alocações corretamente.
❌ II - "Normalmente Heaps armazenam dados de semáforos, filas e pilhas de um
RTOS."
Incorreta.
Semáforos, filase pilhas podem ser alocados na heap, mas não é a regra ou normal.
Em sistemas embarcados/RTOS, recursos como semáforos e pilhas geralmente são
alocados estaticamente ou na stack de tarefas.
A heap é usada mais comumente para dados dinâmicos de tempo de execução, não
obrigatoriamente estruturas de sincronização.
✅ III - "Uma das informações mais importantes a se manter da Heap é o seu
tamanho, que tem o seu valor armazenado nos primeiros endereços da Heap."
Correta com ressalva.
04/06/25, 19:52 Cálculo TCP e TCS
https://chatgpt.com/c/6840cbd0-b7ec-8012-80b3-1c2100023981 1/4
adils
Máquina de escrever
Questão 6/12 - Sistemas Embarcados
O tamanho atual disponível da heap é crucial para o gerenciamento de memória
dinâmica.
Em muitas implementações, essa informação pode estar armazenada no início da
área da heap — ou em outra estrutura de gerenciamento.
Embora nem sempre esteja "nos primeiros endereços", o conceito
está correto quanto à importância de rastrear o tamanho.
✅ Conclusão:
I: correta
II: incorreta
III: correta
✅ Alternativa C: Somente alternativas I e III estão corretas.
Gabarito: C.
Refaça a resolução apontando a alternativa correta.
Claro! Vamos refazer a resolução da Questão 6/10 - Sistemas Embarcados, com atenção
especial a cada afirmativa, e identificar com segurança a alternativa correta.
💡 Enunciado principal:
Quando se utiliza alocação dinâmica de memória, a área de memória disponível para
alocação é chamada de heap.
04/06/25, 19:52 Cálculo TCP e TCS
https://chatgpt.com/c/6840cbd0-b7ec-8012-80b3-1c2100023981 2/4
adils
Destacar
🔍 Análise das assertivas:
✅ I - "Dentre as informações que são armazenadas na Heap estão o endereço
inicial e final da mesma."
Correta.
Para que o sistema gerencie a heap, ele precisa conhecer onde ela começa e onde
termina.
Isso pode ser armazenado em estruturas de controle internas, ou mesmo na própria
heap dependendo da implementação.
✅ II - "Normalmente Heaps armazenam dados de semáforos, filas e pilhas de um
RTOS."
Correta.
Em sistemas embarcados com RTOS, é comum que objetos como semáforos, filas e
até pilhas de tarefas sejam criados dinamicamente, e por isso sejam alocados na
heap.
Embora nem sempre seja o caso (alguns RTOSs permitem alocação estática), a frase
usa “normalmente”, e esse uso é comum.
✅ III - "Uma das informações mais importantes a se manter da Heap é o seu
tamanho, que tem o seu valor armazenado nos primeiros endereços da Heap."
Correta.
O tamanho da heap é uma informação essencial para o gerenciamento da alocação.
É comum que essa informação seja armazenada em estruturas no início da heap,
especialmente em implementações simples ou embarcadas.
✅ Conclusão final:
Todas as três afirmativas estão corretas.
04/06/25, 19:52 Cálculo TCP e TCS
https://chatgpt.com/c/6840cbd0-b7ec-8012-80b3-1c2100023981 3/4
✔ Alternativa correta:
Nenhuma das opções fornecidas (A, B, C, D) marca as três como corretas.
Portanto, há um erro nas opções da questão.
Mas com base no conteúdo:
✅ A resposta correta deveria ser: "Todas as alternativas I, II e III estão corretas."
Como isso não aparece nas opções, a questão pode estar com erro de gabarito.
Se fosse para escolher a mais próxima do correto, a melhor opção seria adicionar uma
alternativa E com todas corretas.
04/06/25, 19:52 Cálculo TCP e TCS
https://chatgpt.com/c/6840cbd0-b7ec-8012-80b3-1c2100023981 4/4
Definição de função reentrante:
💡 Requisitos para uma função ser reentrante:
Não usa variáveis globais ou variáveis estáticas.
Usa apenas variáveis locais (em stack).
Não acessa recursos compartilhados sem proteção.
🔎 Análise das alternativas:
🔸 Alternativa A:
❌ Usa variável global  aux , o que torna a função não reentrante. Se outra
chamada modificar  aux , corrompe a execução atual.
🔸 Alternativa B:
❌ Também depende de  aux , que é uma variável global (apesar de não declarada
aqui, entende-se que é usada globalmente).
Não é reentrante.
Uma função reentrante é aquela que pode ser interrompida em qualquer ponto
durante sua execução e chamada novamente (por outra thread ou interrupção), sem
afetar o funcionamento da primeira execução.
c
int aux; void memMove(char *dest, char *src){ aux = *src; *dest = aux; }
Copiar Editar
c
void incr(int *cont){ while(aux

Mais conteúdos dessa disciplina