Machine-dependent software explained

Machine-dependent software is software that runs only on a specific computer. Applications that run on multiple computer architectures are called machine-independent, or cross-platform.[1] Many organisations opt for such software because they believe that machine-dependent software is an asset and will attract more buyers. Organizations that want application software to work on heterogeneous computers may port that software to the other machines. Deploying machine-dependent applications on such architectures, such applications require porting. This procedure includes composing, or re-composing, the application's code to suit the target platform.

Porting

Porting is the process of converting an application from one architecture to another.[2] Software languages such as Java are designed so that applications can migrate across architectures without source code modifications. The term is applied when programming/equipment is changed to make it usable in a different architecture.

Code that does not operate properly on a specific system must be ported to another system.

Porting effort depends upon a few variables, including the degree to which the first environment (the source stage) varies from the new environment (the objective stage) and the experience of the creators in knowing platform-specific programming dialects.[3]

Many languages offer a machine independent intermediate code that can be processed by platform-specific interpreters to address incompatibilities.[4] The transitional representation characterises a virtual machine that can execute all modules written in the intermediate dialect. The intermediate code guidelines are interpreted into distinct machine code arrangements by a code generator to make executable code. The intermediate code may also be executed directly without static conversion into platform-specific code.[5]

Approaches

See also

External links

Notes and References

  1. Agrawala, & Rauscher (2014)
  2. Rashid, Patnaik, & Bhattacherjee, 2014
  3. Huang, Li, & Xie, 2015
  4. Yin, et al., 2012
  5. Mathur, Miles, & Du, 2015