HOME

TheInfoList



OR:

Machine-dependent software is
software Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications. The history of software is closely tied to the development of digital comput ...
that runs only on a specific
computer A computer is a machine that can be Computer programming, programmed to automatically Execution (computing), carry out sequences of arithmetic or logical operations (''computation''). Modern digital electronic computers can perform generic set ...
. Applications that run on multiple computer architectures are called machine-independent, or
cross-platform Within computing, cross-platform software (also called multi-platform software, platform-agnostic software, or platform-independent software) is computer software that is designed to work in several Computing platform, computing platforms. Some ...
. 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. Software languages such as
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
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. Many languages offer a machine independent intermediate code that can be processed by platform-specific interpreters to address incompatibilities. 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.Mathur, Miles, & Du, 2015


Approaches

* Port the translator. This can be coded in portable code. * Adapt the source code to the new machine. * Execute the adjusted source utilizing the translator with the code generator source as data. This will produce the machine code for the code generator.


See also

*
Virtual machine In computing, a virtual machine (VM) is the virtualization or emulator, emulation of a computer system. Virtual machines are based on computer architectures and provide the functionality of a physical computer. Their implementations may involve ...
*
Java (programming language) Java is a High-level programming language, high-level, General-purpose programming language, general-purpose, Memory safety, memory-safe, object-oriented programming, object-oriented programming language. It is intended to let programmers '' ...
* Hardware-dependent software


References


External links

* Agrawala, A. K., & Rauscher, T. G., 2014
Foundations of microprogramming: architecture, software, and applications
''Academic press'' * Huang, J., Li, Y. F., & Xie, M., 2015
An empirical analysis of data preprocessing for machine learning-based software cost estimation
''Information and Software Technology'', 67, 108–127 * Lee, J. H., Yu, J. M., & Lee, D. H., 2013
A tabu search algorithm for unrelated parallel machine scheduling with sequence-and machine-dependent setups: minimizing total tardiness
''The International Journal of Advanced Manufacturing Technology'', 69(9–12), 2081–2089 * Lin, S. W., & Ying, K. C., 2014
ABC-based manufacturing scheduling for unrelated parallel machines with machine-dependent and job sequence-dependent setup times
''Computers & Operations Research'', 51, 172–181 * Mathur, R., Miles, S., & Du, M., 2015, Adaptive Automation: Leveraging Machine Learning to Support Uninterrupted Automated Testing of Software Applications, ''arXiv preprint '' * Rashid, E. A., Patnaik, S. B., & Bhattacherjee, V. C., 2014
Machine learning and software quality prediction: as an expert system
''International Journal of Information Engineering and Electronic Business (IJIEEB)'', 6(2), 9 * Röhrich, T., & Welfonder, E., 2014
Machine Independent Software Wiring and Programming of Distributed Digital Control Systems
In Digital Computer Applications to Process Control: Proceedings of the 7th IFAC/IFIP/IMACS Conference, Vienna, Austria, 17–20 September 1985 (p. 247), ''Elsevier'' * Shepperd, M., Bowes, D., & Hall, T., 2014
Researcher bias: The use of machine learning in software defect prediction
Software Engineering, ''IEEE Transactions on'', 40(6), 603–616 * Wang, J. B., Sun, L. H., & Sun, L. Y., 2011
Single-machine total completion time scheduling with a time-dependent deterioration
''Applied Mathematical Modelling'', 35(3), 1506–1511 * Yin, Y., Liu, M., Hao, J., & Zhou, M., 2012, Sin {{DEFAULTSORT:Machine-Dependent Software architecture