DJGPP

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar
Aplicación de la cadena de herramientas GNU para DOS

La

Plataforma de programación GNU de DJ (DJGPP) es una suite de desarrollo de software para PC IBM de nivel Intel 80386 y superior, compatible con sistemas operativos DOS. Está guiado por DJ Delorie, quien comenzó el proyecto en 1989. Es una adaptación de la Colección de compiladores GNU (GCC) y principalmente de utilidades GNU como Bash, find, tar, ls, GAWK, sed y ld para proteger DOS. Interfaz de modo (DPMI). Los lenguajes admitidos incluyen C, C++, Objective-C/C++, Ada, Fortran y Pascal.

Descripción general

El compilador genera código de 32 bits, que se ejecuta de forma nativa en modo protegido de 32 bits mientras vuelve a llamadas DOS de 16 bits para soporte básico del sistema operativo. Sin embargo, a diferencia del compilador Open Watcom C/C++, no es un modelo plano de base cero debido a que prefiere la protección de puntero NULL para una mejor estabilidad. Actualmente se basa en una variante del formato COFF. Puede acceder a hasta 4 GB de RAM en DOS puro cuando se utiliza un host DPMI adecuado (por ejemplo, CWSDPMI r7 o HDPMI32).

A partir de agosto de 2020, los componentes principales de DJGPP 2 incluyen:

  • GNU Compiler Collection 9.3.0 (10.2.0 también está disponible)
  • Autoconf 2.5.9
  • Automake 1.9.4
  • Binutils 2.34
  • GNU Bash 4.1.17
  • GNU Bison 2.4.1, Flex 2.5.4
  • GNU Emacs 24.5
  • GNU MPC 1.1.0, MPFR 4.1.0

También es posible utilizar DJGPP para realizar una compilación cruzada de software en DOS, por ejemplo en UNIX/Linux. Tanto las bibliotecas DJGPP como los programas se pueden compilar de esta manera, vincularlos y luego implementarlos en máquinas con DOS o emuladores de DOS.

Compatibilidad

DJGPP presenta al programador una interfaz que es compatible con los estándares ANSI C y C99, las API de DOS y un entorno antiguo similar a POSIX. Los binarios compilados reconocen los nombres de archivos largos (LFN) y pueden manejar dichos nombres en la mayoría de Windows de 32 bits de forma predeterminada, pero no pueden usar las API Win16 o Win32 que necesitan los programas gráficos en Windows. Hay disponibles programas de terminación y permanencia (TSR) para admitir LFN en DOS o Windows NT 4.

Si bien DJGPP se ejecuta en modo protegido de 32 bits, su código auxiliar y su biblioteca dependen en gran medida de muchas llamadas de DOS y BIOS de 16 bits. Debido a que las versiones x86-64 de Windows no son compatibles con programas de 16 bits, no hay NTVDM y no se pueden ejecutar aplicaciones DJGPP. En sistemas x86-64, estas aplicaciones funcionan sólo mediante emulación (por ejemplo, DOSBox), virtualización x86 (por ejemplo, VirtualBox) o similar (por ejemplo, DOSEMU de Linux). Este problema surge porque en modo largo los procesadores x86-64 no admiten el modo virtual 8086 utilizado para ejecutar código de 16 bits en procesadores IA-32. Las CPU x86 más nuevas con VT-x admiten el modo real paginado y la ejecución en modo invitado sin restricciones.

Contenido relacionado

Cifrado basado en certificados

cifrado basado en certificados es un sistema en el que una autoridad certificadora utiliza criptografía basada en ID para producir un certificado. Este...

Sistema de instalación programable de Nullsoft

Nullsoft Scriptable Install System es una herramienta de creación de instaladores basada en scripts para Microsoft Windows respaldada por Nullsoft, los...

Gunpei Yokoi

Gunpei Yokoi a veces transliterado Gumpei Yokoi, fue un diseñador de videojuegos japonés. Como empleado de Nintendo desde hace mucho tiempo, fue mejor...
Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save