[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[microblaze-uclinux] 2.6 Kernel Port - Scheduler Implementation in HW



 The HybridThreads project at the University of Kansas has implemented an
entire HW/SW co-designed multithreaded OS in which all system services
are implemented within an FPGA.  The scheduler in this system is a O(1)
scheduler, just like the one in the 2.6 kernel, in which individual FIFOs
are kept in BRAMs for each priority-level and an optimized
priority-encoder keeps track of the highest-priority level active in the
system.  The scheduler is capable of making scheduling decisions in a
fixed-amount of time (~15 clock cycles), thus drastically reducing the
amount of overhead and jitter found in the process of scheduling tasks
within an OS.  More documentation on this system, and the scheduler, can
be found at:

http://wiki.ittc.ku.edu/hybridthread/Main_Page

and in the following papers:

[
hthreads: A Hardware/Software Co-Designed Multithreaded RTOS Kernel,
  Presented at ETFA 2005, in Catania, Italy
]
http://wiki.ittc.ku.edu/hybridthread/Image:Etfa05.pdf






- Jason Agron, University of Kansas
jagron@xxxxxxxxxxx

___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/