Lost Password?


Go Back   CodeCall Programming Forum > Software Development > General Programming

General Programming Non language specific, Assembly, Linux/Unix, Mac and anything not covered in other topics. Talk about Programming Theory here.

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 10-11-2007, 07:05 PM
prnoct90 prnoct90 is offline
Newbie
 
Join Date: Oct 2007
Posts: 1
Rep Power: 0
prnoct90 is on a distinguished road
Smile Operating System

This might sound stupid, but how do you code an operating system? If I wanted to code my own operating system from scratch what language would I use? I don't mean an extension of Linux, I mean from scratch, a completely different os?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Sponsored Links
  #2 (permalink)  
Old 10-12-2007, 12:58 AM
v0id's Avatar   
v0id v0id is offline
Retired
 
Join Date: Apr 2007
Location: Denmark
Posts: 2,635
Last Blog:
CherryPy(thon)
Rep Power: 28
v0id is a glorious beacon of lightv0id is a glorious beacon of lightv0id is a glorious beacon of lightv0id is a glorious beacon of lightv0id is a glorious beacon of lightv0id is a glorious beacon of light
Send a message via MSN to v0id
Default

Operating Systems is a big topic, so I can't tell you what exactly it includes, you've to learn that step-by-step. If you want to start, you should pick up Assembly, and then use some of the many resources on the Internet for Operating System-programming.
__________________
05-03-2007 - 11-13-2008
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 10-12-2007, 02:19 AM
tobbilla78 tobbilla78 is offline
Newbie
 
Join Date: Oct 2007
Posts: 1
Rep Power: 0
tobbilla78 is on a distinguished road
Default

Thanks i am looking looking on the internet
__________________
coaching job
web design India
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 10-12-2007, 08:39 AM
Jordan's Avatar   
Jordan Jordan is offline
Administrator
 
Join Date: Nov 2005
Location: Hendersonville, NC
Posts: 9,232
Last Blog:
Ext JS or Ext GWT
Rep Power: 20
Jordan is just really niceJordan is just really niceJordan is just really niceJordan is just really nice
Send a message via ICQ to Jordan Send a message via AIM to Jordan Send a message via MSN to Jordan
Default

I can tell you that Windows was made in C and C++ as was Linux. I believe Unix was made in C.

You will need to write a kernel which is the basis of an OS and controls all hardware. That should be your starting point. Also, TkTech on here has made an OS before. You may want to PM him.
__________________
CodeCall Blog | CodeCall Wiki | Shareware Site | Linux Forum | Write a Blog
The CodeCall Wiki is now fully integrated with vBulletin users! Check it out and add some new pages!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 10-16-2007, 04:35 AM
G_Morgan G_Morgan is offline
Guru
 
Join Date: Oct 2007
Age: 24
Posts: 474
Last Blog:
Just over the next hil...
Rep Power: 10
G_Morgan has a spectacular aura aboutG_Morgan has a spectacular aura aboutG_Morgan has a spectacular aura about
Default

My advice:
1. Decide exactly what you want. Are you interested in low level mechanism (memory management, filesystems, process control, etc) or are you interested in more higher level stuff like desktop environments and system policy. If the later then you don't want to do things from scratch and should use the Linux kernel and the subsystems it provides (like the framebuffer and ALSA) to implement your own OS. You'd be amazed at how much Linux based systems can look nothing like 'Linux'. The real benefit of this is hardware support, Linux supports stacks of hardware that you will take decades to support if you go it alone. The basic Linux kernel doesn't even have a command line though. It can be anything and everything you want (even a Windows reimplementation).

2. If you are still set on 'from scratch' development:
a. Learn C, best systems programming language there is. Remember that *you* will have to implement all the higher level stuff used in other languages if you want to develop in those languages at the kernel level. Isn't worth the effort IMHO. Leave the objects for higher level stuff, computers are imperative machines based around procedures and your language should fit that. Objects do not exist at machine code level but function calls do.
b. Learn ASM, you can't do a full kernel without it. 95% of your code will be C, the other 5% is platform specific ASM.
c. Get used to using a tool chain like GCC(MinGW in Windows). Learn how it handles things like the C ABI and name mangling so you can easily mix code from the two languages. Get this right and then it's as simple as linking the object files together to mix ASM and C.

3. Once you've got that basic knowledge under wraps you should then look at OS development and the principles behind it. A good book on this is Tanenbaums book (OS: Design and Implementation). A good place to start might be picking up a microkernel with a liberal license and hacking away at it. Note that you can do with the kernel what you want, you don't have to implement a microkernel, we just choose one because it's the bare minimum other than a kernel from the first line of code.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Sponsored Links
  #6 (permalink)  
Old 10-25-2007, 06:37 PM
mahogny mahogny is offline
Newbie
 
Join Date: Oct 2007
Posts: 10
Rep Power: 0
mahogny is on a distinguished road
Send a message via ICQ to mahogny
Default

worry less about language etc. almost any will do (you will always need a few lines of assembly). before you plunge into coding, read a book on operating systems, in particular the design of FreeBSD 5 (or similar name).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #7 (permalink)  
Old 11-01-2007, 11:56 PM
Kaabi's Avatar   
Kaabi Kaabi is offline
Programming God
 
Join Date: Jul 2006
Posts: 884
Rep Power: 14
Kaabi is on a distinguished road
Default

Yeah, I heard that Windows was coded in C++, at least XP was. I would really like to see the source code for that.
__________________
Cheap Airsoft Guns

If you are looking for high-quality, yet cheap, airsoft guns, then check out MrAirsoft.com
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Windows XP Tricks & Tips!!!!..new ones. pranky Tutorials 9 08-23-2008 04:22 PM
Internet Operating System project iosproject Community Projects 6 12-04-2007 09:53 AM
Which Operating System is better ???? Patrick Computer Software/OS 1 10-07-2007 10:50 AM
Project: vBulletin Alert System (vbAS) Crane Community Projects 18 12-13-2006 11:54 AM
Store and Points System Jordan Announcements 9 08-28-2006 02:38 PM


All times are GMT -5. The time now is 05:50 PM.

Contest Stats

WingedPanther ........ 2753.6
Xav ........ 2704
Brandon W ........ 1702.32
John ........ 1207.73
marwex89 ........ 1175.24
morefood2001 ........ 966.05
dcs ........ 655.75
Steve.L ........ 475.59
orjan ........ 418.58
Aereshaa ........ 383.54

Contest Rules

CodeCall Goal

Goal: 100,000 Posts
Complete: 98%

Ads