πŸ“œ ⬆️ ⬇️

The history of the rise and fall of OS / 2 - one of the most interesting operating systems

Now it may seem strange to someone, but Windows systems did not always exist. Not so long ago, the dominance of the Microsoft product was not so obvious, and there was one very promising IBM product called OS / 2 on the operating system market.


Brief information.
OS / 2 is an IBM operating system. Especially popular as a home OS never used, staying in the shadow of Windows. OS / 2 is an independent line of development of operating systems, differing from Windows NT by significantly less demanding of computer resources, and from Linux / Unix - a fundamental difference in the approach to development and greater similarity of the graphical user interface with Windows.

Story.
1981. Microsoft buys 86-DOS from Seattle Computer Products. Satisfying IBM requests to the PC operating system led to some changes, after which it was released under the trademark MS-DOS.
')
1984. The Intel 80286 processor appears. IBM decides that the DOS operating system is outdated and begins to develop OS / 2 with Microsoft.

December 1987. OS / 2 1.0 appeared (codename CP / DOS). This version did not have a graphical shell (it worked only in text mode) and had sufficient improvements with respect to DOS, for example, there was expanded support for RAM. Only one program could display information on the screen, although other programs could run in the background.

November 1988. OS / 2 1.0 Extended Edition and OS / 2 1.1 Standard Edition. OS / 2 version 1.1 SE (codenamed Trimaran) has a Presentation Manager GUI. Memory requirements - at least 3, and better than 6 megabytes. A version called OS / 2 1.10 Extended Edition (OS / 2 1.10 EE), which appeared later and costing $ 795, also included Database Manager and Communications Manager.

October 1989. OS / 2 1.20 SE and EE (codename Sloop). For the first time, an improved HPFS file system is proposed. Dual Boot Dual Boot appeared, and in the extended version 1.2, the powerful REXX language. This year is a turning point in the history of OS / 2 - the alliance is beginning to fall apart (mainly due to the undercover games of Microsoft managers). Microsoft, concerned about conquering the operating system market, is taking on the development of the next, fully 32-bit OS / 2 3.0. IBM concentrates on developing OS / 2 2.0. This, in fact, β€œdivorce” - developed by Microsoft OS / 2 3.0, does not even retain its name and is demonstrated at ComDex'91 under the name Windows NT - the first Windows with preemptive multitasking.

December 1990. OS / 2 1.3 (codename Cutter) is a version running on an 80286 processor and the last one, coming out in two versions of the standard and extended editions (REXX language is already present in both editions). New features include support for scalable Adobe Type Manager fonts. This version is also among the latest sold by Microsoft. All new changes have been made by the overwhelming majority of IBM programmers, the system has undergone significant processing and its performance has significantly improved.

April 1992. OS / 2 2.0 (codename Cruiser). The first 32-bit OS / 2 version. Minimum requirements - 80386SX processor, 4 MB of RAM. Support for SAA (System Application Architecture) - unified application architecture. OS / 2 2.0 is the first version officially supported not only on IBM computers, but also on computers of other companies. It has undergone major reconstructions after breaking partnerships with Microsoft for development. A convenient object-oriented interface WorkPlaceShell (β€œdesktop”, workstation) based on the System Object Model (SOM) architecture appeared, a flexible Boot Manager boot tool appeared, support for DOS and Windows applications was seriously improved (Windows applications are started using Win-OS / 2) as well as a 32-bit software interface. There was also the possibility of using more than 16MB of RAM. Separately there are updates for multimedia.

May 1993. OS / 2 2.1 (codename Borg). Added support for Windows 3.1 applications (previously supported by Windows 3.0). The package includes multimedia tools and a significantly updated list of supported hardware devices. Memory requirements - at least 8 MB.

November 1993. OS / 2 for Windows (codename Ferengi). There is no Win-OS / 2 - instead of it, Windows 3.1, previously installed by the user, is used, the drivers are updated.

February 1994. OS / 2 2.11. Mostly fixed various bugs. There is also a separate fix pack, FixPack XR 06200 for OS / 2 2.1.

July 1994. OS / 2 2.11 SMP. This version adds support for multiprocessor (up to 16 processors) systems.

