Thread: windows creation

  1. #1
    Registered User SAMSAM's Avatar
    Join Date
    Nov 2001
    Posts
    218

    windows creation

    does anyone know ,how did MS tested the windows .
    i mean you test your program on lets say windows platform
    ,so how did they test their program"operating system" ?

    what sort of compilers they used or was part of the code machine language?is the IO.SYS and MSDOS.SYS andSYSINI and CONFIG.SYS written in machine language does anyone know?

  2. #2
    Skunkmeister Stoned_Coder's Avatar
    Join Date
    Aug 2001
    Posts
    2,572
    The vast majority of windows is written in C with a small amount of asm. I wouldnt be surprised if they used a fair bit of c++ too especially on the gui side of things.
    The basic operating system would not have been written on visual c. I have no idea which compiler they used but visual c is not suitable for operating system programming.
    As for building and testing an operating system you can find details at Flashdaddees where they have an active operating systems forum.Read the stickies there for some good links.
    Free the weed!! Class B to class C is not good enough!!
    And the FAQ is here :- http://faq.cprogramming.com/cgi-bin/smartfaq.cgi

  3. #3
    Registered User
    Join Date
    Nov 2002
    Posts
    157
    pretty much what coder said is right. its hard telling what compilers/linkers microsoft used because they arent too big on giving out too much information. but me personally to write my own os i'm using NASM (form of assembly) and for C i'm using the gcc.

  4. #4
    Registered User
    Join Date
    Dec 2002
    Posts
    119
    > The basic operating system would not have been written on visual c. I have no idea which compiler they used but visual c is not suitable for operating system programming.

    Apparently they used VC++ scroll down about half-way to where it says Microsoft

    -Futura
    If you speak or are learning Spanish, check out this Spanish and English Dictionary, it is a handy online resource.
    What happens is not as important as how you react to what happens. -Thaddeus Golas

  5. #5
    Skunkmeister Stoned_Coder's Avatar
    Join Date
    Aug 2001
    Posts
    2,572
    No way.
    I will go out on a limb here and say that no flavours of windows have been fully written in visual c. It is NOT POSSIBLE to compile an operating system with it. They could not have used it to do the operating system. They could on the other hand have used visual c to do the gui side of things once the operating system was written and in place.
    Free the weed!! Class B to class C is not good enough!!
    And the FAQ is here :- http://faq.cprogramming.com/cgi-bin/smartfaq.cgi

  6. #6
    Registered User
    Join Date
    Feb 2002
    Posts
    98
    iv read a couple of places that says ms used vc++ to build windows xp, they even go further saying the bootloader was written in vc++ using asm inside the vc++ enviroment, dont know if that is true, but will try to find the links when i get home from work today

  7. #7
    Registered User
    Join Date
    Nov 2002
    Posts
    157
    vc++ is just that...an environment. it doesnt matter if you write the code in notepad (which i personally do) or if you write it in vc++. as long as the files and output is the same it makes no difference.

    imo, notepad is nice and simple and the perfect thing for os coding.

  8. #8
    It's full of stars adrianxw's Avatar
    Join Date
    Aug 2001
    Posts
    4,829
    The IDE is not the real item under discussion here. It is the compiler, CL.EXE. (When you press F7, the IDE runs the necessary executables to compile your resources, code etc., and then the linker as necessary to build your .exe, .dll, .lib etc...).

    >>> notepad is nice and simple and the perfect thing for os coding.

    So you've typed in your code - how do you compile it?
    Wave upon wave of demented avengers march cheerfully out of obscurity unto the dream.

  9. #9
    Registered User
    Join Date
    Dec 2002
    Posts
    119
    > No way.

    I'm not arguing, but I'm not really in a position to argue with Bjarne Stroustrup either and he seems to think most versions of Windoze were written in VC++.

    over & out.
    If you speak or are learning Spanish, check out this Spanish and English Dictionary, it is a handy online resource.
    What happens is not as important as how you react to what happens. -Thaddeus Golas

  10. #10
    Registered User
    Join Date
    Nov 2002
    Posts
    157
    Originally posted by adrianxw
    The IDE is not the real item under discussion here. It is the compiler, CL.EXE. (When you press F7, the IDE runs the necessary executables to compile your resources, code etc., and then the linker as necessary to build your .exe, .dll, .lib etc...).

    >>> notepad is nice and simple and the perfect thing for os coding.

    So you've typed in your code - how do you compile it?
    to assemble it i use nasm, to compile the c code i use gcc. that's pretty much the standard for this sort of thing. and just link with any linker you can get your hands on.

    i test with bochs. it's a great and powerful tool. you can run your os while still in windows. reports errors, register values, eip, and all other goodies.

  11. #11
    It's full of stars adrianxw's Avatar
    Join Date
    Aug 2001
    Posts
    4,829
    >>> to assemble it i use nasm, to compile the c code i use gcc.

    Ah, so not VC++.

    This isn't going anywhere is it. It all seems to hinge on a statement by Stroustrup that, in the same article, ha says he can only accept others word for it being true.
    Wave upon wave of demented avengers march cheerfully out of obscurity unto the dream.

  12. #12
    &TH of undefined behavior Fordy's Avatar
    Join Date
    Aug 2001
    Posts
    5,793
    Originally posted by Stoned_Coder
    No way.
    I will go out on a limb here and say that no flavours of windows have been fully written in visual c. It is NOT POSSIBLE to compile an operating system with it. They could not have used it to do the operating system. They could on the other hand have used visual c to do the gui side of things once the operating system was written and in place.
    Well, I havent written any part of windows, so I dont really know.

    I have noticed that in a WDM text that the author condones linking to the Visual-C std functions (msvcrt##.dll) in some situations......He then goes on to say that VC++ is the only guaranteed compiler for WDM (but its a M$Press book....so no real suprises)

    For stuff like bootstraps and other "tight" situations then I dont know if you can use anything but ASM........but for a lot of other stuff, I dont see why they cant use VC++...they have to use something......

    But then as I say, I havent written any part of windows, so I cant know for sure.

    <edit>Also, I wouldnt be suprised how in how many of the ActiveX led components of a windows system are written in VB!</edit>

  13. #13
    Skunkmeister Stoned_Coder's Avatar
    Join Date
    Aug 2001
    Posts
    2,572
    visual c cant do flat binary format( com files) or anything 16bit. If you write an os then your computer will start in real mode and need 16bit addressing. You cant write a boot sector using inline asm in vis c because you cannot link to a 512 byte flat binary using the microsoft linker.
    GCC and NASM seem to be the preferred os dev environments.
    Free the weed!! Class B to class C is not good enough!!
    And the FAQ is here :- http://faq.cprogramming.com/cgi-bin/smartfaq.cgi

  14. #14
    &TH of undefined behavior Fordy's Avatar
    Join Date
    Aug 2001
    Posts
    5,793
    Originally posted by Stoned_Coder
    visual c cant do flat binary format( com files) or anything 16bit. If you write an os then your computer will start in real mode and need 16bit addressing. You cant write a boot sector using inline asm in vis c because you cannot link to a 512 byte flat binary using the microsoft linker.
    Yeah...I dont disagree...but after the mode is switched to protected, then I suppose lots of stuff can be done with VC++....

    You can write in flat binary with MASM using the right model and processor directives.....and also, the early versions of LINK.exe (the M$ linker) can link create raw binary code (a copy of this linker is available for download on the web....Iczelion's site has it)

    I managed to write a bootstrap using MASM a while ago (using compuboy's walkthrough for NASM)......sat on a floppy disk & worked pretty well.......I was going to try add FAT support for the disk too...but I lost interest

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Anyone using Windows 7?
    By Sharke in forum General Discussions
    Replies: 60
    Last Post: 07-12-2009, 08:05 AM
  2. Just starting Windows Programming, School me!
    By Shamino in forum Windows Programming
    Replies: 17
    Last Post: 02-22-2008, 08:14 AM
  3. how to make a windows application
    By crvenkapa in forum C++ Programming
    Replies: 3
    Last Post: 03-26-2007, 09:59 AM
  4. Script errors - bool unrecognized and struct issues
    By ulillillia in forum Windows Programming
    Replies: 10
    Last Post: 12-18-2006, 04:44 AM
  5. IE 6 status bar
    By DavidP in forum Tech Board
    Replies: 15
    Last Post: 10-23-2002, 05:31 PM