• 0

What Language Is Windows Written In?


Question

Recommended Posts

  • 0
Ya, there's many different "layers" of the OS. C# is usually used as an upper layer language today (although MS could make it do more in OS's after Longhorn). That's the whole benefit of .Net. It doesn't need to get as messy as C++ so you can code more a lot faster and easier. C# just happens to be the super language that can tell the framework it wants to talk to memory/hardware in specific parts of code, so it's the best of both worlds (Java and VB.NET can't do this).

"C# just happens to be the super language that can tell the framework it wants to talk to memory/hardware in specific parts of code, so it's the best of both worlds (Java and VB.NET can't do this)."

What do you mean by that?

Link to comment
Share on other sites

  • 0
And what the hell are you being so loud about anyway. Avalon is still a pipe dream in some architect's head in Redmond and is not planned for release until what? 2005.? Maybe 2006 given prior track record. How the hell are you so sure it is going to be all written in CLR languages?
Avalon a pipe dream? Take a freakin' closer look into current Longhorn leaks, first tracks are visible! Or do you have an explanation why the namespace is called Microsoft.Avalon.*?!?!
OH I JUST CANNOT RESIST: according to your post the "****ing core" will "mainly just consist out of kernel, drivers and the freakin' CLR".

Wow that sounds like a pretty freaking large core to me. You are only talking about all the software responsible for hardware devices like drives, keyboards, mice, printers, display adapter, sound cards etc... drivers>), all the memory management, CPU process scheduling and process threading kernel>), and then the main API framework CLR>) of the OS too. If you boil down the definition of an OS that could be a whole OS all by itself, and then some.

The Windows embedded core takes like goddamn 20megs only, that includes all core services needed for an OS. All the rest of your goddamn 500megs that Windows uses as harddrive space can be rewritten in any way you want since it's not critical code in kernel coding sense! And even in these 20megs is lotsa ballast to be thrown away!

Now bite me!

--edit: add. info

Edited by Tom Servo
Link to comment
Share on other sites

  • 0
Avalon a pipe dream? Take a freakin' closer look into current Longhorn leaks, first tracks are visible! Or do you have an explanation why the namespace is called Microsoft.Avalon.*?!?!
OH I JUST CANNOT RESIST: according to your post the "****ing core" will "mainly just consist out of kernel, drivers and the freakin' CLR".

Wow that sounds like a pretty freaking large core to me. You are only talking about all the software responsible for hardware devices like drives, keyboards, mice, printers, display adapter, sound cards etc... (drivers), all the memory management, CPU process scheduling and process threading (kernel), and then the main API framework (CLR) of the OS too. If you boil down the definition of an OS that could be a whole OS all by itself, and then some.

The Windows embedded core takes like goddamn 20megs only, that includes all core services needed for an OS. All the rest of your goddamn 500megs that Windows uses as harddrive space can be rewritten in any way you want since it's not critical code in kernel coding sense! And even in these 20megs is lotsa ballast to be thrown away!

Now bite me!

--edit: add. info

You really need to grow up kid. Throwing random insults and bite-me's and goddamits just shows your age and immaturity. Or do you go around insulting anyone that challenges your knowledge, and threatens to know more than you do? (not saying I do, so don't jump just yet :p )

Back to the topic:

Yeah oh so impressive the new longhorn builds. Feels more like just XP with a couple of different widgets, even more confusion on the filesystem, and a new theme. I have seem better tools for Object Desktop floating around. Besides, how do you know any of it is written in C# or another managed code language. Just you wait til longhorn is out or in late beta before singing its praises. Companies have a tendency to switch gears during a project.

As for what you call that OS Core:

Hey, did you ever take CS in school? If so do you remember that class on Operating systems? That embedded core you keep talking about is what makes the OS an OS. You can have an OS without Active Directory, you can have an OS without a virtual machine for high level languages, you can have an OS without a GUI, you can have an OS without Internet Explorer, and you can certainly have an OS without a god damn media player.

But you cannot have an OS without hardware drivers (including the filesystem), you cannot have an OS without memory and CPU process management, and you cannot have an OS without a basic API. You cannot measure the importance of a component in terms of its size. It is the size of the task it accomplishes that matters. A gui with all its tedious code for handling look and feel, user events, error messages and all graphical widgets embedded in DLL resources, is obviously more likely to take up 500mb of space than an elegantly coded kernel and API.

