Linear Executable

Linear Executable is an executable file format in the EXE family. It was used by 32-bit OS/2, by some DOS extenders, and by Microsoft Windows VxD files. It is an extension of MS-DOS EXE, and a successor to NE (New Executable).

There are two main varieties of it: LX (32-bit), and LE (mixed 16/32-bit).

Identification
A Linear Executable file begins with the ASCII signature " ". At offset 60 is a 4-byte integer pointing to an "extended" header that begins with " " or " ". For more information, see MS-DOS EXE.

Specifications

 * LX Format Description
 * Another copy of the document
 * (.vxd) LINEAR-EXECUTABLE File Header Layout (LE)

Sample files

 * http://cd.textfiles.com/hobbesos29411/BIN/ → *.EXE (LX, OS/2 console)
 * http://cd.textfiles.com/hobbesos2/2_X/GAMES/ → *.ZIP → *.EXE (LX, OS/2 GUI)
 * http://cd.textfiles.com/silvercollection/disc4/DRIVERS/ - The *.386 files inside the archive files (for example, 19GXE.ARJ → VDDS3.386) use MS Windows LE / VxD format.
 * DOOM.EXE - Example of the format used by some DOS extenders. Technically this is an MS-DOS EXE file, with an embedded LE file.

Links

 * DOS/4G and DOS/4GW FAQ: Executable File Format(s)
 * EXE Explorer utility
 * Open Watcom structs with LX/LE differences