So, we have to look at our requirements first. QNX systems want performance, UNIX compatibility, increased reliability/security, field-proven, and supportable. They want certain features that increase developer productivity, too. You can run a lot of stuff on QNX within its existing security expectations.
Whereas, seL4 is a separation kernel. It does almost nothing but with high security. To do anything, you have to add software to it that can undermine its security or performance claims at a system level. These are also unproven additions most people know nothing about. That overall deal might be fine if one component being ultra-secure is your highest goal.
QNX is usually better than seL4 for most needs. Even security people because they’ll want useful functionality which they’d have to secure on seL4 anyway.
So, we have to look at our requirements first. QNX systems want performance, UNIX compatibility, increased reliability/security, field-proven, and supportable. They want certain features that increase developer productivity, too. You can run a lot of stuff on QNX within its existing security expectations.
Whereas, seL4 is a separation kernel. It does almost nothing but with high security. To do anything, you have to add software to it that can undermine its security or performance claims at a system level. These are also unproven additions most people know nothing about. That overall deal might be fine if one component being ultra-secure is your highest goal.
QNX is usually better than seL4 for most needs. Even security people because they’ll want useful functionality which they’d have to secure on seL4 anyway.