Operating system creation

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
apicton
Posts: 2
Joined: Mon Apr 23, 2007 7:20 pm
Location: MN
Contact:

Operating system creation

Post by apicton »

Hi there,
Not sure if this is the right place or not. I'm looking at creating a small electronic device that would need it's own GUI operating system.

Is there a place that developes operating systems like this? Or can anyone give me an idea where to start if I was looking to do something like this myself?

I am familiar with DOS, Basic, VB, VBA...but just wondering where to start on a hardware device that has no OS on it.

Any advice is welcome. Thanks in advance.
Andy @ APNetworking
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Re: Operating system creation

Post by Brynet-Inc »

apicton wrote:Hi there,
Not sure if this is the right place or not. I'm looking at creating a small electronic device that would need it's own GUI operating system.

Is there a place that developes operating systems like this? Or can anyone give me an idea where to start if I was looking to do something like this myself?

I am familiar with DOS, Basic, VB, VBA...but just wondering where to start on a hardware device that has no OS on it.

Any advice is welcome. Thanks in advance.
So, You want to.. create an "electronic" device (oddly vague..) that would be sophisticated enough to have it's "own" operating system featuring a "GUI"..

My questions follow..

1) Are you asking us how to design this "mystery" device? Or how you would write an OS for this device that we know nothing about?
2) Are you going to be designing a completely new hardware architecture? Custom CPU etc?
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
User avatar
Combuster
Member
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: Operating system creation

Post by Combuster »

apicton wrote:Hi there,
Not sure if this is the right place or not. I'm looking at creating a small electronic device that would need it's own GUI operating system.
So you want to build your own homebrew computer?. That is quite a challenge indeed. You'd need to look for processors, memory, and I/O devices that you can tie together into a system.
Is there a place that developes operating systems like this? Or can anyone give me an idea where to start if I was looking to do something like this myself?
You might want to try Nintendo or Sony and work on their next generation console. However places are limited and the chances are slim that you can get a job there. To start for yourself, read read read read read, Consider what you want as your CPU: x86? ARM? AVR? PowerPC? Something else?, then figure what is needed to complement it. Next you might want to find yourself an ISA VGA card and talk to that. You'll also need rom writing/flashing software and the appropriate external devices where you can plug the chips in.
Alternatively, you can take an existing handheld console and write a sort of OS for that.
I am familiar with DOS, Basic, VB, VBA...but just wondering where to start on a hardware device that has no OS on it.
You sound slightly dated. The assembler Atmel provides for AVR programming runs under windows. So far I've only seen a linux counterpart but not one for DOS. There is also little chance of running Basic on embedded devices. The language isn't popular enough to have compilers for many architectures beyond the x86 although it is one of FreeBasic's goals to support more architectures in the future. Expect that you need to learn assembly and C in order to have the chip do something you want.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
User avatar
AJ
Member
Member
Posts: 2646
Joined: Sun Oct 22, 2006 7:01 am
Location: Devon, UK
Contact:

Post by AJ »

You could try http://www.fastavr.com/, sticking with the Atmel theme. Also, http://www.avrfreaks.net/ is always worth a visit.

Although the AVR range used to be 8-bit only, I believe they now do a 32 bit version which could be what you're looking for (I last did AVR work 2 years ago so am a bit outdated now). Certainly there is direct support for USART, SPI, PWM etc... and it may be that the 32 bit versions can drive a decent display.

Cheers,
Adam
apicton
Posts: 2
Joined: Mon Apr 23, 2007 7:20 pm
Location: MN
Contact:

Post by apicton »

First, thanks for your responses.
So, You want to.. create an "electronic" device (oddly vague..) that would be sophisticated enough to have it's "own" operating system featuring a "GUI"..
Sorry to be vague. It is an idea which I have not seen elsewhere yet, so I don't want to publish it on the internet just yet.
You sound slightly dated.
I know these aren't the languages needed, I was just indicating that I am technically inclined enough to learn what I need to if that's the best option.

As an example - Pretend I'm designing a new PDA...and I found a hardware supplier to build the hardware portion. It would be an electronic device with cpu, memory and a display. But it would need some sort of operating system to make it do what it needs to do. I was just wondering if anyone knew of any companies that design OS's like this or what other advice you might have.

AJ - thanks for the link to fastavr. I will check that out.

Andy
User avatar
Colonel Kernel
Member
Member
Posts: 1437
Joined: Tue Oct 17, 2006 6:06 pm
Location: Vancouver, BC, Canada
Contact:

Post by Colonel Kernel »

apicton wrote:As an example - Pretend I'm designing a new PDA...and I found a hardware supplier to build the hardware portion. It would be an electronic device with cpu, memory and a display. But it would need some sort of operating system to make it do what it needs to do. I was just wondering if anyone knew of any companies that design OS's like this or what other advice you might have.
I would suggest porting Linux to your device. Unless your hardware is really exotic, there is a good chance that there are already Linux drivers for it. I think porting Linux would be a lot cheaper than writing your own OS or having one custom-built...
Top three reasons why my OS project died:
  1. Too much overtime at work
  2. Got married
  3. My brain got stuck in an infinite loop while trying to design the memory manager
Don't let this happen to you!
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Post by Brynet-Inc »

Colonel Kernel wrote:I would suggest porting Linux to your device. Unless your hardware is really exotic, there is a good chance that there are already Linux drivers for it. I think porting Linux would be a lot cheaper than writing your own OS or having one custom-built...
And if the GPL licence is a problem for you, You could always try porting NetBSD instead (If hardware permits..)..

The BSD licence should be more permissive if you want this device commercial, But if you're going to be using existing an existing CPU architecture.. Porting an existing OS might be a better idea.

I don't know what you could do if your device is all new using custom hardware, It would probably cost a considerably large amount of money to find a company willing to develop an "all-new" OS for you.
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
User avatar
inflater
Member
Member
Posts: 1309
Joined: Thu Sep 28, 2006 10:32 am
Location: Slovakia
Contact:

Re: Operating system creation

Post by inflater »

apicton wrote:Hi there,
Not sure if this is the right place or not. I'm looking at creating a small electronic device that would need it's own GUI operating system.

Is there a place that developes operating systems like this? Or can anyone give me an idea where to start if I was looking to do something like this myself?

I am familiar with DOS, Basic, VB, VBA...but just wondering where to start on a hardware device that has no OS on it.

Any advice is welcome. Thanks in advance.
Well, I saw somewhere on the internet on how to make your own, programmable displayboard (mainly for advertising) by using some greenish LCD, 8-bit Z80 and your PC. But creating your own processor? This sounds kinda tough...
You could use 6502 and make something with that... :)

inflater
My web site: http://inflater.wz.cz (Slovak)
Derrick operating system: http://derrick.xf.cz (Slovak and English :P)
Post Reply