Andreas Polychronopoulos
|
Scheduling processes-threads and questions...
|
Andreas Polychronopoulos
12/11/2008 3:59 PM
post18446
|
Scheduling processes-threads and questions...
Hi ,
I would like to create a number of processes(single threaded) and run them on a Neutrino x86 system using the FIFO
scheduling, and measure the execution time of each process.
I know that threads on Neutrino are scheduled globaly across all processes. I have study some of the documentetion
about scheduling-algorithms at http://www.qnx.com/developers/docs/6.4.0/neutrino/sys_arch/kernel.html#SCHEDULING. I know
that the FIFO algorithm is only applied when 2 or more threads share the same priority and are in the READY state.
1) Can i implement this creating a number of programs (single-threaded) set the highest-priority to each thread-process-
program and set scheduling-algorithm as FIFO ? Will this approach give me correct(with the mean of real) results for the
processes execution time ?
2) The other solution i thought is to create a new image of Neutrino where i haved enabled only the FIFO scheduling-
algorithm.Altering some files as nano_sched.c, ker_sched.c in the services/system/ker/ directory perhaps i can enable
only the FIFO algorithm for all threads and processes. Then built all the source and create a new image. After booting
the new image i can develope some processes and measure the execution times.
I imagine that the second approach is more difficult than the first, but i think it will give better results. What is
your advice ? I want to do this for academic reasons.I have checked also the topic: http://community.qnx.com/sf/
discussion/do/listPosts/projects.core_os/discussion.newcode.topc1888
thanks in advance
|
|
|