frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: Run Linux kernel drivers in userspace on Neptune OS, NT-like OS on seL4

1•cl91•39m ago
For the past ten years I have been working on a side project which I have taken to call Neptune OS [1], named after the ill-fated Microsoft Windows codename. Neptune OS is a Windows NT-like operating system built on the seL4 microkernel. The project has reached a point where it can run non-trivial, unmodified or minimally modified Windows or Linux kernel drivers as native (ie. NOT in a VM), unprivileged userspace processes on seL4. For instance, here [2] is amdgpu and i915 (from the Linux kernel DRM subsystem) successfully performing mode-setting on Haswell+Radeon RX560 for hotplugged monitors. The linked youtube channel has more demos for storage, networking, and power management drivers.

Why I started working on this and why I think it is interesting:

If you were familiar with early Windows NT development history, you'd probably know that NT was (allegedly) supposed to be a microkernel OS, where system services exist as user-mode servers sitting on top of a Mach-style port-based IPC. Unfortunately the late 1980s' computing technology prevented Microsoft from realizing this vision, and as a result the Windows we see today has everything dumped into kernel space (they even put an HTTP server in kernel mode!), leading to stability and security issues.

This unrealized potential of the NT architecture never sat right to me, so when the seL4 microkernel was open-sourced back in 2014, I immediately thought, well perhaps one could rewrite NT as a personality on top of seL4. This "re-imagined" NT on seL4 will have the NT system call services implemented as a userspace process that talks to client processes via the high performance, formally verified seL4 IPC. Device drivers will then also run in isolated, unprivileged user processes, the crash of which will not lead to a BSOD-inducing full system crash.

Another feature of the NT architecture I find very interesting is its so-called Environment Subsystems. These sit on top of the NT native system call services and expose them as more friendly user-facing APIs, such as Win32 and POSIX. I always thought it was a real shame that Microsoft has essentially given up on this idea and today's Windows is Win32-only (WSL1 being a much-needed redemption, but was then mercilessly dropped). With this seL4 rewrite of NT, I thought I could take this idea one step further and expand these environment subsystems to include device drivers, as they now run in userspace where they should have belonged.

The result is the Linux Driver Subsystem in the latest v0.4 release of the project. In addition to native Windows drivers (which now run in userspace), this subsystem allows unmodified (or very minimally modified) Linux kernel drivers to run as native user processes on seL4. Note these are not virtual machines --- they are just regular, unprivileged processes. More technical details can be found in the mailing list announcement [3], but the basic idea is to add a new arch port to the Linux kernel similar to that of UML and the lkl (Linux-kernel-as-a-library) project. When compiled for this architecture, a reduced Linux kernel binary will essentially run as a regular program, requesting resources from the underlying host OS via the seL4 IPC. This binary communicates with the host OS via a carefully defined interface, which is in fact not tied to seL4 specifically, meaning our work can potentially be reused for other NT-like OSes (including Windows itself), or even other non NT-like OSes (with some more effort).

Anyway, if you have read this far, I hope you find this project interesting. What do you think? What kind of applications do you think Neptune OS can potentially have? Do you think the project has sufficient industrial relevance to go beyond a hobby operating system? Let me know in the comments below.

[1] https://github.com/cl91/NeptuneOS [2] https://youtu.be/BJIrUZIGgBc [3] https://lists.sel4.systems/hyperkitty/list/devel@sel4.system...

Manycore Processor

https://en.wikipedia.org/wiki/Manycore_processor
2•peter_d_sherman•55s ago•0 comments

2015 Office of Personnel Management data breach

https://en.wikipedia.org/wiki/2015_Office_of_Personnel_Management_data_breach
1•chistev•1m ago•0 comments

Ask HN: How do you handle sensitive data in distributed systems?

1•Securelytixdev•5m ago•0 comments

The Booker Prize 2026

https://thebookerprizes.com/the-booker-library/prize-years/2026
1•downbad_•5m ago•0 comments

GPT-6 Astra has made a major breakthrough in the Goldbach Conjecture

https://twitter.com/captain_sude/status/2100277626120163664
2•nsoonhui•5m ago•0 comments

