Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Перенос наследуемого кода VAX PASCAL на Windows: выбор подходящего инструмента

Delphi , ОС и Железо , Язык

Вопрос переноса наследуемого кода с одной платформы на другую является актуальным для многих компаний, особенно в свете устаревания и отмены поддержки старых систем. В данном случае рассматривается перенос кода, написанного на VAX PASCAL, на операционную систему Windows. Проблема заключается в том, что код, который изначально разрабатывался для VAX, имеет свои особенности, связанные с платформой, что может затруднить его перенос на новую среду выполнения. Пользователь уже имеет опыт работы с компилятором GNU PASCAL, установленным на Windows, и вопрос стоит о том, стоит ли продолжать перенос в рамках одного языка (PASCAL), или лучше использовать другой язык программирования, учитывая текущие навыки и опыт пользователя.

Описание проблемы

У пользователя имеется код на языке Compaq PASCAL, который необходимо перенести на Windows. Пользователь уже успешно перенес ассемблер с VAX на Windows, используя инструменты KEIL 8051. Однако, при попытке компиляции VAX PASCAL кода на CYGWIN с использованием gpc, возникли проблемы, связанные с различиями в IO и алгоритмах между VAX PASCAL и GNU PASCAL. Код предназначен для работы с файлами INTEL и TEX HEX, выполняя заполнение и проверку контрольных сумм. Важно отметить, что код должен быть сертифицирован по стандарту DO-178B, что исключает возможность использования открытого программного обеспечения.

Возможные решения

  1. Продолжить перенос в GNU PASCAL. Пользователь уже имеет рабочий инструментарий для этого, и если различия между VAX PASCAL и GNU PASCAL не слишком велики, это может быть наиболее простым решением.

  2. Перенос на Perl. Пользователь имеет опыт работы с Perl, и если он считает этот язык более продуктивным для себя, это может быть хорошим выбором. Однако, стоит учесть, что Perl может быть менее предпочтительным в корпоративной среде и для сертификации по стандарту DO-178B.

  3. Перенос на C или C++. Эти языки являются популярными и хорошо поддерживаемыми, что может облегчить будущее обслуживание и поддержку кода. Также, C и C++ могут предложить более высокую производительность и меньший размер исполняемого файла.

  4. Использование Free Pascal. Free Pascal является современным и активно поддерживаемым компилятором, который может генерировать привычные Windows бинарные файлы без необходимости использования эмуляции Unix.

Подтвержденный ответ

На основе обсуждения было предложено перенести код на C, разделив его на модули и написав юнит-тесты. Это решение позволяет точно оценить время, необходимое для переноса, и обеспечивает легкость в будущем обслуживании и поиске специалистов для поддержки кода.

Рекомендации

  • Оцените сложность и время, которое потребуется для переноса в каждый из рассмотренных языков.
  • Учитывайте текущие навыки и предпочтения команды разработчиков.
  • Оцените долгосрочную поддерживаемоемость и доступность специалистов для каждого из языков.
  • Учитывайте специфику сертификации кода по стандарту DO-178B.

Пример кода на Object Pascal (Delphi)

program FillAndCheckSum;
uses
  System.SysUtils;

function FillHexFile(const FileName: string; Data: array of byte): boolean;
begin
  // Реализация функции заполнения файла
end;

function CheckSumHexFile(const FileName: string): string;
begin
  // Реализация функции проверки контрольной суммы
end;

Этот пример кода на Object Pascal демонстрирует возможные функции, которые могут быть реализованы в контексте переноса кода. В реальном проекте такие функции будут содержать более сложную логику, соответствующую требованиям задачи.

Заключение

Выбор инструментария для переноса наследуемого кода зависит от множества факторов, включая текущие навыки команды, требования к сертификации и долгосрочные планы по поддержке и развитию проекта. Пользователю следует тщательно взвесить все "за" и "против" каждого из рассмотренных вариантов, прежде чем принять окончательное решение.

Создано по материалам из источника по ссылке.

в одном предложении: Пользователь рассматривает варианты переноса наследуемого кода, написанного на языке VAX PASCAL, на операционную систему Windows, включая выбор подходящего инструментария и языка программирования, у


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Язык ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-02-05 20:54:45/0.0035490989685059/0