DJGPP - DJGPP
![]() | tento článek příliš spoléhá na Reference na primární zdroje.Listopad 2015) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
![]() | |
![]() Prostředí DJGPP s využitím GCC | |
Vývojáři | DJ Delorie |
---|---|
Stabilní uvolnění | 2.0.5 / 3. listopadu 2015[1] |
Úložiště | ![]() |
Operační systém | DOS a 32 bitů Okna |
Typ | Překladač |
Licence | GNU GPL |
webová stránka | www |
DJ's GNU Programming Platform (DJGPP)[2] je sada pro vývoj softwaru pro Intel 80386 - úroveň a vyšší, IBM Kompatibilní s PC který podporuje DOS operační systémy. Vede ho DJ Delorie, který zahájil projekt v roce 1989. Je to přístav z Sbírka překladačů GNU (GCC) a většinou GNU nástroje jako Bash, nalézt, dehet, je, G.AWK, sed, a ld na Rozhraní chráněného režimu DOS (DPMI). Mezi podporované jazyky patří C, C ++, Cíl-C / C ++, Ada, Fortran, a Pascal. DJGPP byl v roce 2004 popsán jako produkt „stárnutí“.[3]
Přehled
Kompilátor generuje 32bitový kód, který běží nativně v 32bitovém formátu chráněný režim při přepnutí zpět na 16bitové hovory DOS pro základní podporu OS. Na rozdíl od Open Překladač Watcom C / C ++, nejedná se o nulový plochý model kvůli upřednostnění ochrany ukazatele NULL pro lepší stabilitu. V současné době je založen na variantě COFF formát. Může používat až 4 GB RAM v čistém systému DOS, pokud používá vhodný DPMI hostitel (např. CWSDPMI r7 nebo HDPMI32).
Od srpna 2020[Aktualizace], hlavní součásti DJGPP 2 zahrnují:
- Sbírka překladačů GNU 9.3.0 (10.2.0 je také k dispozici)
- Autokonference 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
Kompatibilita
DJGPP představuje programátor rozhraní, které je kompatibilní s ANSI C. a C99 standardy, DOS API a starší POSIX -jako prostředí. Kompilované binární soubory jsou dlouhý název souboru (LFN) vědomi a ve většině 32bitových Windows ve výchozím nastavení dokáže zpracovat takové názvy, ale nemohou používat Win16 nebo Win32 API, která grafické programy ve Windows potřebují.[3] Ukončit a zůstat rezidentem (TSR) programy na podporu LFN v prostém režimu DOS nebo Windows NT 4 jsou dostupné.
Zatímco DJGPP běží ve 32bitové verzi chráněný režim, jeho útržek a knihovna se silně spoléhají na mnoho 16bitových volání systému DOS a BIOS. Protože x86-64 verze Okna chybí podpora pro 16bitové programy,[4][5] tady není žádný NTVDM a aplikace DJGPP nelze spustit. V systémech x86-64 tyto aplikace fungují pouze prostřednictvím emulace (např. DOSBox ), x86 virtualizace (např. VirtualBox ) nebo podobné (např. Linux DOSEMU ). Tento problém nastává, protože v dlouhý režim procesory x86-64 nepodporují virtuální režim 8086 slouží ke spouštění 16bitového kódu v procesorech IA-32. Novější procesory x86 s VT-x podporují stránkovaný reálný režim a neomezené provádění režimu hosta.
Viz také
- FreeDOS
- Cygwin
- EMX (programovací prostředí)
- GnuWin32
- MinGW
- Otevřeno Překladač Watcom C / C ++
- Allegro
- Subsystém Windows pro Linux
Reference
- ^ Oznámení: Vydáno DJGPP V2.05, comp.os.msdos.djgpp, 3. listopadu 2015
- ^ Eli Zaretskii (červenec 1999). „Projekt DJGPP“. Citováno 20. července 2009.
- ^ A b Wall, Kurt; Von Hagen, William (2004). Definitivní průvodce GCC. Apress. 47–48.
Dalším populárním vývojovým systémem založeným na GCC je DJGPP, D.J. [sic] zdarma 32bitové vývojové prostředí pro systémy DOS.
- ^ „Průvodce: Co je DJGPP?“. Citováno 22. listopadu 2015.
Cílovou hardwarovou platformou pro programy DJGPP je platforma PC ... se systémem DOS ... nebo operační systém kompatibilní s DOS DJGPP programy spouštěné pod okny „dos prompt“ systému Windows.
- ^ Microsoft (říjen 2007). "Seznam omezení v 64bitových Windows". Citováno 18. května 2010.
16bitové nástroje MS-DOS a Microsoft Windows 3.x se nespustí. Pokud se pokusíte spustit takový program, zobrazí se chybová zpráva „Program.exe není platná aplikace Win32“.