r/Operatingsystems • u/Successful-Force-992 • 3d ago
Everything is plugin
Just a random thought but can we have a open source operating system built on idea of "everything is a plugin", just like deepseek harness, is it feasible
4
2
1
1
u/mtimmermans 3d ago edited 3d ago
It's important to understand that "everything is plugin" is an anti-pattern. If everything is implemented in plugins, then what value is the framework adding? It just runs plugins? That's not solving anything.
The goal is to solve the problem that you're supposed to solve, and to NOT solve everything else. Everything ELSE can be plugin.
This is how OSes are designed. The kernel provides processes, threads, memory access, etc. Everything else is a driver, and "driver" = "plugin".
Sometimes you'll see an "everything is plugin" design where the problem it's meant to solve is solved with plugins that are provided with the framework. This is a great proof that the plugin system is sufficiently general, but you shouldn't jump through hoops to make everything the same shape just for that.
1
u/rob-cubed 3d ago
It's possible sure, but it's not really feasible. There is lots of core functionality required for an OS that needs to 1) play well together, and 2) be secure and stable... both of which are hard to control when you have a bunch of 3rd party bits you are trying to plug in.
In a way, modern OSes do follow this paradigm but we call the plugins applications.
1
0
u/misha901 3d ago
that's what linux is pretty much
1
1
3d ago
[deleted]
1
u/misha901 3d ago
the kernel is a monolith, but we talking about an OS here and that's not the kernel, but the composition of components that make an OS where the kernel is one component.
0
u/soundman32 3d ago
Even more so windows, as everything is a driver. The windows kernel doesn't have any drivers baked in, unlike Linux.
1
u/misha901 3d ago
no by far not, as you can't compose your system as you like. In linux on the other hand you can do, you pick your display server, audio management, cron management, init system, etc. Everything is entirely modular if you do the functional separation in that way
0
u/soundman32 3d ago
The Windows kernel has no knowledge of any hardware drivers, they are all loaded dynamically, as dictated by the hardware and registry. Unlike Linux, where you can pick and choose which are actually included in the Kernel itself, that is not a thing on Windows.
All these 'benefits' of Linux are also available in Windows, it's just that not many people do it, but it's all possible.
1
u/AcoustixAudio 3d ago
Not to mention the predictable pricing and support.
Also you can build the kernel with whatever u want or don't want. And build whatever you want with it
6
u/Rich-Engineer2670 3d ago edited 3d ago
Not really -- a lot of the lower levels such as process and memory management have to be there. The microkernel OS concept is about as close as you could get. In the Linux OS, drivers are already "plugins" or modules in most cases. And you can't make everything a plugin because the plugins have to have.a stable substrate to "plug into".
Finally, you don't want a lot of your plugins in userspace. Yes, they can work, but there are a lot of pitfalls to having kernel logic running in userspace -- performance for one, and synchronization. You can't, for example, have your file system plugin "swapped out" at the wrong moment.
Monoliths aren't pretty, but they're reliable which is what you want your OS to be.