My point is, the basic foundation of Windows, and most other OSes will remain C based (or objective C or C++) because C is the only language that currently exists that is (a) widely know by the programming community, (b) low-level enough where you can actually directly address hardware. (C# still needs the framework to address hardware, so it is doing it inderectly - most likely via a translation layer written in C)

PS: One good thing about them rewriting all the other goo in C# though is that they may finally get rid of all those pesky buffer overflow bugs once and for all.

Link to comment
Share on other sites

  • 0
My point is, the basic foundation of Windows, and most other OSes will remain C based (or objective C or C++) because C is the only language that currently exists that is (a) widely know by the programming community, (b) low-level enough where you can actually directly address hardware. (C# still needs the framework to address hardware, so it is doing it inderectly - most likely via a translation layer written in C)

Objective C is a runtime language, to the best of my knowledge you couldn't write a kernel in it, though it sure would be nice.

PS: One good thing about them rewriting all the other goo in C# though is that they may finally get rid of all those pesky buffer overflow bugs once and for all.

We should be so lucky. I wonder what the slashdot kiddies would bash if windows stopped crashing for such stupid reasons?

Link to comment
Share on other sites

  • 0
You really need to grow up kid. Throwing random insults and bite-me's and goddamits just shows your age and immaturity. Or do you go around insulting anyone that challenges your knowledge, and threatens to know more than you do? (not saying I do, so don't jump just yet  )
No, I just do so because you seem unable to read.
Besides, how do you know any of it is written in C# or another managed code language. Just you wait til longhorn is out or in late beta before singing its praises. Companies have a tendency to switch gears during a project.

You know, others just install it, I also spent some time in BROWSING THE DAMN DIRECTORIES. And guess what I found... Ah wait, there's no Avalon code in Longhorn yet, huh? I've been hallucinating, those Microsoft.Avalon.*.dll files were all not there, huh? Tsk. :hmmm:

But you cannot have an OS without hardware drivers (including the filesystem), you cannot have an OS without memory and CPU process management, and you cannot have an OS without a basic API. You cannot measure the importance of a component in terms of its size. It is the size of the task it accomplishes that matters. A gui with all its tedious code for handling look and feel, user events, error messages and all graphical widgets embedded in DLL resources, is obviously more likely to take up 500mb of space than an elegantly coded kernel and API.

Guess what smartie, everything in bold is what I named "OS core" since all the freakin' time. Or what do you think I mean by "kernel + drivers +CLR"? But no, rather telling me I'd be an idiot, while you're one yourself. :hmmm:

If you want to look smart, good job, you don't.

Link to comment
Share on other sites

  • 0

Hustin we have a problem. . . (thats you administrator. . . )! Imaturity needs to be replaced with some sence.

I tracked this topic in hopes of finding out more about how windows is written, not to find out what your personal views of each others physiology is. Thanks for the insite though. Lets keep the thoughtfull conversation up, and keep the imaturity down. Thanks.

Link to comment
Share on other sites

  • 0

The Windows kernel (including drivers), are written in C and assembly. It is not written in any CLR language or any language that requires a runtime. Some higher level aspects of the OS, (such as wizards for example) are written in C# I would imagine, and we will continue too see more C# code used for user interaction I imagine with Longhorn as it progresses. But, the kernel or the "core" as it has been called will always be written in C or C++ and assembly. There are some OS's written entirely in assembly. There is a great FAQ about writing an operating system here, http://www.mega-tokyo.com/os/os-faq.html.

Link to comment
Share on other sites

  • 0

S/390 and Z/os are coded in assembly. They are the best business operating systems in the world. Ours at work gets a scheduled reboot every one and a half years.

Link to comment
Share on other sites

  • 0
Hustin we have a problem. . . (thats you administrator. . . )! Imaturity needs to be replaced with some sence.

I tracked this topic in hopes of finding out more about how windows is written, not to find out what your personal views of each others physiology is. Thanks for the insite though. Lets keep the thoughtfull conversation up, and keep the imaturity down. Thanks.

well Tom Servo and PeterHammer actually know somewhat more than most of the retards in this thread

Link to comment
Share on other sites

  • 0

Yeh, but there seems a major communication problem, because Mr. Hammer tried to tell me in long what I told in short before. See the "kernel + drivers + clr" vs "blahblahblah you all need that".

Link to comment
Share on other sites

  • 0

ok, im outa this, i dont care how much you guys know if you cant act mature i dont want to know what you have to say.

Link to comment
Share on other sites

  • 0

As far as I know, most of Windows is written in C++. I don't think they use VB, and I know they haven't used any of the .NET languages up to this point. In fact, many MS employees program in C/C++ in emacs, sometimes running linux. They don't typically use Visual Studio or any of the Visual (C++, Basic, etc.) interfaces or languages to code in. I personally find it amusing they don't use Visual Studio, but then again, not all of them can, cuz what are they going to write Visual Studio in? Not a previous version of Visual Studio!

So there's some more info for ya.

Paul.

Link to comment
Share on other sites

  • 0

it's written in c++ as far as i know. i do know for a fact that it is not written in c#, or any other .NET language, as .NET was only a vision at the time xp was written, and still is somewhat. win95, and some of win98 (i think) were written in vb 5/6. however, no "important" parts of the os were written in vb, as it is too slow.

Link to comment
Share on other sites

  • 0
win95, and some of win98 (i think) were written in vb 5/6. however, no "important" parts of the os were written in vb, as it is too slow.

Why would you think that, and have you read this thread from the begining?

Link to comment
Share on other sites

  • 0
I personally find it amusing they don't use Visual Studio, but then again, not all of them can, cuz what are they going to write Visual Studio in? Not a previous version of Visual Studio!

Why shouldn't you be able to code a new version of Visual Studio with the old version?

According to your theory the gcc developers shouldnt be able to compile their own compiler with their own compiler. But guess what, they do.

Link to comment
Share on other sites

  • 0

Initially, you've gotta start with machine-level instructions to build on, but the goal of nearly any compiler project is to build a self-compiling compiler (a compiler that can build itself). If you've installed Gentoo from source, it compiles gcc3 using gcc2 (and then again with gcc3 for maximum speed ;) ). They most definitely built VS.Net with an older edition of VS. They were probably using early Alphas to build it later on in development too. If you build a feature into a program that's recursively built, you'll want to use that feature ASAP for yourself too :)

Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.