Concurrent DOS 286, Concurrent DOS 68K and FlexOS were designed by Francis "Frank" R. Holsworth (using
siglum FRH). Like
Portable CP/M,
Concurrent DOS 286,
Concurrent DOS 68K and
Concurrent DOS V60, FlexOS was written in
C for higher portability across hardware platforms, and it featured very low interrupt latency and fast context switching. The original
protected mode FlexOS 286 version 1.3 was designed for host machines equipped with
286 CPUs, and with adaptations for
NEC V60,
NEC V70 and
Motorola 68000 processors planned. FlexOS 286 executables using the system's native
INT DCh (
INT 220)
application program interface had the filename extension
.286. A
CP/M API front-end (FE) was available as well, using the extension
.CMD for executables. (A filename extension of
.68K was reserved for FlexOS 68K, a file extension derived from
Concurrent DOS 68K as of 1986.) In May 1987, FlexOS version 1.31 was released for 80286 machines. The developer version required an
IBM PC/AT-compatible machine with 640 KB of
conventional and 512 KB of
extended memory, and either a (monochrome) CGA or an EGA graphics adapter. FlexOS supported a concept of
dynamically loadable and unloadable subdrivers, and it came with driver prototypes for floppies, hard disks, printers, serial interfaces, RAM disks, mice and console drivers. During boot, the FLEX286.SYS kernel would load the resource managers and device drivers specified in the CONFIG.SYS
binary file (not to be mixed up with the similarly named
CONFIG.SYS configuration file under
DOS), and its shell (COMMAND.286) would execute a CONFIG.BAT startup batch job instead of the common
AUTOEXEC.BAT. FlexOS's optional DOS emulator provided limited
PC DOS 2.1 compatibility for DOS .COM and .EXE programs. Certain restrictions applied in "
8086 emulation mode" since these programs were executed in the processor's protected mode. Due to bugs in earlier steppings of the Intel 80286, the FlexOS 286 DOS front-end required at least the 80286 E2 stepping to function properly (see
LOADALL). These problems had already caused delays in the delivery of Concurrent DOS 286 earlier. The system optionally supported a multitasking
GEM VDI for graphical applications. FlexOS 1.31 could be linked with none, either or both of these two modules. FlexOS 1.31 also supported
FlexNet. By June 1987 there were also versions 1.0 of FlexOS 386 (for hosts) and FlexOS 186 (for remote cell controllers). FlexOS 386 provided a windowing feature, and offered
PC DOS 3.2 and GEM compatibility. FlexOS 286 and FlexOS 386 versions 2.0 were registered on 3 July 1989. Among the major FlexOS customers in 1990/1991 were
FANUC,
IBM,
ICL,
Nixdorf,
Siemens,
TEC,
Thorn EMI Software and
Micrologic.
Novell bought Digital Research for million in July 1991.
X/GEM for FlexOS release 1.0 (a.k.a. X/GEM FlexOS 286 and 386) and FlexNet were registered on 21 December 1992. FlexOS was used as the primary test platform for the new
Novell Embedded Systems Technology (NEST). When Novell decided to abandon further development of the various Digital Research operating systems such as
Multiuser DOS (a successor to Concurrent DOS) and
Novell DOS (a successor to
DR DOS), they sold FlexOS off to the
Santa Clara, California-based
Integrated Systems Inc. (ISI) for million in July 1994. The deal comprised a direct payment of half this sum as well as shares representing 2% of the company. The company already had
pSOS+, another modular real-time multitasking operating system for embedded systems, but they continued to maintain FlexOS as well. FlexOS version 2.33 was current as of May 1998 and with FlexOS 2.34 to be released soon after with added support for faster CPUs, 64 MB of memory, EIDE and ATAPI CDROM drives. Integrated Systems was bought by their competitor
Wind River Systems in February 2000. ==Commands==