1. Identify 10 different computing objects or scenarios which require real-time operating system.
1. Digital Signal Processing
2. HDTV receiver and display
3. Laser Printer
4. Video Conferencing
5. Cell Phones
6. Railway Reservation System
7. Robot Used in Recovery of Displaced Radioactive Material
8. Chemical Plant Control
9. Automated Car Assembly Plant
10. Multimedia multicast
11. Internet routers and switches
2. Discuss the requirements of a real-time operating system.
Basic requirements of a Kernel RTOS:
1. Task management:
This allows application software developers to design their software as a number of separate “chunks” of software, each having distinct goal, and predictable executing time.
TASK SCHEDULING:
RTOS do their scheduling of tasks using a “priority-based preemptive scheduling”. The basic rule of priority-based preemptive scheduling is that at every moment in time, “The Highest Priority Task that is Ready to Run, will be the Task that Must be Running”. That means if both a low-priority task and a higher-priority task are ready to run, the scheduler will allow the higher-priority task to run first. The low-priority task will only get to run after the higher-priority task has finished with its current work.
If a low-priority task has already begun to run, and then a higher-priority task becomes ready then it will then immediately stop the execution of the low-priority task, and allow the higher-priority task to run. After the higher-priority task has finished its current work, the low-priority task will be allowed to continue running.
2. Inter task communication and Synchronization: It passes the tasks information from one to another, without damaging or corrupting the information. These are necessary in a preemptive scheduler of many tasks, because without them the tasks might communicate with corrupted information or otherwise interfere with each other. It uses