What would you actually want in an operating system?
What would you actually want in an operating system?
So a lot of are programming operating systems, but I'm really curious to hear what all of YOU would like to see in an OS.
So, post ahead I guess.
So, post ahead I guess.
My post is up there, not down here.
Re: What would you actually want in an operating system?
A do-what-I-mean command.
Re: What would you actually want in an operating system?
I want my OS to handle most known audio formats,video formats, document types, Web pages, etc. natively.
No drivers. No apps. Just play a song, or play a video, or print a document, or display a Web page. No Internet Explorer. No media player.
The OS should do it all. Period.
That is what I'm working on now.
No drivers. No apps. Just play a song, or play a video, or print a document, or display a Web page. No Internet Explorer. No media player.
The OS should do it all. Period.
That is what I'm working on now.
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Re: What would you actually want in an operating system?
So everything is integrated in one huge chunk? No seperate apps? That's actually amazing. What about terminals?SpyderTL wrote:I want my OS to handle most known audio formats,video formats, document types, Web pages, etc. natively.
No drivers. No apps. Just play a song, or play a video, or print a document, or display a Web page. No Internet Explorer. No media player.
The OS should do it all. Period.
That is what I'm working on now.
My post is up there, not down here.
Re: What would you actually want in an operating system?
What about them?SoLDMG wrote:So everything is integrated in one huge chunk? No seperate apps? That's actually amazing. What about terminals?
Having applications is fine, but I don't want to be forced to use an application, as a user. If I want to get creative, and do something like load a video file and extract and save the audio into an mp3 file, I want to be able to do that from the command line, and preferably in one line. Or if I want to convert an mp3 file to a video file, by rendering the waveform and saving that as an mp4 file, I'd like to be able to do that too.
I'd like to be able to stream a podcast from the Internet, listen to it, and save it to disk all in real time.
I'd like to be able to plug in a webcam, and start capturing a still image every 10 seconds, compare the images and calculate the "difference" between them, and save them to disk if they exceed some threshold.
The OS could do all of this, but it would need to be intimately aware of the various file types, data formats, and the relationships between them.
Linux actually does this fairly well... Much better than Windows. But it relies heavily on various apps and utilities to do most of the work. Finding and collecting all of the command line utilities to be able to do all of the above would take months. And even then, remembering all of the names of the various utilities would be nearly impossible, since they all use different, cryptic names.
The problem is that the OS has no clue what is inside any of those files, or any network packets. So it can't do anything to help the user accomplish a task.
The real role of the "application" is to provide the user with a friendly "interface" to make tasks easier and quicker. But I'd rather the application not actually "do the work".
Think about Java /.NET. They are both very popular development environments, but when you look at the code written in these languages, a large percent of the code is just responsible for rendering the user interface and telling the existing, built in classes what to do when the user clicks a button.
I think the OS should essentially be an "interface" between the UI and the functionality. This is so that the UI could be swapped out, or removed altogether, if the user prefers to use the command line.
Haiku is actually really close to what I want. But there's something about the way it was implemented that makes it... Less than intuitive, for me at least. Maybe I just haven't given it a fair chance...
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Re: What would you actually want in an operating system?
Here is my problem with Haiku... I googled "Haiku tips and tricks", and found this article:
How about something like:
Is there any reason the OS can't update itself to the latest version?
I understand why this is necessary (because the designers wanted a unix-like subsystem). But is that really the best we can do today?If upgrade your Haiku install frequently and want the latest and the best from the Haiku SVN, then you can follow these steps to create a script that will do just that:
1. Create a simple text file and name it ”upgrade”
2. Paste the following into the text file:
#!/bin/sh
pkgman add-repo http://packages.haiku-os.org/haikuports ... c2/current
pkgman add-repo http://download.haiku-os.org/haiku-repo ... 2/current/
pkgman update -y
sync
sleep 1
shutdown -r
3. Make the text file executable from the Terminal:
chmod +x upgrade
4. Launch the script from the Terminal with ./upgrade
Optionally you can move the script to /booh/home/config into the /bin directory so you can invoke it from anywhere.
What the script does is download the latest HPKG of the operating system, together with the latest WebPositive and bootloader, install them then reboot your computer.
How about something like:
Code: Select all
System.Update
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: What would you actually want in an operating system?
I'd assume that running the one important commandSpyderTL wrote:How about something like:Is there any reason the OS can't update itself to the latest version?Code: Select all
System.Update
Code: Select all
pkgman update
- AndrewAPrice
- Member
- Posts: 2299
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
Re: What would you actually want in an operating system?
I'm tired of the junk that uses precious CPU time. I think it would be useful to have an operating system that freezes background applications (if it's unfocused, it's frozen, unless the user explicitly gives it permission to run in the background.) Shutdown and bootup should be near instant.
Last edited by AndrewAPrice on Tue Sep 23, 2014 7:55 am, edited 1 time in total.
My OS is Perception.
Re: What would you actually want in an operating system?
Amen!
To put it another way, have you ever just sat and watched your windows machine's hard drive light?
No applications running, just boot up at watch it. It will be on for a solid 3-4 minutes, and will then be hit every 1-2 seconds for pretty much the whole time it is on.
It's always busy indexing files, moving sectors, pre-caching applications, querying network topography, etc. I want my OS waiting for me to give it a command. I want it to boot up like an Atari 2600!
And I want it to shut down immediately. Windows wouldn't need to notify every application and every service and every network that it is shutting down if it didn't run all of that stuff in the background in the first place.
To put it another way, have you ever just sat and watched your windows machine's hard drive light?
No applications running, just boot up at watch it. It will be on for a solid 3-4 minutes, and will then be hit every 1-2 seconds for pretty much the whole time it is on.
It's always busy indexing files, moving sectors, pre-caching applications, querying network topography, etc. I want my OS waiting for me to give it a command. I want it to boot up like an Atari 2600!
And I want it to shut down immediately. Windows wouldn't need to notify every application and every service and every network that it is shutting down if it didn't run all of that stuff in the background in the first place.
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Re: What would you actually want in an operating system?
Interestingly we seem to share this view. I want my operating system to only do what it has been told and nothing else so for the most part it will not do anything at all unless told otherwise. I think it is doable to write a general purpose os with that in mind and still be usable.
Fudge - Simplicity, clarity and speed.
http://github.com/Jezze/fudge/
http://github.com/Jezze/fudge/
Re: What would you actually want in an operating system?
Hi,
If an OS doesn't do these things; then hardware resources (e.g. CPUs, memory, disk bandwidth, etc) are being wasted at the expense of performance, and that's a bad/sad thing.
Cheers,
Brendan
Typically a system has "bursts of activity" separated by "bursts of inactivity". There are things that can be done during the "bursts of inactivity" that improve the performance of those "bursts of activity" (e.g. things like pre-fetching, pre-processing, indexing, de-fragmenting, etc).SpyderTL wrote:No applications running, just boot up at watch it. It will be on for a solid 3-4 minutes, and will then be hit every 1-2 seconds for pretty much the whole time it is on.
If an OS doesn't do these things; then hardware resources (e.g. CPUs, memory, disk bandwidth, etc) are being wasted at the expense of performance, and that's a bad/sad thing.
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Re: What would you actually want in an operating system?
That is the right direction but there is a drawback. Users might feel unhappy if their computers are "unsettled", i.e. noisy disk accessing while indexing, de-fragmenting, etc. If there were no noise, it could be annoying just to see flashing leds. I am sure that there are a lot of people feeling uncomfortable because of this. Proper timing of the background work is the key thing.Brendan wrote:If an OS doesn't do these things; then hardware resources (e.g. CPUs, memory, disk bandwidth, etc) are being wasted at the expense of performance, and that's a bad/sad thing.
In general, it is obvious that the idea has a lot of advantages.
- AndrewAPrice
- Member
- Posts: 2299
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
Re: What would you actually want in an operating system?
Sure, but can't we explicitly control that? We have processes that drain our battery (mobile, laptop) in the background because they're constantly polling, or have some thread stuck in a loop.Brendan wrote:Typically a system has "bursts of activity" separated by "bursts of inactivity". There are things that can be done during the "bursts of inactivity" that improve the performance of those "bursts of activity" (e.g. things like pre-fetching, pre-processing, indexing, de-fragmenting, etc).
If an OS doesn't do these things; then hardware resources (e.g. CPUs, memory, disk bandwidth, etc) are being wasted at the expense of performance, and that's a bad/sad thing.
I might want to explicitly give my IM application, download manager, and music player permission to run in the background. But I don't want every program and it's updater thinking it has a right to poll the Internet, pre-cache, or do whatever (I'm looking at you Adobe, Java, OneNote, RealPlayer, iTunes...)
What if I want everything in the background to stop, so that the application I have in focus (my web browser, or a video game) can have all resources dedicated to it?
If it's out of sight, it should be out of mind, unless we explicitly tell it otherwise.
My OS is Perception.
Re: What would you actually want in an operating system?
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Re: What would you actually want in an operating system?
Hi,
Alternately, the OS could control it - e.g. having a much lower threshold for "is it worth doing?" when running from battery.
Cheers,
Brendan
Yes; the end user could explicitly control things like pre-fetching, indexing, de-fragmenting, etc; if you really want a system where users do work for the computer (instead of having a system where the computer does work for the user).MessiahAndrw wrote:Sure, but can't we explicitly control that?Brendan wrote:Typically a system has "bursts of activity" separated by "bursts of inactivity". There are things that can be done during the "bursts of inactivity" that improve the performance of those "bursts of activity" (e.g. things like pre-fetching, pre-processing, indexing, de-fragmenting, etc).
If an OS doesn't do these things; then hardware resources (e.g. CPUs, memory, disk bandwidth, etc) are being wasted at the expense of performance, and that's a bad/sad thing.
Alternately, the OS could control it - e.g. having a much lower threshold for "is it worth doing?" when running from battery.
These things all mostly seems to be poor software update mechanisms (e.g. no efficient/global system for updates; combined with applications that do "check for update during boot" instead of "check for update when run"). It wouldn't be too hard to find a better way of handling software updates.MessiahAndrw wrote:We have processes that drain our battery (mobile, laptop) in the background because they're constantly polling, or have some thread stuck in a loop.
I might want to explicitly give my IM application, download manager, and music player permission to run in the background. But I don't want every program and it's updater thinking it has a right to poll the Internet, pre-cache, or do whatever (I'm looking at you Adobe, Java, OneNote, RealPlayer, iTunes...)
What if I want everything in the background to stop, so that the application I have in focus (my web browser, or a video game) can have all resources dedicated to it?
If it's out of sight, it should be out of mind, unless we explicitly tell it otherwise.
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.