Reputation: 9
Assume you are developing an OS from scratch for a small embedded platform. You want to develop a basic OS using Test Driven Development (TDD). What tests would you use to develop basic features such as adding a new task, confirming the scheduler selects the correct task based on the scheduling algorithm, or is initialized with an idle task?
Building tests around a task object seems straight forward to me, you can set/get priority, state, etc.
The scheduler itself seems to present challenges due to dependencies on tasks; but also general run time dynamics, such as the interaction of task priorities given any scheduling algorithm that uses priorities.
So my basic question to the community is how would you approach test driving an embedded OS scheduling algorithm?
Upvotes: -2
Views: 54