October 1994. OS / 2 Warp 3.0 (codename Warp). The changes affected only improvements in system performance, lowering the requirements for RAM to 4 MB. The range of supported hardware devices has been expanded. A new element appeared in the GUI - LaunchPad (Toolbar, β€œlaunch pad”) - an effective and flexible tool that fits perfectly into the object-oriented interface model. OS / 2 Warp 3.0 comes with a free BonusPak package, including:
β€’ hardware audit tools,
β€’ advanced multimedia viewing tools, moving video processing, full-featured faxing (if you have a fax modem),
β€’ a fairly powerful package of office applications (including word processor, spreadsheets, database, graphing) and personal organizer,
β€’ a means of conducting conferences in networks,
β€’ access to CompuServe and Internet networks.

May 1995. OS / 2 Warp Connect. The basic system includes full support for network functionality, support for peer-to-peer networks.

September 1996. OS / 2 Warp 4.0 (codename Merlin). This version includes full voice control, voice input tools, built-in Java, OpenDoc mechanisms, global Internet tools and other advanced technologies developed by IBM. The system design has been greatly redesigned and the network subsystem has been developed more successfully (relative to previous versions).

1999 year. OS / 2 WarpServer for e-Business (codename Aurora) - abbreviated as OS / 2 WSeB. Externally, OS / 2 remained virtually unchanged, but internal processing was significant. JFS file system, taken from AIX (IBM version of UNIX), has been supported, virtual memory restrictions have been removed, a powerful volume management program called LVM (Logic Volume Manager) has appeared.

In the spring of 2000, the American company Serenity Systems announced that it had reached a partnership agreement with IBM to release a new client version of OS / 2. True, this client version completely changes its name - the new client is called eComStation (abbreviated eCS). Officially, eCS 1.0 sales began in July 2001.
In fact, this is a new version of OS / 2, in which the interface has been changed by incorporating Styler / 2 into the base system as well as the installation process. Added a new distributed installation tool called WiseMachine.

