Is Linux the Future of POSIX?
On December 15, 1998, Stephen Michell, chair of the Canadian Standards Association Committee on Programming Languages (CSA/CPL, equivalent to the US ISO/IEC JTC1/SC22 Technical Advisory Group, or TAG), gave a presentation to the Ottawa Carleton UNIX Users' Group (OCUUG) entitled "Standardization of Programming Languages -- A Challenge for the 1990's."
"The 1980s and the 1990s have seen an explosion of Information Technology tools, development environments and development languages. Machine code, assemblers, imperative programming languages, Fourth Generation languages, Visual development languages, each promise to give us the edge in performance, code quality, development speed, simplicity for users and much more. As each new language or technology comes along, it is often embraced with enthusiasm and intense interest by some segment of the industry. It is only after a number of projects and challenging experiences that practitioners realize that they are locking themselves into vendor-specific solutions that make the task of upgrading, porting, and training new people much more difficult than they had anticipated. Alternatively, they are working in a mature language or technology but need the expressive power and concepts introduced by newer technologies, but preserving their investment in existing systems. These are the challenges of language standardization in the 1990's. New languages and concepts arrive that somehow need a globalization and solidifying process to guarantee portable tools and systems to practitioners. New concepts must be introduced into mature languages so that mature systems can adopt and grow with new technologies. International character sets and location profiles must somehow be integrated. And a world consensus is needed. The presentation examined the challenges faced by language standardization and how the ISO/IEC language standards groups cope to guarantee the most up-to-date and portable languages that can be imagined. -- And we do it by consensus."
Present that evening were a number of members of the Linux community who do not normally attend OCUUG meetings, preferring instead to attend their own Ottawa Carleton Linux User's Group (OCLUG) meetings. However, at the suggestion of a few individuals that OCLUG would be receptive to an invitation to this presentation, one had been extended to them several weeks earlier.
Attendance was good and several Linux users stepped forward afterward to express their interest in becoming involved in standards activities including in the Canadian POSIX Working Group (CPWG, equivalent to the US WG15 TAG). It remains to be seen how many actually follow through; however, the high level of interest was encouraging.
Interestingly, the week previous to this happening, discussions were held at the USENIX LISA conference between member of the standards and Linux communities about bringing more Linux users and developers into the formal standards process at the U.S. national and international levels. The outcome of these discussions was also encouraging. USENIX is considering sponsoring two representatives from the Linux community to participate in the U.S. national standards process.
One possible measure of system maturity is the emergence of viable divergent implementations. UNIX reached this point with the release of 2BSD in 1978 and continues the tradition today despite the POSIX family of standards. Some blame the failure of POSIX to create a "one true UNIX" for the rise of Windows NT as a potential competitor in the high-end workstation and server market. I believe that, seeking to avoid the mistakes of UNIX vendors in the past, the Linux community is beginning to realize the value of standards, and hopefully the value of POSIX. I would only further encourage them to use the influence of their numbers to direct the future course of POSIX and not to create yet another competing alternative in an already fragmented marketplace.
While Linux continues to gain mind share as well as market share, it struggles with how to handle product differentiation at the commercial level and yet try to maintain a single source tree for developers. Support from more traditional UNIX vendors continues to grow with recent announcements from HP, IBM, and Compaq. They join Oracle, Corel, and a multitude of smaller software vendors in providing support for the platform.
Is Linux the future of POSIX? Quite possibly. At the very least the future of POSIX looks a lot brighter if it includes Linux than if it doesn't. Sun, SCO, and you other UNIX vendors, are you listening?