수식도 거의 없고 그래서 어렵지는 않았지만 어떤 얘기를 하고싶은 건지는 이해가 잘 안돼서 따라가기 힘들었다..
uniprocessor 가정하지만, task allocation이 statically 이루어지는 distributed/multiprocessor system으로도 확장가능함
각 task는 unique한 priority를 부여받고, 더 높은 priority의 task에게 preemption될 수 있음
a set of tasks where denotes highest priority and denotes lowest priority.
→
worst case blocking by lower priority task를 , interference by higher priority task를 라고 했을 때, no failure hypothesis 가정 하에서 response time analysis
여기에서 다루는 hw+sw fault들은 해당 task를 다시 실행하거나 alternate action을 대신 실행하는 걸로 극복할 수 있다고 가정
fault는 한번에 한 task에만 영향을 줄 수 있으며, 이는 해당 task의 실행이 모두 끝났을 때 발견
그리고 fault가 났을 때 이를 해결하기 위해서 inter-arrival time between faults 는 특정 값보다 커야한다.
→ 문제가 생겼을 때 영향받은 task를 다시 재실행해서 fault 해결하는 방법
fault들의 minimum inter-arrival time 가 주어졌을 때의 ?
얘를 recurrence relation으로 바꾸면
→ 전체를 다시 재실행하는게 아니라 exception handler같은 매커니즘이 error recover 해줌
amount of computation time by exception handler를 라고 했을 때 ()
당연히 re-execution 하는 것보다 task set이 schedulable해지지만 QoS는 re-execution하는게 훨씬 더 낫다..
→ error checking과 state restoration이 합쳐진 매커니즘
모든 recovery block은 primary module과 하나 이상의 alternate module, acceptance test를 가지고 있음
primary module의 computation time을 , alternate module의 computation time을 라고 할 때 - alternate module의 실행시간이 더 길 수 있음 -
멋져요 내가 전해주의 친구라니 가슴이 웅장해진다..