RELÓGIOS


1) Em um sistema industrial, um computador A é responsável por registrar um certo evento EVA enquanto o computador B é responsável por registrar um certo evento EVB. Os cristais de quartzo usados nos relógios desses computadores divergem da UTC no máximo por uma taxa de desvio (drift rate) de 10-4. Quando o sistema foi ligado, o relógio do computador A estava adiantado em relação a UTC por 3ms e o relógio do computador B estava adiantado em relação a UTC por 2mS. Os eventos foram registrados nos seguintes horários: EVA aos 20002mS do Computador A e EVB aos 20000 mS do computador B.

Qual evento aconteceu antes ? Justifique numericamente a sua resposta.


2) Em um sistema industrial, um computador A é responsável por ler a tensão e enviar para o computador central o valor lido e sua hora local em segundos desde 1/1/1970. Um outro computador B é responsável por ler a corrente e enviar para o computador central o valor lido e sua hora local em segundos desde 1/1/1970.

O computador central recebeu as seguintes mensagens:

Do computador A: 15V aos 120000 segundos

Do computador B: 13A aos 130000 segundos

Suponha que os relógios dos computadores A e B estavam perfeitamente sincronizados em 1/1/1970 e que os cristais de quartzo usados nos relógios desses computadores divergem em relação ao relógio do computador central no máximo por uma taxa de desvio (skew rate) de 10-4.

Qual o máximo desvio temporal que pode haver entre estas duas medidas, em segundos do computador central ?


3&4) Em um sistema industrial, um computador A é responsável por ler um certo sensor S a cada 100 milisegundos, e enviar a medida para um outro computador B, o qual executa a estratégia de controle. Os cristais de quartzo usados nos relógios desses computadores divergem um do outro no máximo por uma taxa de desvio (drift rate) de 10-4. Não existe sincronização de relógios, e cada computador utiliza seu relógio local.

3) Na perspectiva do computador B, qual o intervalo de tempo entre as medições realizadas pelo computador A ?

(a) Entre 100,01 e 99,99 milisegundos.

(b) Entre 100,02 e 99,98 milisegundos.

(c) Entre 100,1 e 99,9 milisegundos.

(d) Entre 101 e 99 milisegundos.

(e) Entre 102 e 98 milisegundos.

4) Suponha que os relógios são resincronizados perfeitamente a cada 2 segundos, quando então o erro (skew) entre eles é reduzido a zero. Na perspectiva do computador B, qual o intervalo de tempo entre as medições realizadas pelo computador A ?

(a) Entre 100,01 e 99,99 milisegundos.

(b) Entre 100,02 e 99,98 milisegundos.

(c) Entre 100,1 e 99,9 milisegundos.

(d) Entre 101 e 99 milisegundos.

(e) Entre 102 e 98 milisegundos.

5) Em uma aplicação industrial são utilizados 20 computadores na coleta dos dados. Os relógios destes 20 computadores são sincronizados a cada P segundos com a UTC, mas o mecanismo de sincronização usado deixa um erro residual no momento da sincronização de 1 ms. Assume-se uma taxa de deriva máxima (drift rate) em relação à UTC de 10-5, e a aplicação tolera erros de no máximo 1s entre dois computadores quaisquer. Qual o valor máximo de P para manter o sistema dentro dos limites operacionais desejados ?



EXECUTIVO CÍCLICO


1) Considerando o conjunto de tarefas abaixo, tente criar uma escala de tempo (executivo cíclico) para atender os deadlines solicitados. As tarefas T1, T2 e T4 compartilharem a mesma estrutura de dados (seção crítica).

T1: C1=1 P1=5 D1=5

T2: C2=2 P2=6 D2=6

T3: C3=2 P3=10 D3=10

T4: C3=3 P3=15 D3=15



2&3) Considerando o conjunto de tarefas abaixo, tente criar uma escala de tempo (executivo cíclico) para atender os deadlines solicitados.

T1: C1=3 P1=10 D1=10

T2: C2=3 P2=15 D2=15

T3: C3=15 P3=30 D3=30


2) Pode-se dizer que:

(a) É impossível.

(b) É possível, desde que algumas preempções sejam permitidas.

(c) É possível, desde que nenhuma preempção seja permitida.

(d) É possível, dado que os períodos são múltiplos entre si.



3) No caso das tarefas T1 e T2 compartilharem a mesma estrutura de dados, então:

(a) É impossível.

(b) É possível, desde que algumas preempções sejam permitidas.

(c) É possível, desde que nenhuma preempção seja permitida.

(d) É possível, dado que os períodos são múltiplos entre si.


4) No que diz respeito ao escalonamento de sistemas de tempo real, cite uma vantagem e uma desvantagem do executivo cíclico sobre o escalonamento com prioridades e teste de escalonabilidade.


5) Cite a vantagem e a desvantagem de um executivo cíclico preemptivo sobre um executivo cíclico não preemptivo.


6) Quais são os fatores que orientam a definição do ciclo menor na construção da grade de tempo de um executivo cíclico ?


7) A tabela abaixo descreve um sistema a ser escalonado por um executivo cíclico.


(a) É possível resolver com uma grade de tempo não preemptiva ? justifique.


(b) Construa uma grade de tempo que na verdade implementa um escalonamento EDF preemptivo.

(c) Caso a tarefa A seja esporádica, ainda assim é possível escalonar este sistema ? Justifique a sua resposta.


Tarefas

Tempo Computação

Período

Deadline

A

1

5

5

B

3

8

8

C

6

20

20



8) Considerando o conjunto de tarefas abaixo, tente criar uma escala de tempo (executivo cíclico) para atender os deadlines solicitados. As tarefas T1 e T2 compartilham uma mesma tabela, enquanto as tarefas T3 e T4 compartilham uma mesma lista encadeada. Procure minimizar os overheads.

T1: C1=2 P1=8 D1=8

T2: C2=8 P2=16 D2=16

T3: C3=4 P3=24 D3=24

T4: C4=4 P4=48 D4=48


9) Mesmo que não existam variáveis compartilhadas, e várias tarefas executem dentro do mesmo ciclo menor, é possível usar um ciclo menor de 8 ? Justifique sua resposta.


10) Considerando o conjunto de tarefas abaixo, tente criar uma escala de tempo (executivo cíclico) para atender os deadlines solicitados. As tarefas T1 e T2 compartilham a mesma estrutura de dados.

T1: C1=2 P1=6 D1=6

T2: C2=4 P2=8 D2=8

T3: C3=2 P3=12 D3=12


11) Considerando a questão anterior, é possível usar um ciclo menor (minor cycle) de 2 unidades de tempo? Qual a principal razão para tentar?