Idea for a Node Operating System

Remnicent

New Member
Joined
Sep 8, 2021
Messages
2
Reaction score
0
Credits
26
I was wondering if there was already an operating system that was built on nodes instead of programs? If not, how would I go about getting the support of the Linux community in creating something like this? The reason that it would like to see this are an operating system built on nodes or plug-ins would be more efficient since it could borrow shared nodes with other programs and save storage. It would also be more customizable and easier to develop programs for. You could also easily implement hybrid online-offline programs easily. Anyways, thanks for reading.
 


What do you mean by nodes instead of programs? I don't see how this is in any way beneficial.

As things stand we already have shared libraries. That is how functionality is shared between programs and how we save storage.

For example, to provide support for the .jpg file-format we have libjpg. All programs that need to support the .jpg file-format link with libjpg.

Also at the kernel level - the kernel is separated into a lot of smaller modules too, which can be dynamically loaded, or unloaded at runtime. And again, some modules can be enabled/disabled in the build too.

So we already have a way for programs to share functionality and a way to keep things modular. In Linux we try to stick to the UNIX philosophy wherever possible.
 
Last edited:
What do you mean by nodes instead of programs? I don't see how this is in any way beneficial.

As things stand we already have shared libraries. That is how functionality is shared between programs and how we save storage.

For example, to provide support for the .jpg file-format we have libjpg. All programs that need to support the .jpg file-format link with libjpg.

Also at the kernel level - the kernel is separated into a lot of smaller modules too, which can be dynamically loaded, or unloaded at runtime. And again, some modules can be enabled/disabled in the build too.

So we already have a way for programs to share functionality and a way to keep things modular. In Linux we try to stick to the UNIX philosophy wherever possible.
I think node is the wrong word. This idea came from using lots of programs whose primary function worked well but had terrible UIs or other features didn't work well. I think it would be great if you could just write code for the core function that you want your program to have and then plug it into other people's functions to make everything else work. Like you said, you can do this to an extent with libraries; however, people only write a library if that code is heavily used. Most people just make a program. Basically all you would have to do to make a program would be to connect different function's inputs and outputs or write your own function if you wanted to. I'm not sure if that makes sense or if this is the right forum for something like this, but thank you for the response.
 
I think node is the wrong word. This idea came from using lots of programs whose primary function worked well but had terrible UIs or other features didn't work well. I think it would be great if you could just write code for the core function that you want your program to have and then plug it into other people's functions to make everything else work. Like you said, you can do this to an extent with libraries; however, people only write a library if that code is heavily used. Most people just make a program. Basically all you would have to do to make a program would be to connect different function's inputs and outputs or write your own function if you wanted to. I'm not sure if that makes sense or if this is the right forum for something like this, but thank you for the response.
Again, you can do that already. Numerous programs already do that. Many Linux programs that follow the Unix philosophy have a purely textual interface.
e.g. vim, emacs, git, gcc, gdb, vlc
All of the above programs work in the terminal.

They also have one or more graphical front-ends that allows you to run them on the desktop!

gvim uses GTK to provide a GUI for vim, I can’t remember what the GUI version of emacs uses. There are numerous IDE’s, implemented using various GUI libraries to wrap/encapsulate the functionality of git, gcc, gdb etc etc.
VLC has a few different GUI’s available. I think QT is the library used to provide the primary interface. But there are (or were) a couple of others in things like GTK, cocoa.

And then there is nmap which has the zenmap GUI. I could go on and on!

So, many programs that can run in the terminal can also be wrapped/encapsulated in GUI’s and given a more attractive front-end.

Granted, there are some applications that are purely GUI only and do not put their functionality into libraries.

But again, you have graphical programs like Gimp which have extensive plugin libraries which provide custom functionality. It can also access and use functionality from other external programs. It is also scriptable. You can write scripts to perform many tasks in gimp.

Blender is another GUI application with tons of functionality built into it, but it also has a lot of plugins available. And it also has a complete Python API. Every piece of functionality in blender can be accessed via a script. So it’s perfectly possible to set up a .blend file and a script to manipulate objects in the file, change different settings/parameters and render an image, or an animation.

The video editor Openshot leverages blenders Python API in order to generate animated text effects which can be used for generating credits, or on screen captions, or any other text based animation. You can even set up your own text animation plugins for openshot in this way too!

So there are a lot of GUI programs which can already use functionality from other GUI programs.

So we’re already using lots of programs like this every day. And many of us probably never even realise it!
 
And if a feature doesn’t work well, submit a bug report to the developers. Or if you’re a capable enough coder - create a patch/fix for the issue yourself and submit a pull request to the developers!
 
I think node is the wrong word. This idea came from using lots of programs whose primary function worked well but had terrible UIs or other features didn't work well. I think it would be great if you could just write code for the core function that you want your program to have and then plug it into other people's functions to make everything else work. Like you said, you can do this to an extent with libraries; however, people only write a library if that code is heavily used. Most people just make a program. Basically all you would have to do to make a program would be to connect different function's inputs and outputs or write your own function if you wanted to. I'm not sure if that makes sense or if this is the right forum for something like this, but thank you for the response.
There is an OS like this: UNIX (and derivs). Most programs are a frontend that uses libs (.so) or are extensible via an API (such as core- and minimum- styled tools). You can write your own front or middle so long as you study that program's API.
 

Members online


Top