Flylib.com

Books Software

 
 
 

Trademarks

Trademarks

No endorsement of any product mentioned in this book is implied by the authors or the publisher. Generally we have used the and symbols denoting trademark status in the US only at the earliest occurrence of each trademarked word or phrase in the book.

Macintosh and PowerBook are trademarks of Apple Computer, Inc., registered in the U.S. and other countries .

BBEdit and TextWrangler are trademarks of Bare Bones Software, Inc.

BSD is a registered trademark of Berkeley Software Design, Inc.

Alpha and OpenVMS are trademarks and Compaq is a registered trademark of Compaq Computer Corporation in the US and other countries, which later merged with Hewlett-Packard Company.

Connectix and Connectix Virtual PC are trademarks of Connectix Corporation, many of whose products were acquired by Microsoft Corporation.

CRAY is a registered trademark of Cray, Inc.

Digital, PDP, and VAX are registered trademarks of Digital Equipment Corporation, which was acquired by Compaq Computer Corporation, which later merged with Hewlett-Packard Company.

Hewlett-Packard, HPUX, and PARISC are registered trademarks of Hewlett-Packard Company.

IEEE is a registered trademark of the Institute of Electrical and Electronic Engineers, Inc.

Intel386, Intel486, and MMX are trademarks and Intel, Itanium, and Pentium are registered trademarks of Intel Corporation or its subsidiaries in the US and other countries.

System/36, System/38, and System/360 are trademarks and AS/400, IBM, PowerPC, and ThinkPad are registered trademarks of International Business Machines Corporation.

ISO is a registered trademark of the International Organization for Standardization.

Mandrake is a trademark of MandrakeSoft S.A.

Microsoft, MSDOS, Windows, and Windows NT are registered trademarks of Microsoft Corporation in the US and/or other countries.

MIPS is a registered trademark of MIPS Technologies, Inc.

Motorola is a registered trademark of Motorola, Inc.

Oracle is a registered trademark of Oracle Corporation.

Prentice-Hall is a registered trademark of Prentice-Hall, Inc.

Red Hat is a registered trademark of Red Hat, Inc. in the US and other countries.

Java, SPARC, Sun, and UltraSPARC are registered trademarks of Sun Microsystems, Inc. in the US and other countries.

SuSE is a registered trademark of SuSE AG.

UNIX and the "X" device are registered trademarks of The Open Group in the US and other countries.

Linux is a registered trademark of Linus Torvalds.

Unicode is a registered trademark of Unicode, Inc.

Simics is a trademark and Virtutech is a registered trademark of Virtutech AB.

Other brands or product names mentioned in this book may be trademarks or registered trademarks of their respective holders and owners . Refer also to the US Patent and Trademark Office (http://www.uspto.gov/) and to the respective organizations.

Chapter 1. Architecture and Implementation

Computer science often distinguishes between abstraction and implementation—i.e., between the general and the particular. We may examine any computer system at two major levels: its architecture and its organization . Although numerous books convey both of these levels in their titles and contents, we are going to concentrate on architecture in this book. We first direct our readers toward an understanding of the distinction between these levels.

In the first decades of the history of computers, the sporadic emergence of new ideas and new companies resulted in a jumbled succession of disparate approaches to computer design. The design of the IBM System/360 series by Amdahl and his team, however, marked not only the trend-setting idea of a family line of computers but also a clear articulation of architecture as distinct from implementation:

  • The architecture of a computer system is the abstraction equivalent to the user -visible interface: the structure and the operation of the system as viewed by the assembly language programmer and the compiler-writer. If an architecture is well-designed, well-engineered to adapt to future technologies, and well- liked by the market, it may persist for a decade or longer.

  • An implementation is the realization and construction of that interface and structure out of specific hardware (and possibly software) components . Because of technological advances, any particular implementation (i.e., one model) may only be actively marketed for a relatively short period of time.

Several different implementations of an architecture may appear over a period of years . Each can offer different trade-offs among cost, performance, and convenience, but all will present the same interface to the assembly language programmer. Such consistency over time, despite technological change, has clearly helped computer system manufacturers to develop brand loyalty and facilitate the development of software as an allied industry.