Donation?

Harley Hahn
Home Page

Send a Message
to Harley


A Personal Note
from Harley Hahn

Unix Book
Home Page

SEARCH

List of Chapters

Table of Contents

List of Figures

Chapters...
   1   2   3
   4   5   6
   7   8   9
  10  11  12
  13  14  15
  16  17  18
  19  20  21
  22  23  24
  25  26

Glossary

Appendixes...
  A  B  C
  D  E  F
  G  H

Command
Summary...

• Alphabetical
• By category

Unix-Linux
Timeline

Internet
Resources

Errors and
Corrections

Endorsements


INSTRUCTOR
AND STUDENT
MATERIAL...

Home Page
& Overview

Exercises
& Answers

The Unix Model
Curriculum &
Course Outlines

PowerPoint Files
for Teachers

Exercises and Answers for Chapter 5...

GUIs: Graphical User Interfaces

Review Question #1:

When it comes to displaying information, there are, broadly speaking, two types of data. What are they?

Answer

The two principle types of data are:

• Text (characters)
• Graphics (images)

Review Question #2:

What is the name of the system that supports most Unix graphical user interfaces (GUIs)? Where and when was it first developed? Name three important services it provides.

Answer

The name of the system that supports most Unix GUIs is X Window (not X Windows).

X Window was developed in 1984 at MIT as part of Project Athena, a collaboration between MIT, IBM and DEC.

X Window provides the following important services:

• Forms the basis of most GUIs

• Allows you to run programs on a remote computer, while displaying full graphical output on your own computer

• Makes it possible for you to use a wide variety of hardware

• Enables you to use more than one monitor at the same time

Review Question #3:

What are layers of abstraction? Name the six layers in a typical Unix GUI environment.

Answer

"Layers of abstraction" refers to a model in which a large overall goal is defined in terms of layers, which are visualized as being stacked from the bottom up, one on top of the next. Each layer provide services to the layer above and requests services from the layer below, with no other interactions.

A typical Unix GUI environment can be thought of as consisting of six layers, from top to bottom:

• Application programs & users
• Desktop environment
• Window manager
• X Window
• Device drivers in the kernel
• Hardware

Review Question #4:

What is "total cost of ownership"?

Who uses the concept and why?

When total cost of ownership of a computing system is calculated, how important are the initial costs?

Answer

Total cost of ownership (TCO) is an estimate of the total cost of owning and using a machine or a system over its lifetime.

TCO is a business term used by large companies. To estimate the TCO for a computer or a system, one must consider the cost of:

• Hardware
• Software
• Upgrades
• Maintenance
• Technical support
• Training

As a rule of thumb, the TCO of a business PC is 3 to 4 times its purchase price.

When calculating TCO, initial costs are not that significant. In the long run, what counts the most are the ongoing expenditures and indirect costs.

Review Question #5:

What is a desktop environment?

In the Linux world, what are the two most popular desktop environments?

Answer

A desktop environment is a GUI-based system that provides a working environment whose purpose is to help the user carry out the complex cognitive tasks associated with using a computer.

In the Linux world, the most popular desktop environments are KDE and Gnome.

For Further Thought #1:

As a general rule, when using a GUI, windows are rectangular. Why is this?

When might it make sense to use a round window?

Answer

Within a GUI, windows are generally rectangular for several reasons:

• Cultural inertia
• Rectangular windows are easy to resize and move
• Rectangular windows resemble the pages of a book

A round window would make sense when you want to display a round object, for example, an analog clock.

For Further Thought #2:

You work for a large company that uses PCs running Windows. The company has standardized on Microsoft Office products (Word, Excel, PowerPoint, and so on). You are at a meeting where a young, newly graduated programmer proposes that the company change from Office to the free software alternative, Open Office. Why is this a bad idea?

Does it bother you to recommend that the company stick with Microsoft products? If so, why?

Answer

It is a bad idea to change from Microsoft Office to Open Office for three important reasons:

• Because Microsoft is a commercial organization, it is oriented to the needs of businesses, especially large businesses. There are no such organized services with the same level of support in the Open Office world.

• Although the Open Office products were designed to replace their Microsoft counterpoints, they are not exactly the same, which will result in problems.

• Changing to Open Office will mandate that time and money be appropriated for training users and checking existing files to make sure they still work properly.

Recommending Microsoft products over open source products would bother many newly graduated programmers. This is because they are not experienced enough to understand the ongoing needs a large organization has for stability and predictability.

Moreover, young programmers tend to see the software world through an "us vs. them" filter, and Microsoft is clearly the "them". (In the olden days, it used to be IBM.)

Jump to top of page