Poll: why are you making an os?
Re: Poll: why are you making an os?
Hi,
Why am I making an OS?
Once upon a time I had a Commodore 64. For programming I only really had 2 choices - write assembly or write BASIC. BASIC was an interpreted thing (slower than a dead snail) so I learnt 6502 assembly.
Later (still a long time ago), I decided to shift from the Commodore 64 to a fancy "PC compatible". I was used to a system with 64 KiB of RAM and a simple 8-bit CPU running at about 1 MHz; and upgraded to a system with 128 times as much RAM and over 100 times as much processing power (80486SX at 66 MHz). With such a massive increase in hardware capabilities (and price) I was expecting to be amazed at how awesome the software would be. Welcome to the world of the future! Um, no sorry, it's DOS. What a massive disappointment that was.
So, what does an assembly language programmer do with very powerful hardware and an incredibly disappointing OS? I started learning 80x86 assembly, and started writing an OS. This was before anyone I knew had Internet access though; and getting adequate information was a major pain. That changed later.
First came Windows 95 - the OS that was 5 years too late. Then came the Internet (and networking in general). My plans changed from "realmode OS with decent GUI" to "protected mode distributed OS with decent GUI".
As time passed, hardware got more powerful and software got more complex. New file formats were introduced, languages were invented, Unicode and internationalisation came, an army of web developers rose up. The world I was used to (where it was easy to write software) became a place of confusion with 500 different (and incompatible) ways of doing "Hello world". Everything turned to crap.
My plans have changed from "protected mode distributed OS with decent GUI" to "redesign and replace all the crap". It's not really an OS project anymore - the OS is just the most obvious place to start.
Cheers,
Brendan
Why am I making an OS?
Once upon a time I had a Commodore 64. For programming I only really had 2 choices - write assembly or write BASIC. BASIC was an interpreted thing (slower than a dead snail) so I learnt 6502 assembly.
Later (still a long time ago), I decided to shift from the Commodore 64 to a fancy "PC compatible". I was used to a system with 64 KiB of RAM and a simple 8-bit CPU running at about 1 MHz; and upgraded to a system with 128 times as much RAM and over 100 times as much processing power (80486SX at 66 MHz). With such a massive increase in hardware capabilities (and price) I was expecting to be amazed at how awesome the software would be. Welcome to the world of the future! Um, no sorry, it's DOS. What a massive disappointment that was.
So, what does an assembly language programmer do with very powerful hardware and an incredibly disappointing OS? I started learning 80x86 assembly, and started writing an OS. This was before anyone I knew had Internet access though; and getting adequate information was a major pain. That changed later.
First came Windows 95 - the OS that was 5 years too late. Then came the Internet (and networking in general). My plans changed from "realmode OS with decent GUI" to "protected mode distributed OS with decent GUI".
As time passed, hardware got more powerful and software got more complex. New file formats were introduced, languages were invented, Unicode and internationalisation came, an army of web developers rose up. The world I was used to (where it was easy to write software) became a place of confusion with 500 different (and incompatible) ways of doing "Hello world". Everything turned to crap.
My plans have changed from "protected mode distributed OS with decent GUI" to "redesign and replace all the crap". It's not really an OS project anymore - the OS is just the most obvious place to start.
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.
-
- Member
- Posts: 595
- Joined: Mon Jul 05, 2010 4:15 pm
Re: Poll: why are you making an os?
I do it because I want to learn and it is more fun than sudoku.
Re: Poll: why are you making an os?
It's rooted in my desire of pure systems, technical challenges, fun, having control of the computer - and because it's really cool.
Re: Poll: why are you making an os?
To learn and to fill a niche market.
d3: virtualizing kernel in progress
https://github.com/WizardOfHaas/d3/
https://github.com/WizardOfHaas/d3/
Re: Poll: why are you making an os?
Some degree of complexity is definitely needed, but it's a fine balance. There was a quote I read once; I don't remember exactly what it said, but it was something about software either being so complex that there are no obvious bugs or being so simple that there are obviously no bugs. I strongly prefer the latter, which is why my kernel is designed to be as simple as possible. The real complexity will be in the drivers and the user-space applications where it can at least be contained and controlled, and I'll try to keep those simple as well.m12 wrote:Agreed. However, that same complexity is what protects the end user from 1) malicious software, visual artifacts, et. al.DavidCooper wrote:I think that a lot of the complexity of modern operating systems is slowing them down rather than speeding them up, and the complexity is also making them less reliable and harder to work with.
Not trying to start a fight, just pointing out.
Re: Poll: why are you making an os?
There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies and the other way is to make it so complicated that there are no obvious deficiencies.blm768 wrote:Some degree of complexity is definitely needed, but it's a fine balance. There was a quote I read once; I don't remember exactly what it said, but it was something about software either being so complex that there are no obvious bugs or being so simple that there are obviously no bugs. I strongly prefer the latter, which is why my kernel is designed to be as simple as possible. The real complexity will be in the drivers and the user-space applications where it can at least be contained and controlled, and I'll try to keep those simple as well.m12 wrote:Agreed. However, that same complexity is what protects the end user from 1) malicious software, visual artifacts, et. al.DavidCooper wrote:I think that a lot of the complexity of modern operating systems is slowing them down rather than speeding them up, and the complexity is also making them less reliable and harder to work with.
Not trying to start a fight, just pointing out.
— C.A.R. Hoare, The 1980 ACM Turing Award Lecture
Re: Poll: why are you making an os?
To paraphrase a very famous person:
"I write OSes and do these other things, not because they are easy, but because they are hard."
To those who earlier in the thread mentioned that commercial projects are taken more seriously than open source ones, linux does take time to configure and set up still even with fancy wizard installers and a nice UI. Open source projects are only really free if your time has no value.
"I write OSes and do these other things, not because they are easy, but because they are hard."
To those who earlier in the thread mentioned that commercial projects are taken more seriously than open source ones, linux does take time to configure and set up still even with fancy wizard installers and a nice UI. Open source projects are only really free if your time has no value.
Re: Poll: why are you making an os?
This is wrong in so many respects that I don't even know where to begin...brain wrote:To those who earlier in the thread mentioned that commercial projects are taken more seriously than open source ones, linux does take time to configure and set up still even with fancy wizard installers and a nice UI. Open source projects are only really free if your time has no value.
1. Generalising from the Linux distribution you have used to all Linux distributions is wrong
2. Generalising from Linux distributions to all open source projects is wrong
3. Most Linux distributions actually work very well out of the box, so they are even bad examples for the point you're trying to make
4. Free beer vs. free speech
5. When I'm asked to install a certain widely used non-open-source OS for someone, it regularly takes tons of time until it can be considered ready to be used. I don't think I've wasted nearly as much time on any single Linux installation in the past five or ten years.
6. How often do you reinstall? Isn't this supposed to be a one-time thing anyway?
Re: Poll: why are you making an os?
Actually, installing occurs more often than buying. You only have to buy the key once - after that, you can always use that key. But what if you need to wipe your hard drive or reinstall on a different computer? That's another install, no new purchase.Kevin wrote: 6. How often do you reinstall? Isn't this supposed to be a one-time thing anyway?
Programming is 80% Math, 20% Grammar, and 10% Creativity <--- Do not make fun of my joke!
If you're new, check this out.
If you're new, check this out.
Re: Poll: why are you making an os?
My point is not about money, but about installation time.
Re: Poll: why are you making an os?
That's certainly true with Linux! And it is no bad thing.Actually, installing occurs more often than buying.
I agree with Kevin. Installing a modern Linux installation is at least as easy as installing Windows, and after-install configuration can be much simpler. As far as re-installation is concerned (and I also agree that this is not exactly a common event), this is tons easier with Linux. Have you tried reinstalling Windows 8, particularly on new hardware, and then trying to jump through all the hoops necessary to re-activate it? In my case I ended up, after hours of unsuccessful attempts on the Internet and automatic phone systems that went round in a circle and then failed, with Microsoft having to refund the cost of my original install and selling me another copy so that I could get a key that worked. I've never had a problem like that with a Linux install.
Re: Poll: why are you making an os?
No, but I have with vista and 7, just deactivate the old one BEFORE reinstalling.iansjack wrote:Have you tried reinstalling Windows 8, particularly on new hardware, and then trying to jump through all the hoops necessary to re-activate it?Actually, installing occurs more often than buying.
Programming is 80% Math, 20% Grammar, and 10% Creativity <--- Do not make fun of my joke!
If you're new, check this out.
If you're new, check this out.
Re: Poll: why are you making an os?
Yeah, that's simpler than Linux - not. Unfortunately, one of the pressing reasons to reinstall an OS - or just move it to another computer - is because of hardware failure. It can be difficult to anticipate that with such accuracy that you deactivate the OS just before the failure.
Re: Poll: why are you making an os?
Initially, I made RDOS because of MS-DOS (I wanted to make something better). Later, I used it for debugging of a professional real-mode embedded system. At the final stage, I've now deployed over 450 commercial installations, but I haven't made any money on it (but I expect to eventually do).
Re: Poll: why are you making an os?
If you had a decent 486SX, why on earth did you decide to use real mode on it? I spent a lot of money on a 386SX just because I already had decided that real mode was crap, and I needed a "modern" CPU that was 32-bit. (I also had decided that 286 was crap as well, primarily because it lacked paging and had no real-mode emulation mode).Brendan wrote: Later (still a long time ago), I decided to shift from the Commodore 64 to a fancy "PC compatible". I was used to a system with 64 KiB of RAM and a simple 8-bit CPU running at about 1 MHz; and upgraded to a system with 128 times as much RAM and over 100 times as much processing power (80486SX at 66 MHz). With such a massive increase in hardware capabilities (and price) I was expecting to be amazed at how awesome the software would be. Welcome to the world of the future! Um, no sorry, it's DOS. What a massive disappointment that was.
So, what does an assembly language programmer do with very powerful hardware and an incredibly disappointing OS? I started learning 80x86 assembly, and started writing an OS. This was before anyone I knew had Internet access though; and getting adequate information was a major pain. That changed later.
First came Windows 95 - the OS that was 5 years too late. Then came the Internet (and networking in general). My plans changed from "realmode OS with decent GUI" to "protected mode distributed OS with decent GUI".
That's really ambitious. I've decided I'm content if I never ever will have to write anything more professionally for M$-products, and if I don't need to learn "cloud programming".Brendan wrote: My plans have changed from "protected mode distributed OS with decent GUI" to "redesign and replace all the crap". It's not really an OS project anymore - the OS is just the most obvious place to start.