Books: A User's Report
Elizabeth Zinkann
Beginning this month, due to reader request, I am including
prices
with the book information. The price listed will typically
be the
publisher's suggested US price, but may occasionally
be a pre-publication
price estimate.
In other news, the final release of Berkeley UNIX is
available from
O'Reilly & Associates, Inc., in cooperation with
the Usenix Association
and the Computer Systems Research Group of the University
of California
at Berkeley. A five-volume documentation set of 4.4BSD,
with or without
the CD-ROM, is available (Volumes 1-5 plus the CD-ROM,
ISBN 1-56592-082-1,
$150.00; Volumes 1-5 only, ISBN 1-56592-077-5, $120.00).
I will include
more information in the next issue.
This column features an unusual assortment, including
Tcl and
the Tk Toolkit, by John K. Ousterhout (Addison-Wesley);
Cruising
Online: Larry Magid's Guide to the New Digital Highways,
by Lawrence
J. Magid (Random House); The Magic Garden
Explained: The Internals
of UNIX System V Release 4 by Berny Goodheart
and James Cox (Prentice
Hall); !%@:: A Directory of Electronic Mail
Addressing & Networks,
by Donnalyn Frey and Rick Adams (O'Reilly & Associates,
Inc.); The
Internet Unleashed (Sams Publishing); Open
Computing's Guide
to the Best Free UNIX Utilities, by James Keogh
and Remon Lapid
(Osborne McGraw-Hill); and The UNIX Audit:
Using UNIX to Audit
UNIX, by Michael G. Grottola (McGraw-Hill,
Inc.). I hope you will
enjoy them as much as I did.
Tcl and the Tk Toolkit
by John K. Ousterhout
Addison-Wesley Professional Computing Series
ISBN 0-201-63337-X
$36.75
Ousterhout begins by introducing Tcl (pronounced tickle)
and Tk (pronounced
tee-kay) as two distinct software packages. Tcl is an
embeddable scripting
language "for controlling and extending applications;
its name
stands for tool command language." Tk is an
X Window System toolkit.
Both use libraries of C procedures; this allows them
to be used in
different applications. Together they become a programming
environment
for developing graphical user interface (GUI) applications.
The first
two chapters provide an introduction and an overview
of Tcl and Tk.
Ousterhout addresses their benefits, demonstrates how
to use them,
and describes the book's format. He divides the book
into four sections:
the Tcl language, the Tk toolkit, the Tcl C interface,
and the Tk
C interface.
Part I explains the Tcl language. In order to write
Tcl scripts, the
user must understand its syntax and the built-in commands.
Chapter
3 presents the syntax; chapters 4 through 14 describe
the built-in
commands. The syntax chapter defines scripts, commands,
and words,
along with Tcl's evaluation process. Also addressed
are variable,
command, and backslash substitution, comments, quoting
with double
quotes and braces, and normal and exceptional returns.
The author
includes figures, examples, and even tips for new Tcl
users. Chapters
4 through 14 discuss variables, expressions, lists,
control flow,
procedures, string manipulation, accessing files, processes,
errors
and exceptions, managing Tcl internals, and the history
capability.
The logical order of these chapters progresses from
the most frequently
used to the more optional commands.
The second part of the book features the Tk toolkit
and Tk's Tcl commands.
The introductory chapter in this section includes a
brief description
of the X Window System and a very clear explanation
of widgets. Ousterhout
discusses the components of a Tk application (a widget
hierarchy,
an associated Tcl interpreter, and its commands). Two
kinds of Tcl
scripts control a Tk application: initialization scripts
and event
handlers. An initialization script performs any initialization
task
the application may require. Following initialization,
the application
is in a wait state (event loop), ready for user interaction.
When
an event occurs, a Tcl script (event handler) processes
the event
and acts accordingly. Tk features four main Tcl command
groups: creating
and deleting widgets, arranging widgets, communicating
with existing
widgets, and interconnecting widgets. Geometry managers
determine
the sizes and locations of widgets on the screen. This
section concludes
with two examples: a Tcl procedure that creates dialog
boxes and a
script that invokes a remote control application.
The remaining sections document "Writing Tcl
Applications in C"
and "Tk's C Interfaces." After reading
parts 3 and 4, the
reader can create new Tcl commands, write new Tcl applications
in
C, and create new widgets and geometry managers in C.
The appendix
tells how to retrieve, compile, and install Tcl and
Tk, how to discover
available extensions, and where to find the Internet
newsgroup about
Tcl and Tk.
This is an extremely well-written book, containing many
figures, tables,
examples, and scripts to illustrate the Tcl and Tk concepts.
Ousterhout
recommends that the reader have some knowledge of the
ANSI C Standard,
UNIX, and the X Window System in order to make best
use of the book.
In the introduction, he identifies the chapters readers
will need
to look at before attempting to craft Tcl and Tk scripts.
His presentation
technique and expertise result in a superb text. I enjoyed
Tcl
and the Tk Toolkit and recommend it highly
to anyone with any shell
writing experience. Everyone who uses the X Window System
will find
this book helpful.
Addison-Wesley offered a t-shirt featuring Tcl
and the Tk Toolkit
as a promotion. The shirts became so popular that Addison-Wesley
decided
to sell them for $10.00 each and donate the profits
to the Literacy
Volunteers of America, a national non-profit organization
that fights
illiteracy through community volunteer literacy programs.
The attractive
blue and white t-shirt displays the book cover on the
front and lists
all of the titles in the Addison-Wesley Professional
Computing Series
on the back. The t-shirts can be ordered by calling
1-800-822-6339
and specifying 0-201-92446-3 (large) or 0-201-92447-1
(extra large).
Cruising Online: Larry Magid's Guide
to the New Digital Highways
by Lawrence J. Magid
Random House Electronic Publishing
ISBN 0-679-75155-6
$25.00
Magid focuses on the three major commercial online services:
America
Online, CompuServe, and Prodigy. He addresses their
respective strengths,
weaknesses, and costs. Although he examines many of
the features of
each, this is not a catalog for the services. Instead,
Cruising
Online attempts to match the user with the
appropriate online service.
To encourage the reader to find the best service for
his or her needs,
the book provides coupons for free online time for America
Online,
CompuServe, Prodigy, and Netcom, an Internet service
provider.
To demonstrate the advantages and disadvantages of the
commercial
services, Magid selects a topic and describes how America
Online,
CompuServe, and Prodigy approach it. For example, all
three provide
a mail capability, but each handles it differently.
One may add a
charge, while another will only bill the user for the
time on the
system. If the originator wants to track the message,
the status may
be displayed automatically , or the sender may have
to request a receipt
to track it. Magid makes liberal use of the respective
computer screen
outputs for each feature that he discusses. He explores
many of the
popular topics supported by all three services and shows
the differences
among them. Some of the categories include: forums,
news and sports,
reference, computing and software, travel and shopping,
health (as
opposed to health care, which is found under government
or politics),
leisure, entertainment and hobbies, politics, and business
and finance.
Print media also appear as online media. (Although I
receive The
Chicago Tribune daily, I subscribed to America
Online to access
the Tribune online so that I can
read articles that were cross-referenced
but not printed in the newspaper.)
Cruising Online provides money-saving
tips, recommendations
on how to better use a service, and warnings. Magid
also dedicates
a chapter to the Internet. His easy-to-read style lets
the reader
concentrate on the subject and decide which service
best addresses
his or her needs. Venturing into cyberspace can be expensive,
especially
for the uninitiated traveler. Larry Magid's preventive
navigation
(know where you're going before you begin) will help
anyone, whether
a beginner or experienced user. This book merits the
attention of
every user; it demonstrates the proper techniques for
using an online
service.
The Magic Garden Explained: The Internals
of UNIX System V Release 4
by Berny Goodheart and James Cox
Prentice Hall
ISBN 0-13-098138-9
$38.00
With the The Magic Garden Explained,
Goodheart and Cox have
contributed to the essential UNIX library for UNIX professionals.
This book describes how UNIX System V Release 4 (SVR4)
functions.
The authors begin with a history of UNIX, including
the differences
among the various releases and versions and the new
features in UNIX
SVR4. If you've read a bit about UNIX history in other
books, you
may be tempted to bypass this discussion of history.
In this case,
omitting the historical background would be a mistake
and the reader's
loss. The Magic Garden Explained
explores the Australian connection
to UNIX and provides some history that doesn't appear
in any other
book. It also examines the attempts to define UNIX standards,
including
SVID, POSIX, and X/Open. Some excellent tables and flowcharts
display
recent kernel developments and features of UNIX SVR4.
Following the introductory chapter is a foundation chapter
entitled
"Concepts and facilities." The topics
explained in this chapter
are necessary to an understanding of the rest of the
book. Here, Goodheart
and Cox discuss the UNIX operating system basics in
some depth and
supply brief introductions to STREAMS, how STREAMS works,
TCP/IP,
the Transport level interface (TLI), Sockets, Remote
File Sharing
(RFS), and the Networked file system (NFS). The explanation
of the
UNIX kernel is organized in four sections: the memory
management subsystem,
the process management subsystem, the I/O subsystem,
and the file
management subsystem. Each of these subsystems, as well
as the properties
attributed to it, is explained thoroughly in its respective
chapter.
The book's final section addresses the STREAMS subsystem,
the interprocess
communication system, and crash(1M). The chapter detailing
STREAMS
includes different STREAMS functions, the algorithms
for the functions,
the modules, drivers, utilities, memory management,
and diagrams and
text displaying how the stream head operates. The chapter
on interprocess
communication (IPC) features semaphores, message queues,
and shared
memory. The final chapter describes a utility that allows
the administrator
to inspect a core-image of the kernel, including processes,
the kernel
stack, files, memory, and STREAMS.
The Magic Garden Explained joins
an elite selection of classic
UNIX books. It can be used either as a college textbook
(the authors
include exercises at the ends of chapters for students)
or a professional's
reference. Goodheart and Cox also provide enough detail
to satisfy
the casual user. This book will benefit developers,
system engineers,
administrators, and programmers, particularly those
who implement
device drivers. The Magic Garden Explained
is one of the first
books to receive the approval of the Novell, Inc. UNIX
Systems Group.
Given the authors' different time zones (Australian
and English),
it is amazing not only that the book was completed,
but also that
the style is so coherent. The Magic Garden
Explained features
a well-written and logical style, enlivened by a sense
of humor, displayed
in the footnotes. The authors even reveal why it is
a magic garden.
This is a superior book and should be added to any classic
UNIX library.
!%@:: A Directory of Electronic Mail Addressing
& Networks Fourth Edition
by Donnalyn Frey and Rick Adams
O'Reilly & Associates, Inc.
ISBN 1-56592-046-5
$9.95
Frey and Adams provide a directory of networks for the
novice or experienced
user. The latest version includes a basic introduction
to electronic
mail (e-mail) addressing and a more specific explanation
of multiple
network communication. The authors focus on approximately
190 networks
in depth, describing the network, its services, the
formats used,
and who to contact for further information.
The appendices feature the domain names of networks
in 62 countries,
from Argentina to Zimbabwe. The United States is divided
into four
sections: commercial, educational, governmental, and
geographic. Frey
and Adams also include a segment for the United States
containing
network and organizational subdomains. These extensive
and informative
lists can help users trying to contact colleagues on
different networks
establish a connection successfully on the first try.
(The lists will
also intrigue the bookworm for hours, particularly during
thunderstorms!)
The authors have modified a very readable and extremely
well-organized
book. For the fourth edition, O'Reilly & Associates,
Inc. have reduced
the price. The previous edition sold for $24.95; the
modified, expanded
version is $9.95. Every book lover and online user will
want to take
advantage of this bargain!
The Internet Unleashed
Sams Publishing
ISBN 0-672-30466-X
$44.95, includes disk
The writing of this book resembles the Internet itself.
Forty-five
authors contributed to The Internet Unleashed,
each addressing
his or her speciality. Different subjects are supported
by different
visual aids. The introductory chapters use sidebars
to explain necessary
topics, such as TCP/IP and bandwidth. Later chapters
employ notes,
tips, and screen outputs to communicate ideas. Tables,
charts, diagrams,
and figures augment the text throughout the book. The
Internet
Unleashed consists of eleven parts plus the
Appendices. It discusses
Internet history (past, present, and future), how it
works and how
to participate in it, communication, finding information,
using the
Internet for business, education and government, issues
regarding
the Internet, and having fun.
In presenting the history of the Internet, author Martin
Moore describes
more than the facts detailing the beginning. He also
discusses the
prevailing political climates that accompanied its generation
and
development. Moore recounts what ideas were implemented,
and when
and where; this approach resembles a written timeline
and is quite
effective.
The second section discusses network mediums, topologies,
protocols,
and routing, followed by Internet addresses and domain
names. Each
topic is presented in a clear and precise manner. The
third segment
addresses accessing the Internet, whether as a user,
an organization,
or through a local area network (LAN). It also considers
high-speed
connections, security, and selecting a consultant or
trainer.
Communications can refer to e-mail, Internet Relay Chat
(IRC), discussions,
news, or mailing lists. Therefore, the contributers
to this section
covered all of the possibilities. The authors begin
with an overview
of Internet E-mail, provide information about E-mail
programs for
DOS, Windows, and Macintosh platforms, and examine different
Internet
gateways. They describe discussions through Listservs
and mailing
lists, explaining how to use, create, and maintain them.
The authors
also focus on acquiring news through Usenet and newsgroups,
emphasizing
proper netiquette and comparing various newsreaders.
This section
concludes with a discussion on live conversation and
how to participate.
"Finding and Sharing Information"
is probably the most important
segment in the book. Its collection of tools and instructions
on using
them includes: finding people on the Internet, InterNIC,
FTP, Telnet,
Archie, using, finding, and creating Gophers, Veronica,
WAIS, the
World Wide Web, and Mosaic. With these and the other
tools presented
in this section, the reader should be able to successfully
travel
the Internet.
The Internet Unleashed next focuses
on specific applications
of the Internet. The section relating to business recounts
a history
of business on the Internet, why anyone should conduct
business in
cyberspace, the policies defining acceptable use, and
current practices.
The authors also provide information about libraries
and discuss accessing
different libraries through the Internet, enabling the
researcher
to expand his or her resources. The Internet can also
furnish education.
This feature is available for K-12 students or college
graduates,
including distance education, which allows the instructor
and the
students to reside in different geographic locations.
The Internet Unleashed concludes
with segments on community
and government, Internet controversies, diversions and
fun, and the
appendices. Among topics including federal information
and Free-Nets,
the government section identifies ten rules that the
user should consider
before addressing a political issue. Internet controversies
describes
crackers, viruses, privacy, copyrights, and censorship.
Diversion
and fun explores multi-user dungeons (MUDs), the Internet
Hunt, and
Virtual Reality. The appendices furnish the Public Dialup
Internet
Access List (PDIAL), essential Internet tools, an introduction
to
UNIX, Internet Domain Names, and Internet Resources.
The accompanying
disk, for Windows, includes a Chameleon Sampler from
NetManage, Internet
tools, Hgopher, UUCode, and directories of mailing lists,
newsgroups,
and Listserv lists. (A Macintosh disk is available on
request.)
This is an outstanding book. The examples employed throughout
allow
the reader to understand the concepts, regardless of
his or her user
level. This book belongs on every Internet user's bookshelf,
or in
close proximity to his or her keyboard. It will be used
often.
Open Computing's Guide to the
Best Free UNIX Utilities
by James Keogh and Remon Lapid
Osborne McGraw-Hill
ISBN 0-07-882046-4
$34.95, includes CD-ROM
The adjective "free" has many different
connotations. For
purposes of this book, Keogh and Lapid required that
each "free"
utility possess three qualifications: it must be the
best in its field;
the source code, binaries, and documentation must be
on the Internet;
and it must be available to anyone without restrictions.
The authors
provide download instructions, the name and location
of the utility
on the Internet, and the name of a netnews group for
users of that
utility. They also provide e-mail addresses to report
bugs in the
utility. To help readers who may be downloading and
building utilities
for the first time, they include a chapter that recalls
their own
initial endeavors and documents their errors.
Keogh and Lapid divide the utilities into several categories:
general,
text processing, games, communication, printing and
spreadsheet, software
development, graphics, and electronic mail utilities.
They also include
the best of the programming languages. Some of these
utilities seem
unimportant until you encounter a terminal without them,
whereupon
they become indispensable. The authors cover many of
my favorite utilities,
as well as some newly developed tools. Among the general
utility software,
Keogh and Lapid examine less,
paging software that allows
the user to move both forward and backward; screen,
which
monitors multiple sessions on your screen; ingres,
an interactive
database; and bash, the
"GNU Project's Bourne Again Shell"
that combines the advantages of the Bourne, Korn, and
C shells. Text
processing software contains TeX and emacs; communication
software
features gzip (data compression), kermit (file transfer),
pcomm(telecommunications),
and mosaic, the newest and brightest of the Internet
browsers. The
chapter on software development includes Tcl, an embeddable
scripting
language; the electronic mail section addresses Netfax;
and among
the programming languages are Xfree86, an X Windows
Server, gcc, a
C and C++ compiler, the NIH Class Library, a C++ library,
and the
Perl programming language.
Open Computing's Guide to the Best Free UNIX
Utilities includes
a CD-ROM with the source in two formats. Since the source
must be
compiled, the introduction of the book provides instructions
for the
CD.
In sum, Keogh and Lapid have identified the most useful
utilities
and shown how to obtain and use them. To prevent any
errors and also
to provide support, they detail the downloading process,
describe
common mistakes and how to avoid them, and identify
groups dedicated
to each utility. The result is an excellent book that
explains the
procedures designed to benefit from the existing resources.
The UNIX Audit: Using UNIX to Audit UNIX
by Michael G. Grottola
McGraw-Hill, Inc.
ISBN 0-07-025127-4
$29.95
Grottola describes three reasons for system audits:
to control, verify,
or measure impact. The control audit analyzes the system
resources
for someone unfamiliar with the system; the verification
audit confirms
the operations of a system; and an audit that measures
impact examines
the effects of an impending revision or change.
In many cases, an audit becomes another task for the
system administrator.
Grottola demonstrates how a UNIX professional can use
the UNIX operating
system to produce a professional audit report. For the
auditor who
is unfamiliar with UNIX, the author suggests recruiting
the assistance
of a system administrator. In addition, he discusses
74 UNIX commands
that can provide audit information. Grottola
categorizes these
commands in six groups: administration, file systems,
network facilities,
performance, security, and general utility tools. He
also presents
the commands in alphabetical order and explains how
each can be used
for auditing purposes. A later chapter shows how to
establish a baseline
reference through the system resource files and how
to use the information
to monitor the entire system.
Through the procedures described by the author, the
system administrator
or auditor can evaluate the UNIX file system, remote
access facilities,
backup procedures, disaster recovery, and system security,
software,
use, and performance. Grottola furnishes checklists
and questions
that should be answered to complete the audit. He demonstrates
how
to use UNIX to perform the audit and includes examples
of audit forms
as part of the finished report. The UNIX Audit
is clearly written
and logically presented, with flowcharts and screen
outputs displayed
to aid the reader. If your job involves responsibility
for UNIX systems
analysis and productivity, The UNIX Audit
is a valuable tool.
About the Author
Elizabeth Zinkann has been involved in the UNIX and
C environments for the past
11 years. She is currently a UNIX and C consultant,
and one of her specialities
is UNIX education. In addition to her computer science
background, she also has a
degree in English. Elizabeth can be reached via CompuServe
at 71603,2201
(Internet format: 71603.2201@compuserve.com), or via
America Online
(ezinkann@aol.com).
|