designing an operating system

Reply

Join Date: Dec 2003
Posts: 183
Reputation: viperman224 is an unknown quantity at this point 
Solved Threads: 1
viperman224's Avatar
viperman224 viperman224 is offline Offline
Junior Poster

designing an operating system

 
-1
  #1
Mar 25th, 2004
I'm not sure if this is the right spot to put this. I was wondering how would you create and operating system like linux or windows or novell. What programs would you use. I've always wondered how it was done. I would love to learn to create my own.
Owner/PC Technician of:

The PC Doctor
"If we can't fix it, it's just not fixable"


Reply With Quote Quick reply to this message  
Join Date: Mar 2004
Posts: 222
Reputation: BountyX is an unknown quantity at this point 
Solved Threads: 9
BountyX's Avatar
BountyX BountyX is offline Offline
Code Guru

Re: designing an operating system

 
0
  #2
Mar 25th, 2004
Originally Posted by viperman224
I'm not sure if this is the right spot to put this. I was wondering how would you create and operating system like linux or windows or novell. What programs would you use. I've always wondered how it was done. I would love to learn to create my own.
To achieve this you would need to program in a low-level language such as ASM (usually), but hey this is a C++ forum so I'll explain how to do it in C++.

It is essential to understand the heart of the OS, which is called the kernal, is the MOST important part of an OS. Fancy graphics and SVGA coding can all come after you have developed a solid hardcore kernal. Now as for what programs you would use, believe it or not you can use any standard command line compiler or IDE (such as Borland or MSVC++). The most important thing about using an OS is how its loaded. All hardrives and bootable media have something called boot sectors (typcal near front cylinders of the media) that allow "execution" of your OS. As long as you comply with specific system standards and handle all your RAM right then your OS should be properly loaded. Making an OS is a in-depth subject, when I first took a shot at it the below tutorials really helped me out. Check it out.

Tutorial on making a C/C++ OS:

Part 1:
http://www.1cplusplusstreet.com/vb/s...=6718&lngWId=3

Part 2:
http://www.1cplusplusstreet.com/vb/s...=6743&lngWId=3
A Hacker's Mind:
"I thought what I'd do was, I'd pretend I was one of those deaf-mutes..." - J.D.Salinger
Reply With Quote Quick reply to this message  
Join Date: Feb 2002
Posts: 12,138
Reputation: cscgal is a glorious beacon of light cscgal is a glorious beacon of light cscgal is a glorious beacon of light cscgal is a glorious beacon of light cscgal is a glorious beacon of light cscgal is a glorious beacon of light 
Solved Threads: 130
Administrator
Staff Writer
cscgal's Avatar
cscgal cscgal is offline Offline
The Queen of DaniWeb

Re: designing an operating system

 
0
  #3
Mar 25th, 2004
This was originally posted in the tutorials section of the site. It got moved to C++. I think Computer Science is more appropriate for it so it's being moved once again
Dani the Computer Science Gal
Follow my Twitter feed! twitter.com/DaniWeb
And if you're interested in Internet marketing there is twitter.com/DaniWebAds
Reply With Quote Quick reply to this message  
Join Date: Mar 2004
Posts: 39
Reputation: ajax-the-techie is an unknown quantity at this point 
Solved Threads: 1
ajax-the-techie ajax-the-techie is offline Offline
Light Poster

Re: designing an operating system

 
0
  #4
Mar 26th, 2004
Sorry if I'm being in any way rude by this, but do you understand the undertaking you would have to go through in creating an OS? Bill Gates has a little empire for a reason. The OS would have to be adaptable to modern security risks and have the ability to adapt to software designers specifications.

I admire your desire to build one, but understand it is quite the task.
Cody Snider, CEO
Cobalt CSG, Inc.
cody@cobaltcsg.com
Reply With Quote Quick reply to this message  
Join Date: Mar 2004
Posts: 222
Reputation: BountyX is an unknown quantity at this point 
Solved Threads: 9
BountyX's Avatar
BountyX BountyX is offline Offline
Code Guru

Re: designing an operating system

 
0
  #5
Mar 27th, 2004
he can try to build a kernal, thats what counts, and proven by linux a kernal can be a one man job, who knows maybe he will make an awsome kernal and distribute the source and in 4 years it will be graphical...

