There have been threads about special operating systems for the SAFE network. Those are about local operating systems it seems. A distributed OS on the other hand would run in the farmers and allow clients to use the entire SAFE network as a gigantic distributed operating system.
I know very little about how distributed operating systems work. I found something called BOINC for grid computing.
The advantage of a distributed SAFE OS is that it can replace centralized servers for big applications. Imagine a search engine for example. One could hardly put the whole Google Search infrastructure into a single SAFE network app. With a distributed SAFE OS, these kinds of huge systems will be much easier to develop.
Since farmers will run on all kinds of computers and devices, and for security reasons, the distributed applications on the SAFE OS can run in sandbox JavaScript runtime environments provided as a part of the farming software. JavaScript has become very optimized because it runs in virtually all web browsers, and efficient engines are available such as V8:
“V8 is Google’s open source high-performance JavaScript engine, written in C++ and used in Google Chrome, the open source browser from Google.” – V8 JavaScript engine
And JSON is then the preferred format for data structures.
For simple searches, yes that sounds possible. Not for massive crawlers, indices and advanced query processing. That would be much easier to develop on a distributed OS.
And even for smaller applications that need simple things like cron jobs. I guess an administrator could run a local app 24/7 to achieve that, but that’s a horrible solution which is basically a simple centralized server, and we are back into the old client server model again. Not good.
There can also be a local SAFE OS. That’s something entirely different. Maybe I should rename the decentralized OS to DOS. Ha ha. But seriously I don’t know much about either ordinary or distributed operating systems. It’s just interesting to examine possibilities.
The word “distributed” in the title of this thread means distributed OS, not OS distribution. Redox is a local OS, not a distributed OS if I understand it correctly.
But the idea with this thread is that the distributed OS is run by the farmers. And it doesn’t matter what local OS the farmers use. They can even farm on smartphones!
In functionality a bit similar, but totally distributed (grid computing). So each farmer is only running a fraction of the distributed OS, similar to how they only store fractions (chunks) of encrypted data. The distributed OS is completely isolated from the local OSs.
Right, this is exactly the proposition I had in mind, and thus the thread I made.
Well my point being is that it can be feasible however downloading huge chuck of data isn’t recommended like it was said in the thread. Bigger size os should not be used on android because of the connection to the cell tower is questionable at best. Lightos, mediumos, heavyos can be catered to specific devices.
As for the cron jobs, those can be run via uri. Build a demon script to run the uri. The job here is connect the dots in a noise environment. Instead of client - server, it is data - data. By connecting to one data, will lead you 20+ other data, and have it all run automatically for you.
Yes, I was thinking similar to how users log in to the SAFE network. In fact it should be the same credentials. And each user would have their own views of the OS. And for example a software developer would use the OS in other ways than the general public.
In practice smartphones today may have too little computing power to farm, but in principle it should be able even for small devices to farm a bit. Remember, each farmer is only running a tiny part of the whole OS.
I don’t know how they do it in grid computing. The farmers should run snippets of code, such as up to max 1 minute execution time. Similar to Ethereum. And instead of downloading compiled code like Java bytecode, JavaScript snippets are executed. One can even imagine programs automatically generating other programs on the fly. JavaScript programs are just strings that immediately can be executed.
Until I clicked on the Grid computing link that leads to the wiki page, I hadn’t considered the “virtual supercomputer” angle. Woah.
So if the Bitcoin network is able to process ~ 5 ZFlops (5x10e21 !!!), what’s the formula for calculating the Powa (sorry, Darth Vader used the word most memorably for me) of the Safe Network?
Would a simple HTML5/CSS/javascript front end (similar to what was done here in CSS to show the Mac desktop) work with the SAFE API allowing you to create folder trees, save and/or share files, view videos, etc with the SAFE file locations referenced as though they are local locations (or a combination of both…)? Kind of like a browser based OS with SAFE as the back end. It could then be published as an app, or as in installer if that is wanted as well…booting it from SAFE may be the tough part though
That sounds like a good idea, even though the front end would be separate from the OS. The OS I have in mind is “simply” a massive distributed JavaScript engine running on top of the SAFE network. So using HTML5 and JavaScript for the front end would be convenient. But technically it could be any front end, such as an iPhone app or a text console.