1. Operating system
Microsoft Windows:Assembly -> C -> C++
Note: Once in the smartphone operating system (Windows Mobile) to consider mixing the program written in C#, such as soft keyboard, the results are too slow to write out the program, it is impossible to merge with other modules, and finally back to C++ rewrite.
I believe many friends know Windows Vista, the system development early Bill Gates wanted to write all in C#, but finally because of the slow implementation and give up, the results of the previous countless software engineers work day and night results overnight was declared null and void.
Linux: C
Apple MacOS: mainly C, partly C++.
Note: The language used before is rather mixed, the earliest is assembly and Pascal.
Sun Solaris: C
HP-UX: C
Symbian OS: Assembly, mainly C++ (Nokia phones)
Google Android: launched in 2008: C (there are rumors that the operating system is developed in Java, but just recently launched a native C SDK)
RIM BlackBerry OS 4.x: BlackBerry C++
2. GUI layer
Microsoft Windows UI: C++
Apple MacOS UI (Aqua): C++
Gnome (one of the Linux GUIs, Bigfoot): C and C++, but mainly C
KDE (Linux GUI): C++
3. Desktop search tools
Google Desktop Search: C++
Microsoft Windows Desktop Search: C++
Beagle (under Linux/Windows/UNIX): C# (based on open source .net: Mono)
4. Office software
Microsoft Office: in Assembly -> C -> stable in C++
Sun Open Office: part of JAVA (external interface), mainly for C (open source, can download its source code)
Corel Office/WordPerfect Office: tried Java in 1996, abandoned the following year, back to C/C
Adobe Systems Acrobat Reader/Distiller: C++
5. Relational database
Oracle: assembly, C, C, Java. mainly for C
MySQL: C++
IBM DB2: Assembly, C, C++, but mainly C
Microsoft SQL Server: Assembly -> C->C++
IBM Informix: Assembly, C, C++, but mainly C
SAP DB/MaxDB: C++
6. Web Browsers/Browsers
Microsoft Internet Explorer: C++
Mozilla Firefox: C++
Netscape Navigator: The code of Netscape browser was written in C, and Netscape engineers, all bought to Java (see M. Cusumano book and article) It was too slow and abandoned. Mozilla, the next version, was later developed using C++.
Safari: (released in January 2003) C++
Google Chrome: (2008 release) C++
Sun HotJava: Java (died in 1999)
Opera: C++ (more popular on cell phones)
Opera Mini: Opera Mini (2007) has a very funny architecture, and is indeed using both C++ and Java. The browser is split in two parts, an ultra thin (less than The first uses Java and receives the page under the OBML format, the latter reuses The first uses Java and receives the page under the OBML format, the latter reuses classical Opera (C++) rendering engine plus Opera’s Small Screen Rendering, on the server. This allows Opera to penetrate various J2ME-enabled portable devices, such as phones, while preserving excellent response time. execution.
Mosaic: The originator (dead) C language
7. Email client
Microsoft Outlook: C++
IBM Lotus Notes: Java
Foxmail: Delphi
8. Integrated software development environment/IDE
Microsoft Visual Studio: C++
Eclipse: Java (its graphical interface SWT based on C/C++)
Code::Blocks: C++
Volcano Chinese: C++
Volcano Mobile: C++
9. Virtual Machine
Net CLR (virtual machine for .NET): C++
Java Virtual Machine (JVM): Java Virtual Machine : C++
10. ERP software (enterprise applications)
SAP mySAP ERP: C, after the main “ABAP/4” language
Oracle Peoplesoft: C++ -> Java
Oracle E-Business Suite: Java
11. Business Intelligence (Business Intelligence)
Business Objects: C++
12. Graphics Processing
Adobe Photoshop: C++
The GIMP: C
13. Search engine
Google: assembly and C++, but mainly for C++
14. Famous website
eBay: C++ in 2002, after the main move to Java
facebook: C++ and PHP
This line is only about facebook, not its plugins. Plugins can be developed in many different technologies, thanks to facebook’s ORB/application server Thrift contains a compiler coded in C++. facebook people write about Thrift: “The multi-language code generation is well suited for search because it allows for application development in an The multi-language code generation is well suited for search because it allows for application development in an efficient server side language (C++) and allows the Facebook PHP-based web application to make calls to the search service using Thrift PHP libraries.” Aside the use of C++, facebook has adopted a LAMP architecture.
Alibaba and Taobao: php->C++/Java (mainly used)
15. Games
Assembly, C, C++
Starcraft, Warcraft, CS, Age of Empires, Karting, Legend, World of Warcraft …. Too many to count, count them yourself!
The C++ language is close to the bottom of the system and has the fastest execution speed. For example, your two friends and you respectively play with VB, Java, and C++ written “run kart”, you play the game written in C++ has been running and playing the end, found that your two friends have not started to run it, that is quite a card ah.
16. Compiler
Microsoft Visual C++ compiler: C++
Microsoft Visual Basic interpretation, compiler: C++
Microsoft Visual C#: compiler: C++
gcc (GNU C compiler): C
javac (Sun Java compiler): Java
Perl: C++
PHP: C
17. 3D engine
Microsoft DirectX: C++
OpenGL: C
OGRE 3D: C++
18. Web Servers (web services)
Apache: C and C++, but mainly C
Microsoft IIS: C++
Tomcat: Java
Jboss: Java
19. Mail service
**Microsoft Exchange Server**: C->C++
Postfix: C
hMailServer: C++
Apache James: Java
20. CD/DVD burning
Nero Burning ROM: C++
K3B: C++
21. Media Player
Nullsoft Winamp: C++
Microsoft Windows Media Player: C++
22. Peer to Peer (P2P software)
eMule: C++
μtorrent: C++
Azureus: Java (GUI using C/C++ based SWT, Eclipse-like)
23. Global Positioning System (GPS)
TomTom: C++
Hertz NeverLost: C++
Garmin: C++
Motorola VIAMOTO: June 2007, out of service, Java
24. 3D engine
Microsoft DirectX: C++ (I believe the game students know this, now the highest version is DX11)
OpenGL: C
OGRE 3D: C++
25. Server software
Apache: C
Nginx: C
IIS: C
26. Other
OpenStack: Python