www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/03/14/18:28:10

Date: Tue, 14 Mar 1995 16:23:40 -0500 (CDT)
From: Aaron Ucko <UCKO AT VAX1 DOT ROCKHURST DOT EDU>
Subject: Re: Compressed executables
To: jensen AT nora DOT gih DOT no
Cc: djgpp AT sun DOT soe DOT clarkson DOT edu
Organization: Rockhurst College; Kansas City, MO

>A thought just struck me while I was 'liting' some exe files on my drive 
>the other day.  Has anyone ever made a pklite/lzexe-like extension to the 
>go32 stub?  If not, wouldn't this be trivial to implement in the existing 
>code?  An implementations could use either one of the existsting 'invisible' 
>zip libraries or execute gunzip to uncompress the executable.  Programs 
>compiled with DJGPP are often rather big (and the problem with large 
>static arrays would be (almost) gone).  Anyway, just a thought..

Interesting idea, but I'm fairly sure DJGPP currently does some sort of
demand loading when it uses its own extender (as opposed to DPMI);
compression would tend to break this technique, unless executables were
uncompressed to a temp. directory first, which would increase load time.
A more sophisticated tcx-like solution might almost be feasible, but the
appropriate TSR would probably be a bit tricky to write.

>While I'm on it, a slightly more complex issue..  We already have to use 
>drivers to access graphics (dunno if the forthcoming grx20 uses them though).  
>Would it be possible to use the driver concept for disk io and things like
>soundcards etc.?  It would be great to have full 32-bit io-access (linux 
>has it, and its code should be freely available).  Of course, if no driver 
>is available, the standard real-mode interrupt calls should be used.  Then 
>again, I have no idea how hard this would be to implement (and if anyone 
>would bother to do it).  After all, DJGPP is just a compiler (a good one
>at that I might add), not an OS.

Implementation would also be a bit of a problem here; voxware is probably
sufficiently U**x-based to make porting even to DJGPP difficult, and I/O
is currently via means of reads, writes, and IOCTLs to character devices;
changing this to another means might not be easy.

--- Aaron Ucko (ucko AT vax1 DOT rockhurst DOT edu; finger for PGP public key) | httyp!
Geek code 2.1 [for explanation, finger hayden@ | `God's Laws' (Rudy Rucker,  
vax1.mankato.msus.edu]: GCS/M/S d(-) H s g+ p? \ _Master of Space and Time_):
!au a17 w+ v+(++) C++(+++)>++++ UL++(S+)>++++	\ 1) Be clean. 2) Follow Gary.
P+(++) L++ 3(-) E- N+(++) K- W--(---) M-@ V-(--) \ 3) Teach God's Laws.
po-(--) Y+ t(+) !5 j(++) R(-) G' tv--(-) b+++	  +---------------------------
!D(--) B--(---) e>++++(*) u++(@) h!() f(+) r-(--)>+++ n+(-) y?

- Raw text -


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