Guidelines

Are compilers platform dependent?

Are compilers platform dependent?

C Compiler is platform dependent since it is closely linked to the OS kernel which is different for different OS.

Does java have different compilers for different OS?

The java compiler generates byte code which is a file with “. class” extension and it will be fed into java virtual machine which converts that byte code into corresponding machine code respective to operating system. All java compilers are similar, the only thing that differs from OS to OS is java virtual machine.

Why is C++ not platform independent?

In case of C or C++ (language that are not platform independent), the compiler generates an .exe file which is OS dependent. When we try to run this .exe file on another OS it does not run, since it is OS dependent and hence is not compatible with the other OS.

READ ALSO:   What does steam power plant mainly use to generate steam?

What happens to a compiler when a processor is released?

When (for example) Intel releases a new processor, it does everything the old processor does, and more. This means that you can continue to use the existing compiler. It will make programs that work on the new processor. They will not use the new instructions that is offered, but they will still work.

What is a CPU compiler?

One CPU architecture – The compiler generates native machine code for one specific CPU or family of CPU architectures. Through compiler options, it may be able to target specific CPUs within a CPU architecture family (e.g., turning on support for SSE instructions, switching between targeting 32-bit and 64-bit modes, etc.)

Are there any compilers that can target multiple CPUs?

Usually, compilers target one specific architecture. There have been C compilers that were capable of generating code for multiple CPU types, but I would consider them ‘novelties’. The only good reason to have compilers that target multiple CPUs would be to share code, and indeed this is already done.

READ ALSO:   What are the drums on the back of tanks?

Do you need a real C compiler to be an optimizing compiler?

Today, you need a real C compiler to be an optimizing compiler, notably because C is no longer a language close to the hardware, because current processorsare incredibly complex (out-of-order, pipelined, superscalar, with complex caches& TLB, hence needing instruction scheduling, etc…).