Online since 2002. Over 3300 puzzles, 2600 worldwide members, and 270,000 messages.

TwistyPuzzles.com Forum

It is currently Fri Jul 25, 2014 1:48 am

All times are UTC - 5 hours



Post new topic Reply to topic  [ 14 posts ] 
Author Message
 Post subject: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 7:58 pm 
Online
User avatar

Joined: Sun Dec 13, 2009 5:48 pm
Hey everyone, I'm going to TRY creating an Operating System from scratch. This sparked in my head after I was given an assignment in my speech class, when my partner and I both said we should make an Operating System. At first we were joking but then I got really into it. So I came to TP to ask for some people to assist me with making an Operating System. The assignment is to make a perswasive speech on a product or service, but I am going to take this up as a personal project, but I need some help if I was to do this. Would anyone be willing to volunteer on this? I am currently in High School and Don't have the funds to pay anyone, but volunteering would help me greatly. I would approach this alone but I would never be able to make something of this level. So if ANYONE would like to help me, that would be super cool!

-NXTgen

_________________
I should probably find a better signature....


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 8:10 pm 
Offline
User avatar

Joined: Thu Dec 31, 2009 8:54 pm
Location: Bay Area, California
An extremely bare-bones operating system with no networking, no graphics, no sound, no virtual memory, a very simple filesystem, no multi-tasking, single CPU, etc. isn't THAT hard.

Have you chosen a computer architecture yet? I ask because I'd suggest avoiding IBM PC / x86 because of the many legacy complications. x86 CPUs have multiple modes and the boot process goes through a few and an operating system has to deal with a lot of the legacy features than normal programs never see.

There is still a lot of grunt work needed. Unless you want to create your own compiler you're going to still need to support ELF or COFF executable formats and provide some basic libc-like features.

An embedded, no-MMU MIPS computer is probably the easiest hardware to target for a hobby OS.

_________________
Prior to using my real name I posted under the account named bmenrigh.


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 8:23 pm 
Offline
User avatar

Joined: Thu Jul 23, 2009 5:06 pm
Location: Berkeley, CA, USA
I'm not educated as a computer scientist. But I've heard of MINIX, which is a minimum OS written for educational purposes.

http://en.wikipedia.org/wiki/MINIX

Initially the source code was printed in an appendix of Tanenbaum's textbook about operating systems. I remember seeing that book in a used book trading fair. For studying how OS works, maybe looking into that book and MINIX is a good starting point, before you actually write your own MINIX.

Does anyone know if this is too archaic to read?

_________________
Check out some virtual puzzles I created at http://nan.ma


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 8:31 pm 
Online
User avatar

Joined: Sun Dec 13, 2009 5:48 pm
I haven't decided yet, I may as well go with x86, but all I need right now is some support to see if it's worth starting up as a personal project.

_________________
I should probably find a better signature....


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 8:33 pm 
Offline
User avatar

Joined: Mon Mar 30, 2009 5:13 pm
Hang on, you're asking other people to volunteer and create a complete operating system for you for nothing, so that you can claim it as your own project? Hmmm :?

How about you help me first with my project to go to Mars. :lol:

PS. Not trying to be nasty, just pointing out that expecting other people to do all the hard work for free so that you can take all the ownership and glory isn't exactly a compelling sales pitch. :wink:

_________________
If you want something you’ve never had, you’ve got to do something you’ve never done - Thomas Jefferson


Last edited by KelvinS on Mon Dec 10, 2012 8:43 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 8:42 pm 
Online
User avatar

Joined: Sun Dec 13, 2009 5:48 pm
Well, I'm just wanting to start this up, and its not for nothing, I want to gain experience with this stuff. But if I could help with the mars thing I would. I'm not trying to make an OS like Windows, just something simple and see what to do with it later. I'm okay with people not helping, I just want to see if its worth a few years or so out of my life :lol: :lol: And the credit goes to whoever deserves it, not just to me.

_________________
I should probably find a better signature....


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 8:49 pm 
Offline
User avatar

Joined: Mon Mar 30, 2009 5:13 pm
Then the best way is to read books, do your own research on the web, and learn as you go along and build it yourself. If you're lucky you might find another novice who will join you on your journey of learning and exploration (as Jobs and Wosniak did) to build a system together as a joint project. You may even find an expert who will give you some basic pointers, but no expert will just build the system for you and say there you go, for nothing.

_________________
If you want something you’ve never had, you’ve got to do something you’ve never done - Thomas Jefferson


Last edited by KelvinS on Mon Dec 10, 2012 8:57 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 8:56 pm 
Offline

