Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I intend on creating a very basic operating system that does the basic stuff related to the operating system but don't want to work on low level program so was wondering if there was the possibility for me to work on C/C++ and how to make a C/C++ program into an operating system, if it required any different kind of programming or procedure to do so, would appreciate the help, thanks.

share|improve this question

closed as not constructive by Zoredache, Simon Sheehan, Dave M, ChrisF, sudo Dec 31 '12 at 1:07

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

2  
should probably be moved to stackoverflow.com –  Logman Dec 30 '12 at 19:42
1  
C actually is a low level programming language. @Logman: This question is too broad to be a good fit for Stack Overflow. –  sudo Dec 31 '12 at 1:16

1 Answer 1

This link might help you: How to Make a Computer Operating System

snippets from the link

  • 3 Decide what you want your OS to do. Whether it is a fully capable OS with a graphical user interface (GUI) or something a bit more minimalistic, you'll need to know what direction you are taking it before beginning.

  • 5 Decide if you would rather do it all yourself from the ground up, or if there is an existing kernel you would like to build on top of. Linux from Scratch is a project for those that would like to build their own Linux distro, for example. See Tips for an external link.

  • 6 Decide if you're going to use your own bootloader or a pre-created one such as Grand Unified Bootloader (GRUB). While coding your own bootloader will give a lot of knowledge of the hardware and the BIOS, it may set you back on the programming of the actual kernel. See Tips.

  • 7 Decide what programming language to use. While it is possible to create an operating system in a language such as Pascal or BASIC, you will be better off using C or Assembly. Assembly is absolutely necessary, as some vital parts of an operating system require it. C++, on the other hand, contains keywords that need another fully-built OS to run. In order to compile an operating system from C or C++ code, you will of course be using one compiler or another. You should therefore read the user guide/manuals/documentation for your chosen C/C++ compiler, whether it comes packaged with the software or is available on the distributor's website. You will need to know many intricate things about your compiler and, for C++ development, you should know about the compiler's mangling scheme and its ABI. You are expected to understand the various executable formats (ELF, PE, COFF, plain binary, etc.), and understand that the Windows proprietary format, PE (.exe), has been copyrighted.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.