Re: Fwd: Fwd: [Cryptography] seL4 going open source

Valerio Bellizzomi <selnet-dP4/[email protected]>
Newsgroups gmane.comp.capabilities.general
Organization SEL
Message-ID <[email protected]>
On Sat, 2014-06-28 at 10:32 +1000, Gernot Heiser wrote:
> > On Thu, 2014-06-26 at 22:33 -0700, Bill Frantz wrote:
> >> ====== Forwarded Message ======
> >> Date: 6/24/14 6:43 PM
> >> Received: 6/24/14 1:56 PM -0400
> >> From: [email protected] (ianG)
> >> To: [email protected] (Cryptography Mailing List), 
> >> [email protected] (Crypto discussion list)
> >> 
> >> http://sel4.systems/
> >> 
> >> […]
> >> Finally, seL4 is the first (and still only) protected-mode OS kernel
> >> with a sound and complete timeliness analysis. Among others this means
> >> that it has provable upper bounds on interrupt latencies (as 
> >> well as
> >> latencies of any other kernel operations). It is therefore the only
> >> kernel with memory protection that can give you hard real-time guarantees.
> > 
> > I think it is not the only one kernel that can give hard real-time
> > guarantees.
> > 
> > please take a look here http://www.xtratum.org
> 
> I had a look at the XtratuM papers and could not find any indication of it having undergone a sound and complete worst-case execution-time (WCET) analysis. In fact, I have not seen any evidence of *any* protected kernel other than seL4 having undergone such an analysis. If anyone knows of any such system, and can point to any evidence, please let me know.
> 
> For those not familiar with sound WCET analysis, this is a static-analysis approach which examines all possible code paths from an entry point, uses a sound (i.e. conservative) micro-architectural model of the processor pipeline, caches etc to calculate an upper execution-time bound on each such code path, and identifies the longest of those as the WCET. Information on how this was done for seL4 can be found at http://ssrg.nicta.com.au/projects/TS/realtime.pml.
> 
> Having said that, even in the absence of a sound WCET analysis (and without having dug very deep), the claim that XtratuM is suitable for hard real time *in the domain it is designed for* is probably credible. But it needs to be understood that there are pretty fundamental differences between XtratuM and seL4. seL4 is a general-purpose microkernel, designed as a base for almost arbitrary systems. In particular, it provides very general, dynamic resource management. In contrast XtratuM is a simple separation-kernel style hypervisor, which supports only completely static partitioning of time and space. This obviously makes for a much simpler system (also much simpler to analyse, so a WCET analysis should not be hard), but also limits its applicability.
>
> Specifically, XstratuM does a simple round-robin schedule of partitions with a 10ms time slice. The obvious implication is that the worst-case interrupt latency is 10*((n-1)+w)) ms, where n is the number of partitions and w is the WCET of the kernel. Interrupt latencies of the 10s of milliseconds are not acceptable for the majority of hard real-time systems. In contrast, the WCET of seL4 is at least 2 orders of magnitude less (and can probably pushed lower by another OoM with some significant effort, mostly on the verification side).
> 
> Note that a similar “partition scheduler” has been implemented for seL4 as well, in order to produce a military-grade separation kernel configuration that can be argued to be free of covert channels (see the infoflow paper at last year’s S&P linked from http://ssrg.nicta.com.au/projects/TS/infoflow.pml). While standard practice, I consider this approach an expensive and inflexible hack, and we’re working on something better, even for this confidentiality-type separation.
> 
> Also, I don’t want to dodge the fact that seL4 is still quite imperfect as a real-time platform, particularly for mixed-criticality systems (where the “criticality” of a subsystem is orthogonal to its timeliness requirements). We’re working on API improvements that will solve this. These won’t be in the initial open-source release, as the model isn’t finalised yet, but I expect this to happen within the next 12 months.
> 
> Hope this helps to clarify things,
> Gernot


The paper characterizes xtratum as bare-metal hypervisor (not
microkernel or separation kernel). More precisely xtratum is a type 1
hypervisor that uses para-virtualization.

My understanding is that the application domain of xtratum is batch
processing of signals and similar embedded applications, not
general-purpose interative processing.

In such a domain, the round-robin scheduler sounds good.


_______________________________________________
cap-talk mailing list
[email protected]
http://www.eros-os.org/mailman/listinfo/cap-talk
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.