Joined: Sun Mar 27, 2005 7:37 pm
KelvinS wrote:
How about you help me first with my project to go to Mars. :lol:
He may be able to supply you with an OS for that project if you help him.

_________________
Image


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 9:05 pm 
Offline
User avatar

Joined: Thu Dec 31, 2009 8:54 pm
Location: Bay Area, California
NXTgen wrote:
Well, I'm just wanting to start this up, and its not for nothing, I want to gain experience with this stuff. But if I could help with the mars thing I would. I'm not trying to make an OS like Windows, just something simple and see what to do with it later. I'm okay with people not helping, I just want to see if its worth a few years or so out of my life :lol: :lol: And the credit goes to whoever deserves it, not just to me.

A project like this requires passion and drive. There is a big difference between thinking an idea is awesome in the abstract and actually taking the idea to completion.

A multi-year project requires drive and vision from the leader and won't work as a loose-knit consensus.

_________________
Prior to using my real name I posted under the account named bmenrigh.


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Mon Dec 10, 2012 9:45 pm 
Online
User avatar

Joined: Sun Dec 13, 2009 5:48 pm
Okay, thanks for responding guys, I just had an urge to do this, maybe I'll do what you all said, and get another novice like me.

_________________
I should probably find a better signature....


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Tue Dec 11, 2012 3:14 am 
Offline
User avatar

Joined: Mon Mar 30, 2009 5:13 pm
NXTgen wrote:
Okay, thanks for responding guys, I just had an urge to do this, maybe I'll do what you all said, and get another novice like me.

Even then you'll need to convince the other novice that this is not just a whim that you'll get bored with and give up at the first obstacle, that you have the vision, passion and drive to carry it all the way through to completion. So first ask yourself whether you *really* want to do this, that you'll enjoy the journey itself, no matter how tough it gets, as much as the end result. You will also need a very clear *purpose* - WHY do you want to do this, what problem are you trying to solve, for whom? It's very difficult to stick with anything that has no purpose, especially when the going gets tough as it always does.

This pretty much goes for anything else you do in life. Good luck! :wink:

_________________
If you want something you’ve never had, you’ve got to do something you’ve never done - Thomas Jefferson


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Tue Dec 11, 2012 1:05 pm 
Offline
User avatar

Joined: Fri Feb 18, 2000 8:50 am
Location: chicago, IL area U.S.A
Actually the OS for a Mars mission gave me an idea. How about creating a virtual system that would require an OS? Once the parameters of the virtual system are set, I would think you could make a much simpler OS.

<OFF OFF TOPIC>Speaking of Mars missions, the first logical step at this point would be a rover mission that actually returns Martian Soil. Lots of paranoia over whether or not there is life that could be harmful. This would help settle the debate. Also it's imperative that what we send there could safely be returned and that would be a very simplified version of it, although complicated in that people can't make split second decisions.</OFF OFF TOPIC>

-d


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Wed Dec 12, 2012 1:24 am 
Offline
User avatar

Joined: Thu Dec 21, 2006 5:32 pm
Location: Bay Area, CA
If you really want something manageable I would suggest writing a small OS for an older chipset, like the 6502. You are sure to find emulators for some form of 6502 hardware and there are a few good examples of OSs (Commodore, Apple, Geos).

If you jump into x86 you have to learn an enormous amount just to get started, whereas mastering the architecture of the smaller chip would be faster.

If you really have your heart set on x86, try an earlier version like the 8080 or 8086, something using real mode before the more complicated memory mapping began. Pagemapping and virtual memory are interesting topics, but a big distraction if you are just getting started.

It is not from scratch, but you can look at NACHOS as a reference, it is used to teach operating systems concepts in many Universities.

Good luck,

Dave

P.S. Keep in mind an OS is something usually done by multiple people (with experience) over a long time.

_________________
Image
LitwinPuzzles.com has info on my puzzles.


Top
 Profile  
 
 Post subject: Re: Constructing an entire OS from scratch
PostPosted: Wed Dec 12, 2012 4:44 pm 
Offline
User avatar

Joined: Thu Aug 30, 2007 7:54 am
Location: Yorkshire, UK
Z80A is worth looking at too. It is the first machine code I learened, and you would probably need to know the basics of machine code. However, I would concur with Dave that a good old 6502 emulator is probably the best place to start. Nice and simple.

Another project I have been meaning to do for about 20 years is a new (stripped down) language specifically designed as an environment to teach and learn proper structured code (possibly including OOL), ie an compiler integrated with a visual editor. THAT would fun (at least for me!)
Tim


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 14 posts ] 

All times are UTC - 5 hours


Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  

Forum powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group