8

What programming languages are used to make/create Linux-based Operating Systems?

5
  • 2
    The kernel is written in C, as well as most system libraries used in most distros. Jul 25, 2013 at 6:30
  • Is that all? I thought making/creating linux will will be using C,C++ and other applications? Jul 25, 2013 at 6:32
  • 1
    Depends on what. He is talking about kernel, the core part. Other stuff is written in all languages imaginable I think.
    – darxsys
    Jul 25, 2013 at 6:54
  • Most common are C, C++, Perl, Python, PHP and more recently Ruby. C is actually everywhere, as indeed the kernel is written in C. Perl and Python (2.6/2.7 mostly these days) are shipped with almost every distro. Some major components like installer scripts are written in Python or Perl, sometimes using both. Jul 25, 2013 at 7:10
  • And don't forget all the other stuff, most importantly Javascript, which is now the recommended language of the Gnome platform. Jul 25, 2013 at 7:29

2 Answers 2

15
  • Linux (the kernel) is essentially written in C with a little of assembly code.

  • The lower layer of userland, usually GNU (glibc and other libraries plus standard core commands) are almost exclusively written in C and shell scripting.

  • The remaining of the Gnu/Linux distributions userland is written in any language developers decide to use (still a lot of C and shell but also C++, python, perl, javascript, java, C#, golang, whatever ...)

6

I believe the following link has the answer you're looking for: http://ubuntuforums.org/showthread.php?t=705754

To paraphrase my favorite answers there:

  1. Linux, the kernel, is mostly written in C and a little bit of Assembly.

  2. Toolkits and frameworks used to develop the graphical interface (e.g. GTK+, Qt, GNOME, KDE, Unity) are written mostly in C and C++.

  3. Utilities and applications (i.e. programs) that come bundled with the Operating System are usually written in Java, Python, C, C++ and even C#.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .