Date: Mon, 1 Jun 1998 20:07:07 +0300 (IDT) From: Eli Zaretskii To: Michal Rudolf cc: djgpp AT delorie DOT com Subject: Re: What is in executableS? In-Reply-To: <356ff9d8.2366223@news.tpsa.pl> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Precedence: bulk On Sat, 30 May 1998, Michal Rudolf wrote: > I wonder what such texts as: > > EXE|COM|BAT|BTM|DLL|VXD||A|A01|A02|A03|A04|A05|ADL|ARC|ARJ|ASC|ASM|AUX|AWK|BAS|BIB > BGI|BMP|C|CC|CFG|CGZ|CH3|CHR|CI|CLP|CMF|CPI|CPP|CXX|DAT|DBF|DIZ|DOC|DVI|E|EL|ELC|F77 > [cut] > > are doing in DJGPP-generated executables? This gets linked into any program which calls `stat' or `fstat'. They both report the execute bit, and that generally requires to read the first two bytes of the file, to look for the magical "MZ" or "#!" signatures. The above list of known extensions allows to bypass the expensive reads in many popular cases, and speeds up programs which call these two functions. > It seems that there are kilobytes of uninitialized data in every > *.exe created by DJGPP. This is *initialized* data, so I don't follow your last assertion.