delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/10/12/19:17:04

From: leathm AT solwarra DOT gbrmpa DOT gov DOT au (Leath Muller)
Message-Id: <199710122313.JAA25802@solwarra.gbrmpa.gov.au>
Subject: Re: DJGPP+Allegro: Porting from DOS to Linux. Easy or Hard!?!
To: firewind AT metroid DOT dyn DOT ml DOT org (firewind)
Date: Mon, 13 Oct 1997 09:13:20 +1000 (EST)
Cc: djgpp AT delorie DOT com
In-Reply-To: <61eq6p$9fe@dfw-ixnews4.ix.netcom.com> from "firewind" at Oct 8, 97 02:12:41 am

> > The DPMI stuff is not asociated with DJGPP, it is associated with all 32
> > bit protected mode compilers. DPMI is "native" under LINUX, and you
> > won't have those problems anyways, since you only use C functions.

> No, DPMI is associated with all -DOS- 32 bit protected mode compilers. DPMI
> stands for DOS Protected Mode Interface, after all. -Protected mode- is
> associated with all 32-bit PM compilers, but how this is implimented and
> used can and does vary. Under Linux everything is running 32-bits already,
> the kernel, the compiler, the libraries, etc, etc, so no DPMI-ish thing is
> required.

Basically correct. Here is how you should look at it:

The CPU itself can run in either Protected Mode or Real Mode.

DOS runs in Real Mode, so if you have a program which wants to run in
Protected Mode you need to shift the CPU into Protected Mode (from Real Mode).
This is what a DPMI does.

Linux runs in Protected Mode. It never loads DOS, so the loader for Linux
automatically shifts the CPU into Protected Mode first and then runs the
kernel etc in Protected Mode. As the CPU is always in Protected Mode, there
is no need have an interface to it - it's already there.

Leathal.

- Raw text -


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