From Unix to Linux: Key Trends in the Evolution of Operating Systems (Part 4)
We saw earlier in this series that BSD appealed to many users because they didn't have to pay the stiff fees that AT&T charged for Unix. Richard Stallman, hacker extraordinaire, saw an even greater opportunity in the mid-1980s. With a characteristic flourish, he announced a Unix clone not with a press release, but with a manifesto. In addition to listing his technical roadmap in some detail, this manifesto issues a head-on challenge to the notion of intellectual property (a term Stallman later identified as harmful in itself) and hinted at a new way to release software, which Stallman eventually codified in the historic GNU General Public License, also called "copyleft."
Stallman had been making creative contributions to computing for a long time. At the point when he started his GNU project, the technical achievement for which he was best known was Emacs, a text editor that ran on a huge range of systems and had been ported to Unix. Although Bill Joy's vi editor has always been more popular among Unix and GNU/Linux users, a vociferous defense of Emacs rings out across mailing lists. People on both sides get quite emotional. At a recent conference I attended, the Code of Conduct explicitly prohibited harassment based on race, gender, nationality, sexual preference, disability, or choice of text editor.
But why would Stallman choose Unix as the model for his new operating system? As his manifesto candidly asserts, "Unix is not my ideal system, but it is not too bad." The key lay in the many thousands of users who had pledged allegiance to Unix. Therefore, "a system compatible with Unix would be convenient for many other people to adopt."
As mentioned in the first article of this series, Unix dates back to about 1970. Already, in the succeeding 15 years, computing had changed tremendously. The GNU project had lots of good ideas to take advantage of the new environment.
For instance, many Unix utilities dealt with limited memory by imposing arbitrary limits on all kinds of things, such as the number of tokens that a program could use (limited by the yacc compiler) or the number of arguments allowed on a command line (leading to a special utility called xargs). By imposing limits, Unix developers could just allocate one memory buffer of fixed size and avoid the overhead of expanding the buffer during the program run. The GNU project didn't stand for this laziness. Its coding standards said, "Avoid arbitrary limits."
Also: What is Unix: The Base of All Operating Systems? [Ed: Very awful article, but added for amusement]
- Login or register to post comments
- Printer-friendly version
- 2250 reads
- PDF version
More in Tux Machines
- Highlights
- Front Page
- Latest Headlines
- Archive
- Recent comments
- All-Time Popular Stories
- Hot Topics
- New Members
digiKam 7.7.0 is releasedAfter three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release. |
Dilution and Misuse of the "Linux" Brand
|
Samsung, Red Hat to Work on Linux Drivers for Future TechThe metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world. Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility. |
today's howtos
|
Recent comments
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago