On 17 May 2016, at 1:28 , Julien Delange <julien.delange@gmail.com> wrote:

Now, about the real-time extensions, I do have some questions:
1. Is there any documentation about it?
2. What are the new features? Are they documented? Is there a support with CAmkES? I remembered having seen something like _period and _budget attributes in CAmkES but no documentation. What is the unit (processor tickers, nanoseconds?)? Having documentation and/or examples would be appreciated.
3. Where to grab it, use it and experiment it?

We’ll make our latest RT branch publicly available, probably this week. It comes with an updated manual that describes the mechanisms. But note that it is experimental, and details are likely to change before it is merged into mainline. However, it’s overall very mature, and will start to be merged into mainline fairly soon.

In a nutshell, the new model replaces the time slice with a scheduling context (which is a new cap-protected object). An SC is essentially a pair of period and budget, where a thread is restricted to use no more than its budget every period. If period=budget, you get the old time slice back.

Scheduling contexts have a well-defined semantics of donation, they can be passed over IPC, so you can run a server on the budget of its clients with correct accounting (i.e. the client gets charged for the server time), essentially simulating a migrating threads model. There are other goodies, such as timeout exceptions...

Gernot



The information in this e-mail may be confidential and subject to legal professional privilege and/or copyright. National ICT Australia Limited accepts no liability for any damage caused by this email or its attachments.