Help - Search - Members - Calendar
Full Version: how do they compile windows?
MSFN Forums > The General Stuff > General Discussion

   
Google Internet Forums Unattended CD/DVD Guide
XtremeMaC
Hi there
I've been wondering how they write the operating systems.
if they use something like c++ how does that c++ compiler is compiled?
how?
even with assembly how is it done?
how are the chips made??

(I once asked these to a very clever guy. he had replied "you need to read a lot of books or go back in time and watch the progress"
is there a better explanation biggrin.gif
Numinous
reading lots of books, then a lot of coding, a lot of debugging and a lot of compiling .. then a lot of patching biggrin.gif and reading more books
XtremeMaC
lol that what happens after they create the first thing.
how to they come up with the first?
for example are they writing new versions of windows on a windows? smile.gif
cspm2003
they dont write new verisions, they modify what they allready have. I think windows is written in c++
Doggie
this is something u will never know.. microsoft would never say how they built upon there OS..
FthrJACK
When christmass is over with, the Elves go to MS to work for Bill during the summer months, before going back to Lapland sometime in November. They are the ones who build Microsofts Operating Systems, even Bill himself doesent quite know how they do it.

i know, he told me.
XtremeMaC
tongue.gif laugh.gif
I knew Bill Gates had no idea what he was doing:)
Gism0
they use LINUX! ohmy.gif SHOCK HORRORRR!!11


jk
Visentinel
at the base of it all its still all Binary tongue.gif
Shotgun
Since I've had all the previous Windows versions (up to XP- I haven't used Win2K3 yet!!!!) I can say this:

- they started file by file, making a dll, sys, exe, bin, dat, etc. based on current needs in terms of functionality and hardware at the time. Some files like the MSDOS "executive" (later Program Manager -> later Windows Explorer) have had LOTS of revisions/changes.

- they started some files in assembly (MASM) then moved gradually to C and later to C++, mainly because of the portability of C code. Remember that MS later realized they could "introduce" Windows code to other devices (think Embedded Windows, WinCE, PocketPC and so on)

- the future will only tell how are they going to update/create new software for the future OS'es or what will they (MS) use. .NET? C#? Also, the closed-source method that MS has used up to this point makes it difficult to really know what's been used to create the current code, or make any reasonable argument on how they are going to produce future developments.
gamehead200
I heard that they started to make Windows on a Mac, but how would that be possible? huh.gif
Shotgun
Some parts of the GUI could have started in a Mac, but we'll never know for sure. If parts of the Mac GUI (Mac gurus could help with this one) were made in C or C++, it is very probable they ported some of the code to any other platform.

That's why Apple once sued Microsoft for, but the case was won by... guess who? yep. you got it right. Microsoft.

BTW, Xerox invented the original GUI and mouse concept.

A good movie to watch: "Pirates of Silicon Valley" newwink.gif
Numinous
i could have sworn it was written in basic.. certainly runs at basic speeds laugh.gif no wonder they use unix to compile it
insasy
Some of windows is compile in assembly some in c and that should be all
Gism0
laugh.gif Numinous - love the avatar biggrin.gif
Numinous
cheers mate biggrin.gif
Crispy
QUOTE (Numinous @ Dec 19 2003, 04:27 AM)
i could have sworn it was written in basic.. certainly runs at basic speeds laugh.gif no wonder they use unix to compile it

lol, yes, I could have sworn that too tongue.gif
Famer
M$ in the very beginng wrote that funky code for the altir and from there they took that and proted it to basic and then you all know what came next Dos and then win 1 which was most likly writen in basic and as lang progessed so did what they used
and like one post in here says they most likly use c+ and some Vb tools too the only way to find out with out asking M$ is to get into the xp kernal that holds all the info you need if you can do that would now have opensorce
Shotgun
lol

Actually, MSDOS and Win 1 were written mostly in x86 assembler code and some C. MS never used BASIC for that! LOL

Win 3.x - mostly C and assembler.
Win 95 - mostly C lang and some assembler (mostly driver vxd's)
Famer
Get into the kernal of windows and you will have every thing some where on another site they claim thats where the sourcecode is burried who the hell knows
Shotgun
Maybe you could derive some of the source by reverse-engineering, but it is something really difficult to "guess" what the original programmer used or wrote to make the app. Also, you have to know a LOT of assembler code (x86, 16bit, 32bit, 64bit multithreading asm code) to really "try" to understand what's going on.

Remember that ALL compiled programs end up as assembly opcodes suited for a particular processor family. You need a Compiler to create something like that, and a Disassembler/Decompiler to try to reverse-engineer the code.

It's like having the egg and trying to come up with the chicken, without knowing how the chicken looked like! LOL!
Whimsy
QUOTE (Famer @ Dec 22 2003, 04:05 PM)
...M$...

Woah you showed them rolleyes.gif !

Windows is mostly compiled in C++, presumably with Visual C++, however, with the strong ties to the X86 platform, it's reasonable to assume that the kernel also includes assembler.

The first OS would have been built in memory, and dumped to a storage medium, such as tape. A loader for such an operating system might have been coded in BASIC, poking and peeking registers and memory areas so that it could load. Some systems might have included strips of tape or punch cards to manipulate these values (I think the altiar might have done this, but I'm not sure).

Once you write the first OS, you presumably have access to IO, including the keyboard, so coding the second generation OS is greatly simplified. All you need to do then is code a compiler for a programming language. Oh wait...

C was created in assembler, and then, ironically, coded in C afterwords biggrin.gif
Google Internet Forums Unattended CD/DVD Guide
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.