www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/12/20/00:16:11

Xref: news-dnh.mv.net comp.os.msdos.djgpp:3938
Path: news-dnh.mv.net!mv!barney.gvi.net!news.netrail.net!imci2!newsfeed.internetmci.com!news.sesqui.net!rice!news!sandmann
From: Charles Sandmann <sandmann AT clio DOT rice DOT edu>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Can dll's be done in v2?
Date: Mon, 18 Dec 1995 10:07:13 CST
Organization: Rice University, Houston, Texas
Lines: 22
Message-ID: <30d591b1.sandmann@clio.rice.edu>
References: <4b147q$ir7 AT supreme DOT pcug DOT org DOT au>
Reply-To: sandmann AT clio DOT rice DOT edu
NNTP-Posting-Host: clio.rice.edu
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

> Can dlls be done in v2? 

Some DLL packages are being worked right now, but they aren't Win compatible.
They address the link limitations of DXEs.

> Can a dxe hold multiple functions? 

Yes.  Create a "function address vector" and build that as the structure to
return the address.  Such a structure can contain a mixture of functions
and data structure addresses, so you can build drivers with this.

> What restrictions on what code is in a dxe?

DXE's can't reference items in the main image.  So they can't get access to
global variables needed by certain libc routines (like I/O).  If the DXEGEN
links OK, then it will probably work.  If you reference something which 
accesses the main image, you will probably get link errors.

DXEs were ment to be the smallest, fastest way to load standlone code
like EMU387 or a 32-bit driver API.  The DXE load code is only a few hundred
bytes (and is already imbedded in all images for EMU387) so is a very 
efficient way to dynamically load medium-to-large sized chunks of code.

- Raw text -


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