Being a general overview of the structure of OS/2, this book contains no details of the kind needed to do any development work on applications for the new operating system. The author, who was a member of the OS/2 development team, is at pains to explain his philosophy about program design in general and to relate it to the use of the different component parts of OS/2. The book is divided into seven sections. The first, “Why OS/2?” explains the need for a 32-bit operating system to fully use the power of 386- and 486-type processors. It also presents the advantages of the OS/2 flat memory model and discusses applications to multitasking, with its need for crash protection. The developer is encouraged to use the new system by IBM’s commitment to compatibility with future releases.
Section 2 starts with an exhortation to good program design: effectively, that time invested in planning before coding is time well spent. This material is followed by descriptions of the OS/2 kernel architecture, the presentation manager, graphics, and the user interface. These lead to a discussion of the proper way to integrate a new development with the system facilities.
The title of Section 3, “Use Building Blocks or Your App Will Crumble,” makes its content self-evident and will be preaching to the converted for any competent programmer, while Section 4 enters into slightly more detail on the use of internal OS/2 functions. The last three sections discuss methods of improving performance, testing, and installation programs. A bibliography contains nine IBM reports and two books. The index is adequate.
As a statement of program design philosophy, the book is very readable and will be acceptable to nonexpert readers. Experts will find it interesting as (presumably) an indication of IBM programming practice. The book can be read at one sitting and contains far too little meat for actual application.