New Executable

{{Short description|File format in early Windows and OS/2}}

{{Use dmy dates|date=May 2019|cs1-dates=y}}

{{Use list-defined references|date=September 2023}}

{{Infobox file format

| name = New Executable

| logo =

| icon =

| iconcaption =

| screenshot =

| caption =

| extension = .exe, .dll, .fon, .drv

| mime =

| type code =

| uniform type =

| conforms to =

| magic =

| owner =

| released =

| latest release version =

| latest release date =

| genre = Executable, dynamic-link library

| container for =

| contained by =

| extended from = DOS MZ executable

| extended to = Portable Executable

| standard =

| free =

| url =

}}

The New Executable (NE or NewEXE) is a 16-bit executable file format, a successor to the DOS MZ executable format. It was used in Windows 1.0–3.x, Windows 9x, multitasking MS-DOS 4.0, OS/2 1.x, and the OS/2 subset of Windows NT up to version 5.0 (Windows 2000). An NE is also called a segmented executable. It utilizes the 286 protected mode or unreal mode, and it can be 16-bit and 32-bit hybrid.https://wiki.osdev.org/NE

History

The first product to be released using the New Executable format was Windows 1.0 in 1985, followed by the 1986 multitasking MS-DOS 4.0, which was a separate branch of MS-DOS development, released between mainstream MS-DOS versions 3.2 and 3.3, and sometimes referred to as "European MS-DOS 4.0".

The Portable Executable (PE) format replaced NE format in 32-bit and 64-bit versions of Windows, while Linear Executables (LX) replaced NE for 32-bit programs in OS/2. VxD in Windows 9x also use LE format.

Compatibility

While designed for 16-bit OSes, NE executables can be run on 32-bit Windows. Beginning with Windows Vista, icon resources inside New Executables are not extracted and shown even by the 32-bit shell. 64-bit versions of Windows completely lack native support for running NE executables, because 64-bit Windows cannot run 16-bit programs on the processor without the help of an emulator.

Due to the rare and fairly complex nature of these files, only a few .EXE packers support it: WinLite, PackWin, PKLite 2.01, and SLR Optloader or NeLite for OS/2. The NE format is also still used as (non-executable) container for .fon Microsoft Windows bitmapped fonts.

= DOS stub =

New (NE), linear (LX), and portable (PE) executables retain the DOS MZ format file header for backward compatibility with DOS. When run under DOS, a so-called DOS stub is executed which usually prints "This program cannot be run in DOS mode" and exits. This constitutes a minimal form of a so-called fat binary. Windows 1.0 executables, however, have their file header formatted in such a way that DOS refuses to run them with the "Program too big to fit in memory" error message; see Windows 1.0 Features.

See also

References

{{Reflist|refs=

{{cite web |author-first=Vernon C. |author-last=Brooks |title=Information about the little known multitasking MS-DOS 4.0 |work=PC DOS Retro |url=https://pcdosretro.github.io/multitaskingmsdos4.htm |access-date=2014-02-13 |url-status=live |archive-url=https://web.archive.org/web/20200221141406/https://sites.google.com/site/pcdosretro/multitaskingdos4 |archive-date=2020-02-21}}

{{cite web |id=https://support.microsoft.com/en-us/kb/65260 |title=Executable-File Header Format |publisher=Microsoft |url=http://benoit.papillault.free.fr/c/disc2/exefmt.txt |access-date=2014-02-13 |url-status=live |archive-url=https://web.archive.org/web/20230906155222/http://benoit.papillault.free.fr/c/disc2/exefmt.txt |archive-date=2023-09-06}}

[https://technet.microsoft.com/en-us/magazine/2008.05.windowsconfidential.aspx 16-Bit Icons Are So Passé: Windows Confidential - TechNet Magazine]

}}

{{Executables}}

{{OS/2}}

Category:Executable file formats

Category:Windows administration

Category:DOS technology

Category:OS/2 technology