www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/10/25/12:57:02.1

From: chris_mears AT softhome DOT net (Chris Mears)
Newsgroups: comp.os.msdos.djgpp
Subject: Re: What is it ?
Organization: CHOAM
Message-ID: <38154326.530771@news.bigpond.com>
References: <381469db DOT 3205163 AT netnews DOT att DOT net>
X-Newsreader: Forte Agent 1.5/32.452
MIME-Version: 1.0
Lines: 108
Date: Mon, 25 Oct 1999 11:50:57 GMT
NNTP-Posting-Host: 139.134.195.104
X-Trace: newsfeeds.bigpond.com 940852008 139.134.195.104 (Mon, 25 Oct 1999 21:46:48 EST)
NNTP-Posting-Date: Mon, 25 Oct 1999 21:46:48 EST
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

On Mon, 25 Oct 1999 14:35:44 GMT, edwhn AT no_spam DOT worldnet DOT att DOT net
wrote:

>O.K.
>I'm not really up on this.
>Please inform...what is DJGPP  and what does it stand for ?
>
>thanks...

(From the FAQ)

**Q*: What is DJGPP?*

*A*: DJGPP is a compiler and a set of tools that let you produce
32-bit protected-mode programs which run on MS-DOS/MS-Windows
machines.

The originator and principal maintainer of DJGPP is DJ Delorie
<dj AT delorie DOT com>; that's where the "DJ" in "DJGPP" comes from.
However, anybody is welcome and encouraged to contribute.

Programs compiled with DJGPP, and all development tools provided as
part of DJGPP, look on the outside like normal DOS programs, and they
rely on MS-DOS and BIOS for file I/O and other basic functions such as
keyboard input, screen cursor position, etc.  DJGPP programs use
"DPMI" (the DOS Protected Mode Interface) to allow DOS/BIOS calls from
protected mode.  Therefore, any environment that can run DOS programs
and provides DPMI services, will run DJGPP programs as well.
Environments that are known to be compatible with
DJGPP include MS-DOS, DR-DOS, NWDOS, FreeDOS, OpenDOS, Windows 3.X, 9X
and NT, OS/2, and Linux DOSEmu.  When DJGPP programs run on Windows
9X, they support long filenames.

It is important to understand that all these environments will treat
DJGPP programs as DOS programs which call DPMI services.  DJGPP cannot
by itself create Win16 or Win32 applications; however, you can use the
RSXNT package together with DJGPP to achieve this.  See writing
Windows applications with DJGPP in Section 3.6.

Programs compiled with DJGPP can access all the physical memory on
your machine and support virtual memory.  All this memory presents a
flat address space with no segmentation (you can say goodbye to far
and huge pointers and to memory models), and is only limited by the
amount of virtual memory supported by the DPMI server in use.  A
typical DPMI server can provide at least 64MB of virtual memory (if
you have enough free disk space).

DJGPP is free: you don't have to pay anything to download and use it,
even if you write commercial programs.  DJGPP doesn't impose any
restrictions on programs that you write and compile with it: you can
make them commercial, shareware, freeware, or any other kind.  (There
are a few minor exceptions to that rule, see (un)restrictions on
distribution of DJGPP apps in Application distribution.)

The core of DJGPP is the MS-DOS port of the GNU C/C++ compiler, GCC,
and auxiliary utilities, such as assembler, linker, librarian, Make,
and a hypertext docs browser.  The DJGPP C library was written
specifically for DJGPP, mainly by DJ Delorie himself, with help from a
small group of volunteers.

DJGPP presents a set of tools which are remarkably ANSI- and
Posix-compliant(1).  GCC complies to ANSI/ISO C Standard; the DJGPP C
library is ANSI- and Posix-compliant (however, a small number of Posix
features, like the `fork' system call, are unimplemented); the C++
libraries also comply to the latest standards; and the GNU development
tools used by DJGPP are all Posix-compliant.  As a result, DJGPP tools
provide a complete and coherent Posix layer on top of Microsoft
operating systems, to the degree that even the infamous limitations of
DOS and incompatibilities between DOS/Windows and Unix are almost
completely concealed from users and developers.

Here are some of the tasks that DJGPP is said to be good for:

   - learning C and C++ programming and teaching others to program in
C/C++;

   - using Unix development tools on MS-DOS and MS-Windows;

   - writing games(2) and graphics programs;

   - setting up a common development environment for Unix and
     MS-DOS/MS-Windows;

   - writing portable DOS/Unix programs;

   - porting Unix programs to Microsoft operating systems.

DJGPP is also used as back-end for programming languages other than
C/C++.  ADA, Pascal and Fortran compilers have been ported to MS-DOS
based on DJGPP (GNU Pascal (`gpc') and GNU Fortran (`g77') are
available from the DJGPP archives).

Starting from v2.0, DJGPP programs do not need a separate extender
program, only a DPMI server to run; DJGPP includes a free 32-bit DPMI
server which allows for a 32-bit, 4 GByte flat address space and up to
512 MBytes of virtual memory.

---------- Footnotes ----------

(1) Posix is an international standard for a portable operating
system.  It specifies facilities of a compiler, its libraries, and the
basic set of development tools.  Posix was originally modeled on Unix
systems, but is currently supported by most modern operating systems.

(2) For example, the DOS version of the well-known game `Quake' by id
Software was compiled with DJGPP.


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019