- 论坛徽章:
- 0
|
was ever the case for the old-school Unixes, which have primarily aimed at the server and
technical-workstation markets. This has implications for the way Linux hackers design
software.
The most obvious change is a shift in preferred interface styles. Unix was originally designed
for use on teletypes and slow printing terminals. Through much of its lifetime it was strongly
associated with character-cell video-display terminals lacking either graphics or color
capabilities. Most Unix programmers stayed firmly wedded to the command line long after
large end-user applications had migrated to X windows-based GUIs, and the design of both
Unix operating systems and their applications have continued to reflect this fact.
Linux users and developers, on the other hand, have been adapting themselves to address the
nontechnical user's fear of CLIs. They have moved to building GUIs and GUI tools much
more intensively than was the case in old-school Unix, or even in contemporary proprietary
Unixes. To a lesser but significant extent, this is true of the other open-source Unixes as well.
The desire to reach end-users has also made Linux developers much more concerned with
smoothness of installation and software distribution issues than is typically the case under
proprietary Unix systems. One consequence is that Linux features binary-package systems
far more sophisticated than any analogues in proprietary Unixes, with interfaces designed (as
of 2003, with only mixed success) to be palatable to nontechnical end users.
The Linux community wants, more than the old-school Unixes ever did, to turn their
software into a sort of universal pipefitting for connecting together other environments.
Thus, Linux features support for reading and (often) writing the filesystem formats and
networking methods native to other operating systems. It also supports multiple-booting with
them on the same hardware, and simulating them in software inside Linux itself. The long-
term goal is subsumption; Linux emulates so it can absorb.[15]
The goal of subsuming the competition, combined with the drive to reach the end-user, has
motivated Linux developers to adopt design ideas from non-Unix operating systems to a
degree that makes traditional Unixes look rather insular. Linux applications using Windows
.INI format files for configuration is a minor example we'll cover in Chapter 10
(Configuration); various attempts to adapt CORBA for Linux desktop projects are another.
Linux 2.5's incorporation of extended file attributes, which among other things can be used
to emulate the semantics of the Macintosh resource fork, is a recent major example at time of
writing. |
|