Page 250 - DCAP403_Operating System
P. 250

Unit 13: Case Study: Linux




          Linux is sometimes suggested as a possible publicly-developed alternative to the desktop   Notes
          predominance of Microsoft Windows. Although Linux is popular among users already familiar
          with Unix, it remains far behind Windows in numbers of users. However, its use in the business
          enterprise is growing.

          13.1 Design Principles

          Linux is a modular Unix-like operating system. It derives much of its basic design from principles
          established in Unix during the 1970s and 1980s. Linux uses a monolithic kernel, the Linux kernel,

          which handles process control, networking, and peripheral and file system access. Device drivers
          are integrated directly with the kernel.
          Much of Linux’s higher-level functionality is provided by separate projects which interface with
          the kernel. The GNU userland is an important part of most Linux systems, providing the shell
          and Unix tools which carry out many basic operating system tasks. Atop these tools graphical
          user interfaces can be placed, usually running via the X Window System.

          User Interface

          Linux is coupled to a text-based Command Line Interface (CLI), though this is usually hidden on
          desktop computers by a Graphical User Interface (GUI). On small devices, input may be handled
          through controls on the device itself, and direct input to Linux might be hidden entirely.
          The X Window System (X) is the predominant graphical subsystem used in Linux. X provides
          network transparency, enabling graphical output to be displayed on machines other than that
          which a program runs on. X runs locally for desktop machines.
          Early GUIs for Linux were based on a stand-alone X window manager such as FVWM,
          Enlightenment, or Window Maker, and a suite of diverse applications running under it. The
          window manager provides a means to control the placement and appearance of individual
          application windows, and interacts with the X window system. Because the X window managers
          only manage the placement of windows, their decoration, and some inter-process communication,
          the look and feel of individual applications may vary widely, especially if they use different
          graphical user interface toolkits.
          This model contrasts with that of platforms such as Mac OS, where a single toolkit provides
          support for GUI widgets and window decorations, manages window placement, and otherwise
          provides a consistent look and feel to the user. For this reason, the use of window managers
          by themselves declined with the rise of Linux desktop environments. They combine a window
          manager with a suite of standard applications that adhere to human interface guidelines. While a
          window manager is analogous to the Aqua user interface for Mac OS X, a desktop environment
          is analogous to Aqua with all of the default Mac OS X graphical applications and confi guration
          utilities. KDE, which was announced in 1996, along with GNOME and Xfce which were both
          announced in 1997, are the most popular desktop environments.
          Linux systems usually provide a CLI of some sort through a shell, the traditional way of interacting
          with Unix systems. Even on modern desktop machines, some form of CLI is almost always
          accessible. Linux distributions specialized for servers may use the CLI as their only interface, and
          Linux machines can run without a monitor attached. Such “headless systems” may be controlled
          by command line via a protocol such as SSH or telnet.
          Most low-level Linux components, including the GNU Userland, use the CLI exclusively. The
          CLI is particularly suited for automation of repetitive or delayed tasks, and provides very simple
          inter-process communication. Graphical terminal emulator programs can be used to access the
          CLI from a Linux desktop.





                                           LOVELY PROFESSIONAL UNIVERSITY                                   243
   245   246   247   248   249   250   251   252   253   254   255