Open arulbose opened 6 years ago
Update: Added red-black tree Algo support to be used by rose scheduler which gives the possibility to have O(log(n)) time for searching/adding/deleting of task. The rbtree support source code has been ported from Linux source. The files are available in rose/lib/rbtree.c. The idea is to make rose scheduler configurable to support both Linear(O(n)) search/add/delete(which is already present) and O(log(n)) using rbtree.
Pending task:
To add code for the rose task management code to use functions in rbtree.c.
Description: In file: kernel/task.c the current implementation of __add_to_ready_q() and __remove_from_ready_q() will scale poorly when the number of thread grows. It has to be re-written with an efficient algorithm with O(log n) scheduling in mind