- What programming language was Windows Vista programmed in?
- 9 Answers 9
- Find Programming Language Used
- 13 Answers 13
- What languages are Windows, Mac OS X and Linux written in?
- 14 Answers 14
- 10 Best Programming Language to Learn in 2021
- ❓ What Programming Language should I Learn?
- 1) Python
- 2) Java
- 4) Javascript
- 5) Swift
- 8) PHP
- 9) SQL
- 10) Go
What programming language was Windows Vista programmed in?
Which programming language(s) were used to code Windows Vista?
9 Answers 9
From working with the Windows CE operating system I’d say its a mix of C for the old school code and interfaces, and a lot of C++ behind the scenes for drivers and other code. It (WinCE) uses C++ in the drivers behind a C interface to the rest of the system.
Now I’m going to guesstimate and say there are many bits of C# and other code in it now as well.
Well, the Windows kernel is still almost entirely C. However, there are different aspects that use C++, say some parts of the shell and so forth. The core is C. Other languages, perhaps even .NET might be used in some corners for certain applications but C is the OS language of choice in Windows.
Multiple languages would have been used to create Vista.
For the low level parts, C and assembly language.
The majority would have been in C / C++.
Some of the higher level applications may have been written in managed code.
I would imagine a combination of C/C++ and Assembly (for device interaction).
As far as I remember, the Windows Research Kernel (which is, afaik, based on XP) is written in C. I assume the rest is too. However, just because the kernel is written in C, doesn’t mean the entire operating system is. There are also libraries, tools and applications without which Windows would be pretty useless. Of these, I assume that most are written in C, C++ or C#, though thats just an assumption.
Garry is always right, seriously if Microsoft deny C is getting replaced they should really check with him before they go ahead.
Windows vista was programmed in multiple language for different things. The entire kernel was written in C, while others parts used C++, possibly .NET as well.
Vista operating system arrived in numerous variants for use in places like England and Kandohar as stated in the rules for the use of Vista and its definition. Some were coded in something like RCODE for home computing and others may have been coded in COMAL, VBAS or ICODE for computers based on a Commodore (CBM) 63 used in some computer base units. What the higher level languages compiled into is confidential and is the preserve of the authoring person in England, the team supporting versions created for other countries by Microsoft, with variations for install on computers for use in the workplace having a different policy inside regarding protection of business data for compliance with privacy rules.
well having gone through most of the comments, there are quite a good guys out here who do it with only C, yes most of the kernels in the world are written using C the powerful programming language C and as pinch of salt the assembly of course for the disk and video interfaces and for some memory (DMA).
Find Programming Language Used
Whats the easiest way to find out what programming language an application was written in? I would like to know if its vb or c++ or delphi or .net etc from the program exe file.
13 Answers 13
of course if they used a packer, some unpacking will need to be done first 🙂
Start it up and check what run-time DLLs it uses with Process Explorer.
If that doesn’t make it immediately obvious, search the web for references to those DLLs.
Most disassemblers (including Olly I think) can easily show you the text contained in an EXE or DLL, and that can also sometimes give a clue. Delphi types are often prefixed with T as in TMyClass.
If it’s a small executable with no DLL references and no text you might be SOL. At that point you’d need to look for idioms of particular compilers, and it would be mostly guesswork.
There is an art to detecting what language a program was written in. It is possible but there are no hard and fast rules. It takes a lot of experience (and it also leads to the question «Why would you want to. » but here are a few ideas on how to go about it.
What you’re looking for is a «signature». The signature could be a certain string that is included by the compiler, a reference to an API that is quite common in the programming tool being used, or even a style of programing that is common to the tools being used, visible in the strings contained in the application.
In addition, there are styles to how an application is deployed: various configuration files found in the deployment directory, dlls and assemblies and even images, directories or icons.
Java applications wrapped in a self-launching executable will contain references to java libs, and will likely have certain libraries or files included in the same directory that indicate that it’s java.
As indicated in other answers a managed assembly will show certain signs as well: you can open it in Reflector etc. While it is correct that c# and VB are «interchangable» once compiled, it is not true that they are identical. If you use Reflector to disassemble VB code you will quite often see that the assembly references the Microsoft.VisualBasic.dll assembly. You’ll be able to tell the difference between Mono applications because they will most likely contain references to the mono assemblies.
Many compilers assemble and link code in certain ways, and leave footprints behind. For example, examining a window executable using «strings: tab in Process Explorer, you’ll see a lot of strings. Using these you may be able to determine programming styles, methods called, error or trace methods withint the exe.
An example is that compilers use different mechanisms for localization: Microsoft stores localized strings in XML files or resource files. Other compilers will use a different tactic.
Another example is c++ name mangling. The CodeWarrior compiler uses a different algorithm to mangle the names of the member variables and functions of a call than Visual Studio.
I suppose you could write a book on the subject of accurately determining the lineage of any executable. This subject would probably be called «programming archeology».
What languages are Windows, Mac OS X and Linux written in?
I was just wondering who knows what programming languages Windows, Mac OS X and Linux are made up from and what languages are used for each part of the OS (ie: Kernel, plug-in architecture, GUI components, etc).
I assume that there are multiple languages for each and obviously I know the Linux kernel is written in C.
I’m totally guessing here that Mac OS X contains a lot of Objective-C code as it is Apple’s language derived from NeXT.
Windows, I have heard contains C, C++ and Intel Assembly. Do Linux or Mac OS contain any Assembly code?
Also, are there scripting languages like Ruby, Python, etc used by the OS developers for scripting parts of the OS? What parts of the OS would be written in each language?
14 Answers 14
- 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.
[. ] It’s mostly in C, but most people wouldn’t 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. It’s 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. (Source)
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)
10 Best Programming Language to Learn in 2021
With time old programming languages become obsolete while new programming languages are launched, but they never gain traction. A common question amongst beginners (and coders alike) is the programming language they should invest learning in, that is in demand, stable outlook, and plenty of jobs.
❓ What Programming Language should I Learn?
Each programming language is designed for a specific purpose and has its relative merits and demerits. Also, the answer to the most useful programming language to learn is subjective and depends on your familiarity with coding. Irrespective, the following 3 parameters are essential to narrow a language a choice.
- Job Opportunities in the chosen Language.
- The popularity of the chosen programming language should be on an uptick.
- Your Career / Life Goals.
Below, we have listed the 10 Most Useful Programming Languages you can learn right now. Sample Usage and Applications of each language are also listed to help you decide.
1) Python
Created: Python language developed by Guido van Rossum. It was first released in 1991.
Pros:
- It is one of the best programming language to learn which supports multiple systems and platforms
- Object-Oriented Programming (OOPs) driven.
- Helps to improve Programmer’s Productivity
- It is one of the best coding language to learn that allows you to scale even the most complex applications with ease
- Extensive Support Libraries
Cons:
- Note ideal for Mobile Computing
- Python’s database access layer is bit underdeveloped and primitive.
Usage/Application: Web and Internet Development, Scientific and Numeric applications, Desktop GUIs, Business applications. It is widely used in AI and Machine Learning space.
Salary: An average salary for any Python developer in United State is $114,383 per year.
Learning Difficulty: Easy
Reason Selected: Machine Learning, AI, and Data Science are emerging fields and Python is a staple programming language in such software programs.
2) Java
Created: James Gosling primarily designed Java at Sun Microsystems in the year 1996
Pro.
- Object- Oriented language
- Java offers APIs for different activities like Database connection, networking, XML parsing, utilities, etc.
- Powerful open source Rapid Development tools
- It is one of the best programming language to learn that has large number of open source libraries
Cons.
- Memory management in Java is quite expensive
- The absence of templates can limit you to create high-quality data structures.
Usage/Application: Java mostly used for developing Android apps, web apps, and Big data.
Salary: An average salary for any Java developer in United State is $101,013 per year.
Learning difficulty: Learning Java is simple and easy.
Reason Selected: Java has wide and growing adoption. There is and will never be a shortage of jobs requiring Java Skills.
Created: R was designed by Robert Gentleman and Ross Ihaka at the University of Auckland. This project was conceived in 1992, but it’s initial version released in 1995 and a stable beta version in 2000.
Pros:
- R is one of the best programming languages to learn which is a comprehensive statistical analysis language that encourages you to develop new ideas
- As a statistical language which is considered to be very easy to code
- R is open-source software. Therefore, anyone can use and change it
- R is good for GNU/Linux and Microsoft Windows.
- R is one of the most useful programming languages which is cross-platform that means it can seamlessly run on different operating systems.
Cons:
- In R, quality of some packages is not up to the mark
- R does not have the best memory management. Therefore, it may consume all available memory.
Usage/Application: Data Science projects, Statistical computing, Machine learning
Salary: An average wage for any R developer ranges from approximately $90,042 to $136,616 per year
Learning Difficulty: Hard
Reason Selected: Data Sciences is a booming field and R is primarily used for Data Analysis.
4) Javascript
Created: JavaScript was earlier called LiveScript when it first shipped in with Netscape Navigator 2.0 in September 1995. Later, it was renamed as a JavaScript.
Pros:
- Client-side JavaScript is very fast as it can be run quickly in the client-side browser
- JavaScript is one of the best coding language to learn which is relatively simple to learn.
- It is one of the best programming language to learn which can work smoothly with other languages and can be used in a huge variety of applications.
- Grease monkey support to write snippets of JavaScript which can execute on specific web pages
Cons:
- JavaScript only allows single inheritance, so multiple inheritances are not possible
- No copy or equal method is available in JavaScript.
- JavaScript interpreted differently by different browsers.
Usage/ Applications: JavaScript usage include web/mobile app development, game development, and desktop app development.
Salary: An average wage for Javascript developer in the United States is around $110,981 per year
Learning Difficulty: Easy
Reason Selected: With NodeJS JavaScript now supports Server-Side Scripting as well. JavaScript is an indispensable language there will always be a need for JS skills.
5) Swift
Created: Swift was developed by Apple in July 2010 so that iOS developers do not need to work with Objective-C.
Pros:
- The Swift program codes are near to natural English, so it is easy to read
- It is one of the most useful programming languages which has easy to add new features which makes swift high- level language
- It is one of the best coding language to learn that does not have long code line.
- Automatic Memory Management feature prevents the memory leaks.
Cons:
- With the continues updating of swift versions of Apple, Swift is somewhat unstable
- As it is a new programming language the pool of Swift developers is very limited
Usage applications:
Swift is specially designed language which works with Apple’s Cocoa and Cocoa Touch frameworks to create all types of iOS apps.
Salary: An average salary for iOS developer in the United States is around $130,801 per year
Learning difficulty: Easy
Reason Selected: Apple! Should we say more?
Created:
C++ is a programming language that was developed by Bjarne Stroustrup in 1983.
Pros:
- It is a popular language, and thus, there are many compilers and libraries
- Other programming languages like C, C#, and Java have very similar syntax to C++, make it easy to learn for everyone who knows C++.
- It is one of the popular coding languages which has no garbage collector running in the background.
Cons
- The syntax is complex, and the standard library is small, making this language very difficult to learn for the beginner programmer.
- C++ program can’t support garbage collection or Dynamic Memory Allocation
- The object orientation system in C++ is unnecessarily basic compared to other languages.
Usage applications: C++ is widely used in Game Development, Advance Computations, and Graphics Compilers
Salary:
The average salary of C++ developers in the United States is $113,865 per year.
Learning Difficulty: Hard
Reason Selected: C++ is robust language and is widely used in diverse fields. Will never go out of fashion
Year Created:
C# is a computer programming language. It’s the first version released in 2001.
Pros:
- C# uses almost similar syntax which follows by C so it easy to understand for those who know C language
- It is one of the best coding language to learn that has Easy Integration with Windows
- Fully integrated with the .NET library which provides access to a repository of functionality and support.
- Safer than its namesakes (C/++) as pointer types are not permitted
Cons:
- It allows pointers in ‘unsafe’ blocks
Usage applications: Widely used in Enterprise Cross-Applications Development, Web Applications
Salary:
The average salary for «C# developer» ranges from $66,493 per year to $101,775 per year
Learning Difficulty: Hard
Reason Selected: Widely used in Enterprise software and the skill is in demand.
8) PHP
Year Created:
Rasmus Lerdorf created PHP in 1994
Pros:
- Running with PHP is simple
- Functional and Object-Oriented Programming
- It is one of the top programming languages that has Large Open Source Software Community
- It is one of the best coding languages which has reasonably good system of automation tools available for testing and deploying
Cons:
- Error handling facility is poor as PHP lacks debugging tool
- PHP is not secure as it is one of the open source languages
- Developing a website with PHP Web Development is slower than other programming languages.
Usage applications: Web Applications, Content Management Systems, eCommerce Applications
Salary:
The average salary for a PHP Developer in the US is $84,727 per year
Learning Difficulty: Easy
Reason Selected: Most popular scripting language. WordPress, Facebook all created using PHP. Never a shortage of PHP jobs.
9) SQL
Created: SQL was developed at IBM by Donald D. Chamberlin and Raymond F. Boyce. This language was made available publicly in 1979.
Pros:
- Powerful query language
- Optimised for large numbers of table rows
- Fast for searching and querying of data
- High availability and consistency of data
- Fast for retrieving data from multiple tables
Cons:
- Difficult to convert data from Objects into database tables
- It can only run on the single server, so increasing speed means upgrading hardware.
- As SQL databases run on a single server so in case if the server stop working, then the database shouldn’t be accessed
Usage applications: Used in Any Database
Salary: The average salary earned by SQL Developer is $84,792 per year in the United States
Learning Difficulty: Easy
Reason Selected: You need to know database and SQL irrespective of what profile/language chose as a software developer.
10) Go
Created: Go language which is also known as golang is developed at Google in 2009 by Robert Griesemer, Ken Thompson, and Rob Pike.
Pros:
- Go is a really fast language as it is compiled to machine code
- Its syntax is small compared to other languages, and it’s easy to learn.
- It is one of the best programming languages to learn which offers standard library to provide handy built-in functions for working with primitive types
- Go makes concurrent programming easy.
Cons:
- Poor Library Support
- Interfaces Are Implicit
- Fractured Dependency Management
Usage applications: Console utilities, GUI applications, and web applications
Salary:
The average salary earned by GO Developer is $94,082 per year in the United States
Learning Difficulty: Difficult
Reason Selected: Upcoming language from Google.