Портирование программного обеспечения: зависимость от архитектуры и способы решения
Machine-dependent software
Программное обеспечение, зависимое от аппаратного обеспечения, работает только на конкретных компьютерах. Узнайте о кроссплатформенных решениях и портировании приложений.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Машинно-зависимое программное обеспечение – это программное обеспечение, которое работает только на конкретном компьютере. Приложения, работающие на различных компьютерных архитектурах, называются машинонезависимыми или кроссплатформенными. Многие организации предпочитают такое программное обеспечение, поскольку полагают, что машино-зависимое программное обеспечение является преимуществом и привлечет больше покупателей. Организации, которым необходимо, чтобы прикладное программное обеспечение работало на разнородных компьютерах, могут портировать его на другие машины. Для развертывания машино-зависимых приложений на таких архитектурах требуется их портирование. Эта процедура включает в себя написание или переписывание кода приложения для соответствия целевой платформе.
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. 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.
Портирование
Портирование — это процесс переноса приложения из одной архитектуры в другую. Языки программирования, такие как Java, разработаны таким образом, чтобы приложения могли переноситься между архитектурами без изменений исходного кода. Этот термин используется, когда программное обеспечение или оборудование изменяется для обеспечения его работоспособности в другой архитектуре. Код, который не работает корректно в определенной системе, необходимо портировать в другую систему. Объем работ по портированию зависит от нескольких факторов, включая степень различий между исходной и целевой средами, а также от опыта разработчиков в знании платформенно-зависимых диалектов программирования. Многие языки предлагают машинонезависимый промежуточный код, который может обрабатываться интерпретаторами, специфичными для платформы, для решения проблем несовместимости. Этот промежуточный код определяет виртуальную машину, способную выполнять все модули, написанные на этом промежуточном языке. Руководства по промежуточному коду интерпретируются генератором кода в различные варианты машинного кода для создания исполняемого кода. Промежуточный код также может выполняться напрямую, без статического преобразования в платформенно-специфичный код.
Porting is the process of converting an application from one architecture to another. 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. 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.
Подходы
Перенесите транслятор. Это можно реализовать в переносимом коде. Адаптируйте исходный код к новой машине. Выполните адаптированный исходный код, используя транслятор, а исходный код генератора кода – в качестве данных. Это сгенерирует машинный код для генератора кода.
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.