OS/2 Versions And History

From DisNCord Community Wiki
Jump to navigation Jump to search

This is a list, chronologically sorted, of OS/2 versions, related products, and historic dates.

IBM PC DOS 3.1 (1984)

Multitasking DOS 4

DOS 4.0 running several processes.

For more detailed information about this version of DOS, see Multitasking DOS 4.

Officially called just MS-DOS 4.00, Multitasking DOS 4 was the intended successor of DOS 2.x and later 3.x, initially developed between January 1983[1] and November 1985. It has many features later appearing in both OS/2 and Windows, including:

  • the New Executable format
  • an OS/2-style per-task data area (PTDA) replacing the MS-DOS program segment prefix (PSP)
  • system calls using dynamically linked functions in a built-in module named DOSCALLS
  • the concept of processes along with related system calls
  • the use of a higher-level language (C) for writing parts of the operating system.

However, unlike any version of OS/2 released to the public (TODO: check for 1986 ADOS 5.0), both earlier MS-DOS COM and MZ executables and MS-DOS interrupts are supported on Multitasking DOS 4, and there are even improvements to these APIs (some of which break compatibility with older DOS versions). New apps use both the legacy (int 21h) and new dynamically linked APIs, perhaps suggesting the old API was deprecated or in the process of being replaced.

It was originally called DOS 3.0, which is referenced by older binaries checking for DOS 3.0 to 4.0; later the release number was pushed to 4.0 with the release of 3.0.

This version of DOS supports pre-emptive multitasking, but its usability is limited by the 640kB memory limit, with no swapping because of lack of necessary hardware support. For this reason, it was only released to certain OEMs, opting to wait with the public release for its protected mode successor[2].

New APIs

DOSCALLS functions:

1	ALLOCSEG
2	REALLOCSEG
3	FREESEG
4	LOCKSEG
5	UNLOCKSEG
6	GETSEGSIZE
7	GETDSHANDLE
8	CRITENTER
9	CRITLEAVE
10	FCRITENTER
11	FCRITLEAVE
12	PBLOCK
13	PRUN
14	SUBSCREEN
15	GETPIDS
16	DOSDISCARDCODE
17	DOSGETHANDLE
18	DOSHANDLEJUMP

TODO: Extensions of INT 21h

OS/2 Pre-Betas

These need to be sorted by date

IBM OS/2 1.0

MS OS/2 1.0

IBM OS/2 1.1

MSOS/2 1.2

References