I'm complete newbie into this area and I'm trying out the RTSJ 2.1 beta Linux. I'm using this on Ubuntu with the linux real time kernel. Is there anyway to find out whether the real time kernel is being actually used or in other words is there a way to find out whether RTSJ works fine with the real time kernel on Ubuntu? I see that the programs get compiled and run irrespective of whether I use the real time kernel or the generic kernel.
I would assume, like other distributions, that you either boot the real-time kernel or you don't. uname should show you what you are running, but you'd have to ask the Ubuntu folk what you should see for the RT kernel.
To see if you are benefiting from real-time, you need to run a RTSJ app that tracks deadline misses or measures latency/jitter. Try it on the non-real-time kernel and the real-time one and see what you get. Some of the examples in the "Getting Started" guide should be usable for these purposes.
You can use a simple ps command to list the threads and what RT queue and priority the threads are running based on the procID.
Use the following:
ps -p <PID> -Lo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
where <PID> is the process id of your JVM.
You should see several threads on the FIFO scheduling queue with real time priorities.