but in the rare occerence of the stated situation above, the most important thing is by trying to develop an OS he will understand the guts of how an OS works. Good Luck, despite an OS being a huge task and a duanting procedure, you can still keep it small and practial, creating nessisary OS's to repair computer complications would be a good application.

EDIT: remember an OS is just a system level environment, hello world can be an OS if developed and installed correctly.
A Hacker's Mind:
"I thought what I'd do was, I'd pretend I was one of those deaf-mutes..." - J.D.Salinger
Reply With Quote Quick reply to this message  
Join Date: Mar 2004
Posts: 77
Reputation: infamous is an unknown quantity at this point 
Solved Threads: 2
infamous infamous is offline Offline
Junior Poster in Training

Re: designing an operating system

 
0
  #6
Mar 27th, 2004
Reply With Quote Quick reply to this message  
Join Date: Mar 2004
Posts: 18
Reputation: Olio is an unknown quantity at this point 
Solved Threads: 0
Olio's Avatar
Olio Olio is offline Offline
Newbie Poster

Re: designing an operating system

 
0
  #7
Mar 28th, 2004
the linux kernel was a one man job 13 years ago... with all due respect to Torvalds (and the man deserves a lot of it), I doubt he would be able to write the gargantuan beast we have now, all on his own

well, he probably could, but it would be more complicated now by orders of magnitude than what it was before...

but yes, you're of course right. viperman224 can write a basic dos. its quite an undertaking though...

I would recommend doing a LFS install first, so that you see how an OS these days fits together (as good as an article could be, nothing beats experience). better to see what end result you want than to start writing c without a clear image of what you want as a goal

or maybe a LFS of an older kernel would be better...they would be simpler without all the extra security and networking routines. you can always learn about those later...the important bit is to understand how dos works

but yeah. an interest in doing something is the first step towards much fun (and long nights...and an annoyed girlfriend...)
..Spuskayas k velikay reke, mhe vse ostavlyayem sledeh na peske... i lodka skolzeet v temnote. anam ostayutsya kruge na vade. - mashina vremeni

Fear the Fearsome fury of the smiling DM
Reply With Quote Quick reply to this message  
Join Date: Jan 2004
Posts: 150
Reputation: WEATHER CHANNEL will become famous soon enough WEATHER CHANNEL will become famous soon enough 
Solved Threads: 1
WEATHER CHANNEL's Avatar
WEATHER CHANNEL WEATHER CHANNEL is offline Offline
Banned

Re: designing an operating system

 
0
  #8
Apr 1st, 2004
The most obvious implementation is to write a cooperative multitasking system whereby when one application has finished doing stuff with the CPU, it calls some kind of yield function, or calls a wait for message function.

In the implementation of that you then have to switch to another task if necessary - possibly by calling setjmp() and longjmp() to save the stack and the cpu context (Assuming this is in C)

Otherwise you'll have to switch stack and save the CPU context manually, which will be CPU specific and may involve assembly language.

Once you've figured out which process needs to run you can then call longjmp() back to the context of that process, and continue it from where it left off. ect.....


On the other hand I would not suggest a DOS ......It sounds like a fun project, but it seems to me that people doing these kinds of projects are building desktop environments/GUI's not an operating systems. With that said, if I may make a suggestion, try using a MACH base rather than a DOS base. Remember the whole system is limited by the functionality of the kernel, plus MACH will just make a lot of things much easier on account of it's messaging system being, well actually existing. This will enable you to not only easily develop software for it, but also to easily extend its functionality.
Make any sense?
Reply With Quote Quick reply to this message  
Join Date: May 2004
Posts: 2
Reputation: Snyper is an unknown quantity at this point 
Solved Threads: 0
Snyper's Avatar
Snyper Snyper is offline Offline
Newbie Poster

Re: designing an operating system

 
0
  #9
May 13th, 2004
It may be too much for 1 person...count me in on it
Reply With Quote Quick reply to this message  
Join Date: May 2004
Posts: 9
Reputation: jchaike is an unknown quantity at this point 
Solved Threads: 0
jchaike jchaike is offline Offline
Newbie Poster

Re: designing an operating system

 
0
  #10
May 17th, 2004
can you create an os by using visual basic 6...? its all i've got....
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Similar Threads
Other Threads in the Computer Science Forum


Views: 23580 | Replies: 35
Thread Tools Search this Thread



Tag cloud for Computer Science
About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2010 DaniWeb® LLC