Better prompt caching for GPT-6

https://openai.com/index/better-prompt-caching-for-gpt-6/
1•theanonymousone•7m ago•0 comments

A thread of early explorations with Claude Opus 5.5

https://twitter.com/claudeai/status/2102471866635919731
1•tzury•8m ago•0 comments

Next.js 16.3.6 fixes critical ImageResponse RCE (CVE-2026-94545)

https://nextjs.org/blog/nextjs-security-update-september-22-2026
2•joshcsimmons•8m ago•1 comments

Show HN: Magic Jev Ball

https://jevball.rorz.io/
1•sarreph•9m ago•0 comments

Show HN: Sniffslop – browser extension to classify text using Jev

https://github.com/kmcheung12/sniffslop/
1•a_c•10m ago•0 comments

Googlebook is here and ready for pre-order

https://blog.google/products-and-platforms/devices/googlebook/pre-order-googlebook/
2•mikece•10m ago•0 comments

Bonsai 2 27B

https://huggingface.co/prism-ml/Ternary-Bonsai-2-27B-gguf
2•tosh•13m ago•0 comments

LogiCola 3: Fallacies. Learn how to spot hidden flaws in everyday reasoning

https://logicola.org/blog/informal-fallacies
1•kotk•14m ago•0 comments

Bonsai 2 27B: 5.9 GB of weights for a 27B model

https://twitter.com/barronnotbaron/status/2102540009299677571
2•tosh•15m ago•0 comments

The (AI) Nature of the Firm

https://camerongordon0.substack.com/p/the-ai-nature-of-the-firm
2•iciac•18m ago•0 comments

Self-hosting DeepSeek V4 for a software engineering org

https://www.parity.io/blog/self-hosted-ai-software-engineering
3•ilovefood•21m ago•0 comments

Breaking Postgres Superuser Guardrails: Attacking Security-Hardening Extensions

https://mehmetince.net/part-2-6-breaking-the-superuser-guardrails-attacking-security-hardening-ex...
1•jesdo•22m ago•0 comments

Plain-text files are at risk

https://paste.sr.ht/~awal/b76caf6f213a96a634454fa7292c035a10035b49
1•birdculture•22m ago•0 comments

Show HN: GoNix – A Unix with a Go Userspace

https://gonix.dev/
2•prologic•22m ago•1 comments

Nigel Richards (Scrabble Champion) [video]

https://www.youtube.com/watch?v=zfH2Jwuf3sM
1•pyrex•24m ago•0 comments

Show HN: Life Forge – Open-source flight simulator for autonomous AI agents

https://github.com/zariffromlatif/life-forge
1•mdzariflatif•25m ago•0 comments

Technology does not automatically mean progress

https://www.kulman.sk/en/technology-does-not-automatically-mean-progress/
2•ig0r0•25m ago•0 comments

Is PyPI Down?

https://status.python.org
3•jpopesculian•26m ago•0 comments

Back to Coupling and Cohesion

https://bastrich.tech/coupling-and-cohesion/
1•kciter•27m ago•0 comments

Blocklist Whitelist Anything on YouTube or YT Kids

2•devanshvarshney•28m ago•1 comments

A lesbian bar required KN-95 masks. When this changed, all hell broke loose

https://www.bostonglobe.com/2026/09/22/magazine/greenfield-last-ditch-bar-backlash/
2•Michelangelo11•29m ago•0 comments

How Zambia Approved an HIV Drug Quickly

https://asteriskmag.com/issues/15/how-zambia-approved-an-hiv-drug-in-12-days
1•yorwba•31m ago•0 comments

Silicon solar cells could cut satellite power costs by up to 90%

https://www.surrey.ac.uk/news/silicon-solar-cells-could-cut-satellite-power-costs-90-cent
3•giuliomagnifico•38m ago•1 comments

Show HN: Run Linux kernel drivers in userspace on Neptune OS, NT-like OS on seL4

1•cl91•39m ago•0 comments

Show HN: Data structure that lets different parts of math work together

https://github.com/tmilovan/composite-machine
1•calculusmachine•41m ago•0 comments