OS / 2 1.0 - Start.
The evolution of OS / 2 began a long time ago. The most important point in the history of OS / 2 is the appearance of the IBM Personal Computer or just the IBM PC (the name perfectly demonstrates the complete lack of IBM's ingenuity in naming products). The creators of the IBM PC unfortunately made a huge mistake by underestimating the popularity of their product and, accordingly, its influence on the development of the industry. The fact that the appearance of the new platform was perceived as enthusiastic is evidenced by at least the fact that, with initial plans to sell 250 thousand PCs in five years, IBM sold more systems before the official release of the product to the market.
As for software, IBM decided to hire a third party to write the operating system for its PC. Unfortunately, the description of a half-detective story about how Microsoft was chosen and the DOS operating system are beyond the scope of OS / 2. MS (PC) -DOS, like the PC itself, was a very open system. The DOS and BIOS interfaces were well documented and third-party vendors could easily use and extend them β€” which is why DOS is still used in some tasks today.

However, DOS and BIOS had one very big drawback. They were by no means a β€œstar team” and, even worse, they did not use the PC hardware at full capacity. This meant that many programs to fully use the hardware capabilities accessed devices directly, bypassing DOS.

Dawn IBM PC.
But despite all its flaws in 1980, the IBM PC became a popular tool. Hardware and software markets grew at an unprecedented rate. It would seem everything was fine - but PC users were unhappy. The main reasons for this were the following:

Different programs either did not interact with each other, or the interaction was at a primitive level.

The user could not do several tasks at the same time. As a kind of multitasking resident programs were invented.

The logical outcome of all the chaos of problems was that the DOS environment was unstable. There was no protection of either memory or other resources, and any process could do anything with any piece of memory or manipulate equipment β€” an elementary recipe for disaster.

DOS architecture had serious limitations when working with memory. β€œ640Kb will be enough for everyone” - an expression by Bill Gates in 1981. Perhaps it was true in 1981, but not in 1984. Naturally, as soon as the lack of memory became apparent, various ways were found to circumvent the β€œ640 problem,” but they could not be considered a solution.

Some of the existing problems could be solved programmatically using a better-designed operating system. But others demanded hardware support in order for the solution to be effective or in principle feasible. And this support was implemented in 1984 under the name IBM AT (Advanced Technology). AT has really made a lot of progress compared to its predecessors, the PC and XT. And besides the huge mass of various improvements, the most noticeable (and important) was the use of the new central processor - Intel 80286. Although the 80286 was 16-bit as its progenitors, however, it had one very important feature: protected mode. 8086 had only one mode which would later be called real mode (apparently due to the fact that, unlike the protected mode, all memory addresses corresponded to physical addresses). After initialization, the 286 worked in real mode almost completely compatible with the 8086, differing only in greater speed and an extended set of instructions. In this mode, the 286 could, like the 8086, address (access to) 1MB of memory (in fact, 1MB + 64Kb - but in this case it is irrelevant). In protected mode, the 286th could address 16MB of memory. It was a lot considering that PCs with 16MB of memory became the de facto standard only more than 10 years later. But the big plus was that the protected mode was really protected. This meant that memory access was not β€œfree for all” - instead, there were 4 levels (or rings) of protection and a less privileged process could not damage the memory blocks belonging to the more privileged components. Thus, user programs could not intentionally or accidentally overwrite, for example, the code of the operating system. Additionally, applications were protected from each other. Similarly, some processor instructions were now limited and could only be executed by code with sufficient rights β€” such as the operating system kernel or device driver. When attempting to break the protection, an exception occurred intercepted by the operating system, which usually stopped the β€œguilty” application. All security checks were performed at the hardware level with minimal overhead for the operating system.

Both IBM and Microsoft were fully aware of the problems caused by working in DOS in real mode and working on solving them. The two most notable products that eventually emerged were IBM TopView and Microsoft Windows. TopView was a text-based multi-tasking shell for DOS and, in essence, the ideological progenitor of Quarterdeck’s later much more successful DesqView shell. Microsoft Windows was a graphical multitasking environment running on top of DOS. The version 1.0, first announced in 1983, appeared in 1985. It was more than bad and deservedly did not gain any wide popularity. This was an attempt by Microsoft to make PCs more similar to Apple’s Macintosh computers running MacOS with a highly developed graphical user interface. The Windows 2.0 version was released in 1987 and was slightly better (and looked very much like OS / 2 1.1).

Growing up.
At the same time, Microsoft was working on a completely new operating system designed to replace DOS. In January 1983, the development of a new multi-tasking MS-DOS system began. The project name was changed countless times. In August 1985, IBM joins the project and firms sign a joint development agreement giving both companies the right to sell the final product. A little while later, the project changes to CP / DOS - from the Control Program / DOS. But even this was not the end of the process of choosing the name of a still unborn child. Shortly before the release, the product is renamed to OS / 2 - apparently to match the new line of IBM personal computers called PS / 2 (Personal System / 2).

Interestingly, OS / 2 1.0 did not implement many planned features and the most notable was the lack of a graphical user interface Presentation Manager (codename Winthorn).

Still, OS / 2 1.0 was a radical breakthrough in the direction of DOS and had many features and capabilities that DOS could never have and which were implemented in other operating systems much later.

β€’ Preemptive multitasking (preemptive multitasking).
β€’ multithreading (multithreading).
β€’ Inter Process Communication (IPC) tools such as shared memory, pipes, semaphores, and queues.
β€’ Virtual memory support (virtual memory, swapping) - theoretically up to 1GB of virtual memory.
β€’ Fully protected mode of operation.
β€’ Dynamic link libraries (dynamic linking, DLLs).
β€’ Support up to 16MB of RAM.

One of the most annoying hindrances to developers was that they were faced with the need to support DOS. None of the problems was insurmountable, but their combination was murderous. IBM and Microsoft paid for ill-considered decisions taken in the development of DOS in 1981. In addition, the huge popularity of DOS had a boomerang effect - developers were forced to support DOS applications in OS / 2 in order to have at least some chances of conquering the market.

In the end, the developers of OS / 2 found a solution how to execute DOS in protected mode, although in the process of finding a solution they encountered a huge number of problems. The final output was as follows: there was only one full-screen DOS session that could not run in the background (on the other hand, OS / 2 applications worked in the background while the DOS session was active). The implementation of this approach required frequent switching between protected and real modes (with an active DOS task). This in turn entailed a tremendous amount of effort in maintaining performance at an acceptable level. One example of additional tweaks was the OS / 2 device driver itself β€” they had to support operation in both secure and real mode to reduce the number of switches.

The DOS code used in OS / 2 was based on the MS-DOS / PC-DOS code, but with numerous modifications. So, for example, the code that provided work with the file system worked only in protected mode. In other words, when accessing a file, the entire operating system was switched to protected mode. However, later this approach turned out to be a big plus - when the installable file systems were released, it turned out that the OS / 2 DOS session has no problems accessing (for example) the HPFS file system.

All the same secure code was written β€œfrom scratch” with all the nice features that were described earlier. The kernel and system libraries were mostly written in assembler for the following two reasons:

β€’ Performance β€” OS / 2 was supposed to run on an IBM AT with a 6MHz processor.
β€’ Memory limitations β€” OS / 2 should work with only 1MB of RAM.

In the new operating system, there was especially nothing to look at - the interface was text-only (the promised Presentation Manager was still under development) and the look was very similar to DOS. But after pressing Ctrl + ESC a Program Selector appeared - a utility that allowed to launch new tasks and switch between existing ones. Theoretically, there were 16 sessions, but since OS / 2 itself occupied some of them, the user had access to 12 sessions.

OS / 2 1.0 user workspace
OS / 2 1.0 user workspace

From the user's point of view, OS / 2 1.0 had several significant drawbacks. Some were fixed in later versions of the 1.x series, others took much longer to fix:

β€’ Maximum partition size 32Mb. Although it is possible in 1987 it was not critical. OS/2 1.1 ( FAT), OS/2 1.2 HPFS.
β€’ (dual boot) (Boot Manager). Dual Boot 1.1, Boot Manager 2.0
β€’ CONFIG.SYS. 1.x. Boot Manager- (, ), ( ) . OS/2 Warp.
β€’ (DLL). DLL ( Presentation Manager) . OS/2 2.x API.

OS/2 . :

β€’ OS/2 ( AT 2 ).
β€’ DOS . DOS .
β€’ . , IBM Microsoft - , (SDK – software development kit) ( Microsoft SDK for OS/2 1987 ).
β€’ . , OS/2 IBM. β€” OS/2 IBM .

OS/2 1.0 ( OS/2), . OS/2 ( ) PC. OS/2 1.x OS/2 2.x PC. OS/2 1.x . IBM Microsoft , .

OS/2 1.1 – .
OS/2 1.1. , 2.0, , (GUI – Graphical User Interface) 1.0, . , Windows 1.0 Interface Manager .

Presentation Manager Winthorn IBM Hursley Labs. PM Windows, , :

β€’ . 0,0 Windows ( , PC) PM 0,0 ( , ).
β€’ Windows Device Context. PM DC, Presentation Space, .
β€’ OS/2 (Graphics Programming Interface, GPI) β€” . GPI Windows NT ( Windows 95).
β€’ OS/2 β€œ ” (quick and dirty hack) Windows.

GUI , OS/2 1.0. β€œβ€ FAT (BigFAT). 2, .

OS/2 1.1 :

GUI.
GUI.

, OS/2 1.1 GUI – , notepad Windows. E.exe, .

, OS/2 1.1 . . Windows MacOS , OS/2 – , , .

Naturally, the system had inherent flaws. Although most of the standards for graphics output (CGA, EGA, VGA) were supported, the support of others was very weak, if it existed at all. Printer support was purely nominal - several IBM printers and plotters are everything.

Under OS / 2, there were various applications β€” including Microsoft Word, Lotus 1-2-3, and QuattroPro. However, all of them were textual with the exception of Microsoft Excel 2.2.

OS / 2 1.2 - Development.
1989 Microsoft IBM OS/2 1.2 – OS/2 1.2 OS/2 . OS/2 1.2 FAT (Installable File System, IFS) HPFS (High Perfomance File System).

HPFS β€œ ” (Gordon Letwin) β€” OS/2 Microsoft. FAT, :
β€’ β€œ8.3” – 8 3 . 255 – .
β€’ (Extended Attributes, EA). 64 EA – – , , - .
β€’ . FAT 2 . HPFS 64 .
β€’ . FAT , HPFS , .
β€’ . FAT 2 64, ( 50%). HPFS 512 .
β€’ . FAT FAT. HPFS ( ). , . , – .

HPFS β€” β€œβ€ HPFS HPFS386. , Microsoft LAN Manager ( IBM LAN Server) , – ( Access Control List, ACL) . HPFS – OS/2 2.0, Windows NT NTFS. UFS SunOS 4.x. unix Sun, , UFS . , .

OS/2 GUI , Windows 3.0

OS/2 & Win3.0
OS/2 & Win3.0

OS/2 1.2 Windows 3.0 , Windows MS-DOS ( DOS OS/2). Windows ( , Solitaire). OS/2 - . , Windows .

OS/2 1.3 – 16- .
OS/2, Microsoft IBM, OS/2 IBM ( Microsoft Windows ). 1.3 1.2 , .

OS/2 REXX (Mike Cowlishow) IBM UK.

:
β€’ () , ,
β€’ ,
β€’
β€’

And all these tasks have been successfully solved. Thus, the operating system has received a powerful and flexible tool, comparable to the various scripting languages ​​in UNIX-like systems. This undoubtedly was a very big advantage, especially in comparison with a more than modest set of features that were offered when writing batch files in DOS and earlier OS / 2 versions.

OS / 2 2.0 is a 32 bit revolution.
1988 IBM Microsoft OS/2 1.2 IBM . , 1.3 IBM , (Michael S. Kogan) 2.0. 1992 OS/2 2.0 GA (General Availability – ). GA . β€œ ” IBM Microsoft - Microsoft - IBM OS/2 2.0 1991 . 1991 OS/2 2.0 LA (Limited Availability – ). , OS/2 2.0 LA beta , .

OS/2 2.0 . 32- DOS OS/2 1.x – . β€œβ€ 32- – 16- – . , , ( Presentation Manager) OS/2 2.0 16- 32- OS/2 2.1. 16- (Physical Device Driver, PDD) OS/2 1.3. 16- OS/2 1.x. 32- – DOS (Multuply Virtual DOS Machine, MVDM) . C, OS/2 1.x.

Workplace Shell ( WPS ) GUI OS/1.x Windows. - – , , . drag-n-drop – , , . WPS – .

Workplace Shell OS/2 2.0
Workplace Shell OS/2 2.0

OS/2 2.0 β€œ ” (The Integrating Platform). OS/2 2.0 DOS, Windows OS/2 1.x 32- . OS/2 1.x 2.0 DOS . 386 8086 (Virtual 8086 mode). , 386- Intel – OS/2 1.x . , DOS β€œβ€ DOS DOS, DOS 4.0, DOS 5.0, DR-DOS .

Windows DOS. Win-OS/2 Windows 3.0 DOS . Win-OS/2 , PM/WPS . Win-OS/2. , , – OS/2 OS/2. OS/2 OS/2 Windows. β€œβ€ Win-OS/2 PM – OS/2 .
At first, OS / 2 2.0 faced the same problem as OS / 2 1.x before it - the lack of native applications. The system coped well with the launch of DOS, Windows and OS / 2 1.x applications, but at first there was a shortage of native 32 bit programs.

OS / 2 2.1, 2.11, 2.11 SMP - Reliable platform, the era of maturity.
OS/2 2.1 1993 2.0. , β€œβ€ . Win-OS/2 3.0 3.1 Multimedia Presentation Manager/2 (MMPM/2) – , .

1993 OS/2 for Windows Win-OS/2 Windows 3.x. (IBM Microsoft Windows Win-OS/2). . Microsoft PC , DOS/Windows . , OS/2 . OS/2 for Windows IBM OEM Microsoft.

Microsoft OS/2 2.1 2.11 OS/2. IBM OS/2 . Borland, Lotus, Novell WordPerfect. IBM . Microsoft , , Windows, Windows .

OS/2 Warp. .
1994 OS/2 Warp – OS/2. OS/2 2.11 – , . .

GUI      .
GUI .

:
β€’ OS/2 Warp

Source: https://habr.com/ru/post/5397/


All Articles