What languages are Windows, Mac OS X and Linux written in?

What languages are Windows, Mac OS X and Linux written in?

  • Windows: C++, kernel is in C
  • Mac: Objective C, kernel is in C (IO PnP subsystem is Embedded C++)
  • Linux: Most things are in C, many userland apps are in Python, KDE is all C++

All kernels will use some assembly code as well.

Linux: C. Some parts in assembly.

[…] Its mostly in C, but most people wouldnt call what I write C.
It uses every conceivable feature of the 386 I could find, as it was
also a project to teach me about the 386. As already mentioned, it
uses a MMU, for both paging (not to disk yet) and segmentation. Its
the segmentation that makes it REALLY 386 dependent (every task has a
64Mb segment for code & data – max 64 tasks in 4Gb. Anybody who needs
more than 64Mb/task – tough cookies). […] Some of my C-files
(specifically mm.c) are almost as much assembler as C. […] Unlike
minix, I also happen to LIKE interrupts, so interrupts are handled
without trying to hide the reason behind them. (Source)

Mac OS X: Cocoa mostly in Objective-C. Kernel written in C, some parts in assembly.

Mac OS X, at the kernel layer, is mostly an older, free operating system called BSD (specifically, it’s Darwin, a sort of hybrid of BSD, Mach, and a few other things)… almost entirely C, with a bit of assembler thrown in. (Source)

Much of Cocoa is implemented in Objective-C, an object-oriented language that is compiled to run at incredible speed, yet employes a truly dynamic runtime making it uniquely flexible. Because Objective-C is a superset of C, it is easy to mix C and even C++ into your Cocoa applications.

Windows: C, C++, C#. Some parts in assembler.

We use almost entirely C, C++, and C# for Windows. Some areas of code are hand tuned/hand written assembly. (Source)

Unix: C. Some parts in assembly. (Source)

What languages are Windows, Mac OS X and Linux written in?

Mac OS X uses large amounts of C++ inside some libraries, but it isnt exposed as theyre afraid of the ABI breaking.

Leave a Reply

Your email address will not be published.