Modern Operating Systems (2nd Edition)
Average customer rating: 4 out of 5 stars
  • Very informational, but not pragmatic
  • OS Textbook
  • Totally Sucked
  • Amazing
  • Very, very cool! One of the kind!
Modern Operating Systems (2nd Edition)
Andrew Tanenbaum
Manufacturer: Prentice Hall
ProductGroup: Book
Binding: Hardcover

Operating Systems TheoryOperating Systems Theory | APIs & Operating Environments | Programming | Computers & Internet | Subjects | Books
GeneralGeneral | Computers & Internet | Subjects | Books
GeneralGeneral | Operating Systems | Computers & Internet | Subjects | Books
GeneralGeneral | Software | Computers & Internet | Subjects | Books
Operating SystemsOperating Systems | Computer Science & Information Systems | New & Used Textbooks | Stores | Books
Programming LanguagesProgramming Languages | Computer Science & Information Systems | New & Used Textbooks | Stores | Books
All TitlesAll Titles | Qualifying Textbooks - Fall 2007 | Stores | Books
Computers & InternetComputers & Internet | Qualifying Textbooks - Fall 2007 | Stores | Books
Look Inside Computer BooksLook Inside Computer Books | Trip | Specialty Stores | Books
Similar Items:
  1. Operating Systems Design and Implementation (3rd Edition) (Prentice Hall Software Series) Operating Systems Design and Implementation (3rd Edition) (Prentice Hall Software Series)
  2. Computer Networks, Fourth Edition Computer Networks, Fourth Edition
  3. Introduction to Algorithms Introduction to Algorithms
  4. Structured Computer Organization (5th Edition) Structured Computer Organization (5th Edition)
  5. Compilers: Principles, Techniques, and Tools (2nd Edition) Compilers: Principles, Techniques, and Tools (2nd Edition)

ASIN: 0130313580

Amazon.com

For software development professionals and computer science students, Modern Operating Systems gives a solid conceptual overview of operating system design, including detailed case studies of Unix/Linux and Windows 2000.

What makes an operating system modern? According to author Andrew Tanenbaum, it is the awareness of high-demand computer applications--primarily in the areas of multimedia, parallel and distributed computing, and security. The development of faster and more advanced hardware has driven progress in software, including enhancements to the operating system. It is one thing to run an old operating system on current hardware, and another to effectively leverage current hardware to best serve modern software applications. If you don't believe it, install Windows 3.0 on a modern PC and try surfing the Internet or burning a CD.

Readers familiar with Tanenbaum's previous text, Operating Systems, know the author is a great proponent of simple design and hands-on experimentation. His earlier book came bundled with the source code for an operating system called Minux, a simple variant of Unix and the platform used by Linus Torvalds to develop Linux. Although this book does not come with any source code, he illustrates many of his points with code fragments (C, usually with Unix system calls).

The first half of Modern Operating Systems focuses on traditional operating systems concepts: processes, deadlocks, memory management, I/O, and file systems. There is nothing groundbreaking in these early chapters, but all topics are well covered, each including sections on current research and a set of student problems. It is enlightening to read Tanenbaum's explanations of the design decisions made by past operating systems gurus, including his view that additional research on the problem of deadlocks is impractical except for "keeping otherwise unemployed graph theorists off the streets."

It is the second half of the book that differentiates itself from older operating systems texts. Here, each chapter describes an element of what constitutes a modern operating system--awareness of multimedia applications, multiple processors, computer networks, and a high level of security. The chapter on multimedia functionality focuses on such features as handling massive files and providing video-on-demand. Included in the discussion on multiprocessor platforms are clustered computers and distributed computing. Finally, the importance of security is discussed--a lively enumeration of the scores of ways operating systems can be vulnerable to attack, from password security to computer viruses and Internet worms.

Included at the end of the book are case studies of two popular operating systems: Unix/Linux and Windows 2000. There is a bias toward the Unix/Linux approach, not surprising given the author's experience and academic bent, but this bias does not detract from Tanenbaum's analysis. Both operating systems are dissected, describing how each implements processes, file systems, memory management, and other operating system fundamentals.

Tanenbaum's mantra is simple, accessible operating system design. Given that modern operating systems have extensive features, he is forced to reconcile physical size with simplicity. Toward this end, he makes frequent references to the Frederick Brooks classic The Mythical Man-Month for wisdom on managing large, complex software development projects. He finds both Windows 2000 and Unix/Linux guilty of being too complicated--with a particular skewering of Windows 2000 and its "mammoth Win32 API." A primary culprit is the attempt to make operating systems more "user-friendly," which Tanenbaum views as an excuse for bloated code. The solution is to have smart people, the smallest possible team, and well-defined interactions between various operating systems components. Future operating system design will benefit if the advice in this book is taken to heart. --Pete Ostenson

Customer Reviews:

3 out of 5 stars Very informational, but not pragmatic.......2007-03-04

It's a very useful, informative book but I found it more esoteric than it needed to be - I speak from my experience as a computer science student who then went on to write software for a living. Unfortunately, I feel the problems described below plague most popular OS books today, including "Operating System Concepts by Silberschatz, Galvin, Gagne".

I'd like to break up the review rating into two parts:

Content and relevance to subject: 4/5
The book covers almost all aspects of what an operating system needs to to do and so is highly informational, from threads to memory management to I/O - the three most essential (and yet elusive) concepts in today's operating systems. The author does a good job of explaining, at each stage, the various design choices that an OS designer must make e.g. virtual memory - use free lists or bitmaps to do book-keeping of used and free physical memory. Most concepts are explained clearly and as such I found this book to be a good reference on OS design principles.

Applicability to real world issues: 2/5
Unfortunately a good reference is not always the best way to understand how things work in practice. The book discusses design choices at each step, but I feel what most computer science students need to learn first is how today's operating systems work - how does the threading scheduler in UNIX work? how does UNIX manage memory, so I as a software engineer can best make use of it? It's great to know all these design pricniples an OS has, but my experience was that when you're at your first job wondering why you're running out of physical memory or why your multi-threaded program keeps crashing, it helps immensely to know well exactly how your OS works, than the myriad choices that it can make. And let's face it - there aren't many OS's in the wold today - the UNIX family and Windows, which is modeled largely on UNIX (albeit not welll and with a few differences). I should point out that the book has a chapter each on UNIX and Winwos at the end, but by the time you reach the end of a 900-page book you're usually out of patience.

I have studied from the book by Silberschatz et al. as well, and I have the same complaint with each book - as a student I felt there was a huge disconnect between what the books talk about and knowing the guts of your UNIX or Windows system. Put it simply, I found the books were too "bookish". Unfortunately, I am not aware of any other mainstream OS book that does any better. I would love to see a book that discusses this critical subject in a different (and more enlightening) way - that discusses in detail how, say threads work in UNIX, and then elaborates on how else it could be done. So that at the end of it, you atleast know to make best use of the OS you work with (even if you don't fully understand how to design the next one).

3 out of 5 stars OS Textbook.......2006-10-10

I found the book complicated but I am not a programmer. The book covers alot of concepts which I found hard to grasp. Overall the book is not bad but if you are looking for something that will teach you programming I would not recommend this book.

1 out of 5 stars Totally Sucked.......2006-08-02

I'm taking a college course and this book really bites. Reading it just leaves me in a daze. He goes on and on about how this method won't work and that method won't work which completely covers up what we need to learn. I'm getting 98.18% in the class on term 8 of 10, but it's not due to this book. Unfortuneatley I'm stuck with the book because it's what the school uses. Find another one.

5 out of 5 stars Amazing.......2006-02-26

I have been able to, using just this book, read and learn about operating systems in a very thorough and painless way. The writing is straightforward and really demystifies OSs. I am a college CS student taking an OS course and this has been an invaluable asset.

5 out of 5 stars Very, very cool! One of the kind!.......2005-07-22

This book is a very nice overview of contemporary conceptions of what is operating system would be and it discusses many facets of the issue. It does not overwhelm with technical details and does not press too much. I also followed an advise in someone's review and purchased "UNIX Essentials" DVD that is complete UNIX course recorded. These two nicely complement one another. You watch it and you read it. If you didn't catch it from the first try you watch it again and read it again. In two months I found myself confident to that extend that gave advises to our system administrator and he accepted them because there were subjects that he wasn't completely sure. What I can say, in three month I passed my first interview and got a job! Sure it is a way to start there much of more advanced reading that will take over you with a time however these two provide you with the BASIS!
I can't overstate how much I have learned from them. Don't be naive, though. You will have to learn and memorize many things. The fact of owning neither book nor DVD will not make you knowledgeable, but if you will work it trough, trust me, you will surprise many people around!
Modern Cable Television Technology, Second Edition (The Morgan Kaufmann Series in Networking)
Average customer rating: 4.5 out of 5 stars
  • Engineer
  • comprehensive but major reservations
  • Comprehensive (2nd Edition)
  • Excellent tutorial and reference
  • At last a fully comprehensive CATV handbook
Modern Cable Television Technology, Second Edition (The Morgan Kaufmann Series in Networking)
Walter Ciciora , James Farmer , David Large , and Michael Adams
Manufacturer: Morgan Kaufmann
ProductGroup: Book
Binding: Hardcover

NetworksNetworks | Networks, Protocols & APIs | Networking | Computers & Internet | Subjects | Books
GeneralGeneral | Networks, Protocols & APIs | Networking | Computers & Internet | Subjects | Books
GeneralGeneral | Certification Central | Computers & Internet | Subjects | Books
GeneralGeneral | Operating Systems | Computers & Internet | Subjects | Books
GeneralGeneral | Electrical & Electronics | Engineering | Professional & Technical | Subjects | Books
GeneralGeneral | Telecommunications | Engineering | Professional & Technical | Subjects | Books
General & ReferenceGeneral & Reference | Technology | Science | Subjects | Books
GeneralGeneral | Arts & Photography | Subjects | Books
Look Inside Art BooksLook Inside Art Books | Trip | Specialty Stores | Books
Look Inside Computer BooksLook Inside Computer Books | Trip | Specialty Stores | Books
Look Inside Science BooksLook Inside Science Books | Trip | Specialty Stores | Books
All Amazon UpgradeAll Amazon Upgrade | Amazon Upgrade | Stores | Books
Arts & PhotographyArts & Photography | Amazon Upgrade | Stores | Books
Computers & InternetComputers & Internet | Amazon Upgrade | Stores | Books
EngineeringEngineering | Amazon Upgrade | Stores | Books
Professional & TechnicalProfessional & Technical | Amazon Upgrade | Stores | Books
ScienceScience | Amazon Upgrade | Stores | Books
All TitlesAll Titles | Qualifying Textbooks - Fall 2007 | Stores | Books
Arts & PhotographyArts & Photography | Qualifying Textbooks - Fall 2007 | Stores | Books
Computers & InternetComputers & Internet | Qualifying Textbooks - Fall 2007 | Stores | Books
ProfessionalProfessional | Qualifying Textbooks - Fall 2007 | Stores | Books
ScienceScience | Qualifying Textbooks - Fall 2007 | Stores | Books
Similar Items:
  1. Broadband Cable TV Access Networks: From Technologies to Applications Broadband Cable TV Access Networks: From Technologies to Applications
  2. The Essential Guide to Digital Set-Top Boxes and Interactive TV The Essential Guide to Digital Set-Top Boxes and Interactive TV
  3. Interactive TV Standards: A Guide to MHP, OCAP, and JavaTV Interactive TV Standards: A Guide to MHP, OCAP, and JavaTV
  4. Video Over IP: A Practical Guide to Technology and Applications (Focal Press Media Technology Professional Series) Video Over IP: A Practical Guide to Technology and Applications (Focal Press Media Technology Professional Series)
  5. Introduction to Cable Television (CATV): Analog and Digital Cable Television and Modems Introduction to Cable Television (CATV): Analog and Digital Cable Television and Modems

ASIN: 1558608281

Book Description

Fully updated, revised, and expanded, this second edition of Modern Cable Television Technology addresses the significant changes undergone by cable since 1999--including, most notably, its continued transformation from a system for delivery of television to a scalable-bandwidth platform for a broad range of communication services. It provides in-depth coverage of high speed data transmission, home networking, IP-based voice, optical dense wavelength division multiplexing, new video compression techniques, integrated voice/video/data transport, and much more.

Intended as a day-to-day reference for cable engineers, this book illuminates all the technologies involved in building and maintaining a cable system. But it's also a great study guide for candidates for SCTE certification, and its careful explanations will benefit any technician whose work involves connecting to a cable system or building products that consume cable services.

*Written by four of the most highly-esteemed cable engineers in the industry with a wealth of experience in cable, consumer electronics, and telecommunications.

*All new material on digital technologies, new practices for delivering high speed data, home networking, IP-based voice technology, optical dense wavelength division multiplexing (DWDM), new video compression techniques, and integrated voice/video/data transport.

*Covers the latest on emerging digital standards for voice, data, video, and multimedia.

*Presents distribution systems, from drops through fiber optics, an covers everything from basic principles to network architectures.

Customer Reviews:

5 out of 5 stars Engineer.......2007-09-06

This is a very good book for someone interested in the CATV industry.

It gives you a good explanation of the technologies that allow CATV companies the ability to provide all the services now available.

It does this in one book, so that you don't have to hunt through several books to find what you need, when you need it.


3 out of 5 stars comprehensive but major reservations.......2006-11-24

This encyclopedic reference appears to do a good job of spanning the tremendous range of technology comprising satellite transmission and reception ("transception"); head-end organization; regional and "last mile" distribution; and set-top box technology, steering (unfortunately) way clear of the hardware, firmware, and software issues associated with providing modern unidirectional and bidirectional digital services atop multiple tuners in home network (including up-and-coming IPTV) environments supporting slavable hard drives. HOWEVER, being an electrical engineer and, therefore, having naturally started with the chapter on modulation and analog detection, I was WOEFULLY disappointed. It is fine to author mathematical treatments with a heavy hand ("It is imperative that one understand ...," etc.), but one had better know what one is talking about. This is clearly not the case. Where mathematics are presented as putative groundwork for some forthcoming exposition, they are erroneous and weak. Irrelevant theorems from high-school trigonometry are cited as if they are the be-all and end-all of signal analysis. The description of run-of-the-mill Fourier analysis is flawed and terminologically imprecise. The Nyquist theorem is casually referred to as "Harry Nyquist's rule" and cited as if it were a side-effect rather than a vital principle--a principle that is clearly way beyond the authors' understanding, insofar as I never saw any development of the sampling theorem or the expansion of bandlimited functions in terms of sinc (no, NOT sync) pulses. Now, when I studied communication systems, it was critical to have a crystalline understanding of how the signal and power spectra morphed as one proceeds from block to block throughout the (analog or digital) system. Yet, the authors are unable to do this, muffing through vague mention of "X Hz of single sideband and Y Hz of double sideband" and obfuscatory, misleading diagrams of time-domain phenomena accompanied with similarly vague notions of orthogonal this or quadrature that but--you guessed it--steering clear of any precise mathematical exposition (a la Hilbert transforms or diagrams that clearly indicate signal spectra, satellite spectra, aliased sidelobes, etc.) while fumbling through discussions of "two layers" of filtering that attempt to lump transmission "filtering" and reception "filtering" into one logical task without asserting or fully executing any conceptual paradigm whereby the one logically inverts the other. Where is the sampling theorem? Where is the fundamental mathematical expression of amplitude modulation? Where is a clear diagram that demonstrates how the I, Q, and L analog TV signals are multiplexed? Why is there discussion of envelope detection without any mention of the Schwarz inequality? "Constellations" of QAM, QPSK, etc., "signals" are diagrammed without the merest mention of what one is actually looking at, viz., message vectors in Kotelnikoff space based upon an eigenvalue expansion achieved via Gram-Schmidt orthogonalization. What really blew me away, though, was--brief though it was--the most nonsensical statement of all: The authors were discussing various directions in digital compression, and I saw a subchapter heading entitled, "Fractals." I said to myself, "Wow! That's great! I wonder what they've managed and how." Well, the "explanation" was nothing more than, "Fractals are really useful; the only problem is in figuring out the equations." That's like a math student telling his teacher, "I've got the solution to the problem! The only thing I'm missing is the detailed algebraic expansion!"

5 out of 5 stars Comprehensive (2nd Edition).......2005-08-23

Well done compilation that is approachable while covering a lot of ground. If you need one book that touches on all the technology aspects of the cable industry and can fit on your bookshelf, this is it. I highly recommend it.

4 out of 5 stars Excellent tutorial and reference.......2003-10-28

This book is a remarkable survey of a very broad field. It is necessarily somewhat superficial in its coverage of some of the more abstruse topics, but provides the necessary essentials an engineer needs to operate in the cable television environment. Unlike mere compendia of archival publications, this book has a consistent pedagogical viewpoint and notation. It is oriented towards practicing engineers, providing just enough theory to support successful problem solving. I recommend it to anyone working in the field.

5 out of 5 stars At last a fully comprehensive CATV handbook.......2001-03-07

In a quick growing market, and with daily technological improvements like cable television, the lack of a thoroughly comprehensive compilation was being noticed. This book, a kind of Bible for that specific area of telecommunications engineering, could approach a vast variety of technical and operational issues for the CATV industry. A vade mecum (lat. ¨goes with me¨, means essential) for every CATV engineer or technician.
The Modern RPG IV Language
Average customer rating: 4.5 out of 5 stars
  • A book that is worth the price.
  • Helpfull for relearning RPG
  • Must have.
  • Great RPG IV book
  • RPG IV
The Modern RPG IV Language
Bob Cozzi
Manufacturer: Midrange Computing
ProductGroup: Book
Binding: Paperback

RPGRPG | Languages & Tools | Programming | Computers & Internet | Subjects | Books
GeneralGeneral | Programming | Computers & Internet | Subjects | Books
GeneralGeneral | Operating Systems | Computers & Internet | Subjects | Books
MathematicsMathematics | Professional Science | Professional & Technical | Subjects | Books | Applied | Chaos & Systems | Geometry & Topology | Mathematical Analysis | Mathematical Physics | Number Systems | Pure Mathematics | Transformations | Trigonometry
Similar Items:
  1. Free-Format RPG IV: How to Bring Your RPG Programs Into the 21st Century Free-Format RPG IV: How to Bring Your RPG Programs Into the 21st Century
  2. Subfiles in RPG IV : Rules, Examples, Techniques, and Other Cool Stuff Subfiles in RPG IV : Rules, Examples, Techniques, and Other Cool Stuff
  3. SQL Built-In Functions and Stored Procedures: The i5/iSeries Programmer's Guide SQL Built-In Functions and Stored Procedures: The i5/iSeries Programmer's Guide
  4. Complete CL: The Definitive Control language Programming Guide Complete CL: The Definitive Control language Programming Guide
  5. SQL/400 Developer's Guide SQL/400 Developer's Guide

ASIN: 1883884314

Book Description

This new book by the world's #1 RPG authority shows you how to exploit the powerful new features of RPG IV, the most powerful RPG language ever created. You'll accomplish more with fewer lines of code-guaranteed. Cozzi gives you extensive coverage of the integrated RPG IV date and time support, which is critical as you move your applications into the year 2000. This book will save you untold hours of research and programming time!

Customer Reviews:

4 out of 5 stars A book that is worth the price........2007-02-06

This book is very easy to read as the layout is very structured. It is a good reference book for RPG programmers.

5 out of 5 stars Helpfull for relearning RPG.......2006-03-27

I just started working in RPG again after not having practized RPG so much for about 7 years and decided to buy this book to refresh me.

The book is of a great help and covers all the things I wanted in it and adding to that is very well organized and it's easy to find what you are looking for.

5 out of 5 stars Must have........2005-11-14

If you have been writing RPG for years or are now finding that you need to learn it for a new job this book will be your best friend.

5 out of 5 stars Great RPG IV book.......2001-06-29

Robert Cozzi always writes great RPG books. This is another one of them. Excellent quick reference for programmers. Must have book.

5 out of 5 stars RPG IV.......2000-09-12

This is the one Will! Great examples. Great explanations. OpCodes in alpha order for quick reference. Buy it.
Computer Science: A Modern Introduction (Prentice Hall International Series in Computer Science)
Average customer rating: 4 out of 5 stars
  • avoiding complacency
Computer Science: A Modern Introduction (Prentice Hall International Series in Computer Science)
Les Goldschlager , and Andrew Lister
Manufacturer: Prentice Hall
ProductGroup: Book
Binding: Paperback

MathematicsMathematics | Professional Science | Professional & Technical | Subjects | Books | Applied | Chaos & Systems | Geometry & Topology | Mathematical Analysis | Mathematical Physics | Number Systems | Pure Mathematics | Transformations | Trigonometry
Information SystemsInformation Systems | Software Engineering | Computer Science | Computers & Internet | Subjects | Books
GeneralGeneral | Computer Science | Computers & Internet | Subjects | Books
GeneralGeneral | Computers & Internet | Subjects | Books
GeneralGeneral | Operating Systems | Computers & Internet | Subjects | Books
Look Inside Computer BooksLook Inside Computer Books | Trip | Specialty Stores | Books
ASIN: 0131659456

Customer Reviews:

4 out of 5 stars avoiding complacency.......2000-06-05

The reason why this is an important book for everyone. Avoiding the usual sectarian complacency, common to many authors, this book rends the matter simple, interesting and stimulating to further readings, which it should be the primary objective of any writer. I would particularly suggest this text to beginners who whish to step forward a scientific approach.
Optimizing Compilers for Modern Architectures: A Dependence-based Approach
Average customer rating: 5 out of 5 stars
  • Must-have for compiler writers and processor designers
  • Very readable, very specific
  • An excellent book on loop based optimization
  • Finally, everything in one place.
Optimizing Compilers for Modern Architectures: A Dependence-based Approach
Randy Allen , and Ken Kennedy
Manufacturer: Morgan Kaufmann
ProductGroup: Book
Binding: Hardcover

Computer DesignComputer Design | Microprocessors & System Design | Hardware | Computers & Internet | Subjects | Books
Design & ArchitectureDesign & Architecture | Hardware | Computers & Internet | Subjects | Books
Compiler DesignCompiler Design | Languages & Tools | Programming | Computers & Internet | Subjects | Books
CompilersCompilers | Languages & Tools | Programming | Computers & Internet | Subjects | Books
GeneralGeneral | Operating Systems | Computers & Internet | Subjects | Books
GeneralGeneral | Software | Computers & Internet | Subjects | Books
Look Inside Computer BooksLook Inside Computer Books | Trip | Specialty Stores | Books
All Amazon UpgradeAll Amazon Upgrade | Amazon Upgrade | Stores | Books
Computers & InternetComputers & Internet | Amazon Upgrade | Stores | Books
All TitlesAll Titles | Qualifying Textbooks - Fall 2007 | Stores | Books
Computers & InternetComputers & Internet | Qualifying Textbooks - Fall 2007 | Stores | Books
Similar Items:
  1. Advanced Compiler Design and Implementation Advanced Compiler Design and Implementation
  2. Engineering a Compiler Engineering a Compiler
  3. Compilers: Principles, Techniques, and Tools (2nd Edition) Compilers: Principles, Techniques, and Tools (2nd Edition)
  4. High-Performance Compilers for Parallel Computing High-Performance Compilers for Parallel Computing
  5. Garbage Collection: Algorithms for Automatic Dynamic Memory Management Garbage Collection: Algorithms for Automatic Dynamic Memory Management

ASIN: 1558602860

Book Description


Modern computer architectures designed with high-performance microprocessors offer tremendous potential gains in performance over previous designs. Yet their very complexity makes it increasingly difficult to produce efficient code and to realize their full potential. This landmark text from two leaders in the field focuses on the pivotal role that compilers can play in addressing this critical issue.


The basis for all the methods presented in this book is data dependence, a fundamental compiler analysis tool for optimizing programs on high-performance microprocessors and parallel architectures. It enables compiler designers to write compilers that automatically transform simple, sequential programs into forms that can exploit special features of these modern architectures.


The text provides a broad introduction to data dependence, to the many transformation strategies it supports, and to its applications to important optimization problems such as parallelization, compiler memory hierarchy management, and instruction scheduling. The authors demonstrate the importance and wide applicability of dependence-based compiler optimizations and give the compiler writer the basics needed to understand and implement them. They also offer cookbook explanations for transforming applications by hand to computational scientists and engineers who are driven to obtain the best possible performance of their complex applications.


The approaches presented are based on research conducted over the past two decades, emphasizing the strategies implemented in research prototypes at Rice University and in several associated commercial systems. Randy Allen and Ken Kennedy have provided an indispensable resource for researchers, practicing professionals, and graduate students engaged in designing and optimizing compilers for modern computer architectures.

* Offers a guide to the simple, practical algorithms and approaches that are most effective in real-world, high-performance microprocessor and parallel systems.
* Demonstrates each transformation in worked examples.
* Examines how two case study compilers implement the theories and practices described in each chapter.
* Presents the most complete treatment of memory hierarchy issues of any compiler text.
* Illustrates ordering relationships with dependence graphs throughout the book.
* Applies the techniques to a variety of languages, including Fortran 77, C, hardware definition languages, Fortran 90, and High Performance Fortran.
* Provides extensive references to the most sophisticated algorithms known in research.

Customer Reviews:

5 out of 5 stars Must-have for compiler writers and processor designers.......2007-01-15

Allen and Kennedy (A&K) haven't written your first compiler book. There's nothing about syntax analysis, code generation, instruction scheduling, or intermediate representations. You already know all that part, or you won't get very far in this book. Once you have the basics down, A&K is an irreplaceable reference.

It centers heavily on Fortran - even today, a mainstay of scientific computing and an active area of language development. Today, just as 50 years ago, the language's straightforward structure makes detailed behavioral analysis relatively easy. That's especially true in handling the array computations that soak up so many dozens (as of this writing) of CPU-hours per second on todays largest machines. There's far too much to summarize here, but A&K cover a huge range of processor features, including caches, multiple ALUs, vector units, chaining, and more. C code gets some attention as well, much needed because of the cultural weirdness around array handling in C. In every case, the focus is on the real-world kernels that need the help and on explicit ways of identifying and manipulating those code structures. As a result, the authors disregard the unreal situations that sometimes arise, e.g. in
"while (--n) *a++ = *b++ * *c++;"
Yes, the arrays pointed to by a, b, and c can overlap. But the pointer a can also point to a, b, c, or n, somewhere in its range - and likewise for pointers b and c, or all three. There is essentially no limit to how bad this can get, e.g when n is an alias for a, b, or c. Yes these are rare situations and generally errors - but I've seen on-the-fly code generation in production environments, so even the A&K example isn't as bad as it gets. I admit these to be pathological cases, though, better suited to an 'Obfuscated C' contest than to a compiler textbook.

The real disappointment comes from the section on compilation for Verilog and VHDL, and that disappointment may be a matter of emphasis only. The authors focus heavily on the strangeness of four-valued bits, which exist in Verilog and VHDL simulation, but not in synthesis. I.e., not in what really matters to a deployed application. The real challenge lies in compilation of C or Fortran into gates, a topic that the authors barely skim. That, however, is still a field of research exotica. It should be mentioned in a general book on compilation, as it is here, but awaits a text of its own.

All you processor designers out there should read the title a little differently. You should read this as "Modern Architectures for Optimizing Compilers," but you probably worked that out for yourself. If you have the luxury to define your own memory structure, all that analysis of memory access will give you plenty of ideas for your next ASIP. It will certainly give you lots of ways to quantify the behavior of your target applications, so you'll know just how to get the most MIPS per Mgate, including hard limits on how much hardware paralellism can actually do you any good.

All architects of performance computing systems, hardware or software, need this book. Even application developers can learn better ways to cooperate with the compilers and tools that run their codes. It has my very highest recommendation.

//wiredweird

5 out of 5 stars Very readable, very specific.......2005-08-11

This book is a very thorough look through all the ways you can extract and use parallelism and data dependencies advantageously in an optimized compiler, depending on your target architecture. As one example, this book contains every imaginable way to deal with arrays and loops and the maddeningly complex data dependancies that can result from their various interminglings. The book is refreshingly easy to read and contains pseudo-code and step-by-step examples everywhere you'd want to see them.

5 out of 5 stars An excellent book on loop based optimization.......2003-04-14

Randy Allen and Ken Kennedy are famous for their contributions
to compiler design theory. This book is a clearly written
discussion of the issues involving loop optimization and
dependence analysis. While this book also covers scalar
optimization issues, it is naturally complemented by Steven
S. Muchnick's excellent book "Advanced Compiler Design and
Implementation".

Randy Allen has spent many years implementing a variety of
compilers for supercomputers and hardware design languages.
While Ken Kennedy has published seminal theoretical work on
compiler optimization, he has also been involved in hands on
implementation as well. The experience of these two authors
results in a book which covers the huge body of knowledge in
compiler optimization and provides this knowledge in a
practical form that can be used by software engineers working
on compiler design.

For anyone working on modern compilers that require sophisticated
optimization features, this is an important reference work.
As with Muchnick's book, I have owned this since it was first
published. Rereading it reminds me of what a gem this work is.

5 out of 5 stars Finally, everything in one place........2003-02-05

As a researcher in the field, this book was immediately useful to me. Nearly every source code transformation and optimization technique that I'm aware of is present in this book, which often saves sifting through stacks of papers or looking for an elusive reference. If you're looking for a book to teach you the basics of how compilers work, it certainly is not the appropriate place to begin, but if you already have one good book on that then this book will make an excellent companion to it. It was slightly annoying that the book comes with two loose pages, one errata list and another to tape over a page early in the book, but that's what you get with 1st editions. Overall it's very good and the errors are very minor typos as opposed to factual goofs.
Modern Instrumentation: A Computer Approach
Average customer rating: Not rated
    Modern Instrumentation: A Computer Approach
    G Silverman , and H Silver
    Manufacturer: Taylor & Francis
    ProductGroup: Book
    Binding: Hardcover

    GeneralGeneral | Microprocessors & System Design | Hardware | Computers & Internet | Subjects | Books
    GeneralGeneral | Computers & Internet | Subjects | Books
    GeneralGeneral | Operating Systems | Computers & Internet | Subjects | Books
    Robotics & AutomationRobotics & Automation | Computer Technology | Engineering | Professional & Technical | Subjects | Books
    GeneralGeneral | Electrical & Electronics | Engineering | Professional & Technical | Subjects | Books
    MeasurementsMeasurements | Electrical & Electronics | Engineering | Professional & Technical | Subjects | Books
    GeneralGeneral | Engineering | Professional & Technical | Subjects | Books
    MeasurementMeasurement | Special Topics | Engineering | Professional & Technical | Subjects | Books
    AutomationAutomation | Mechanical | Engineering | Professional & Technical | Subjects | Books
    GeneralGeneral | Physics | Professional Science | Professional & Technical | Subjects | Books
    Instruments & SuppliesInstruments & Supplies | Reference | Medicine | Medical | Professional & Technical | Subjects | Books
    Instruments & SuppliesInstruments & Supplies | Reference | Medicine | Subjects | Books
    GeneralGeneral | Physics | Science | Subjects | Books
    Look Inside Computer BooksLook Inside Computer Books | Trip | Specialty Stores | Books
    Look Inside Science BooksLook Inside Science Books | Trip | Specialty Stores | Books
    ASIN: 0750302984

    Book Description

    Modern science and engineering relies heavily on understanding computer hardware and software in order to make effective use of these tools in the laboratory and industrial environments. The authors of Modern Instrumentation: A Computer Approach have succeeded in producing a highly readable source that will serve both newcomers to the field as well as experienced professionals. Including both fundamentals and applications, the book first describes the role of the computer in instrument systems and provides numerous practical examples. The second part of the book explores specific software packages and their capabilities for applications such as, instrument design and simulation, data acquisition, data processing, and the potential of artificial intelligence in instrument design. Because of the full integration of theory with practical applications of leading software packages, this book is an extremely useful reference for those who use computer-based instrument technology for data acquisition and who are involved with hardware or software development for laboratory and process control.

    UNIX(R) Systems for Modern Architectures: Symmetric Multiprocessing and Caching for Kernel Programmers (Addison-Wesley Professional Computing Series)
    Average customer rating: 4.5 out of 5 stars
    • Great Book for Linux Kernel People
    • What's there is good, but...
    • THE book if you are a kernel/threading developer.
    • Wonderful Book
    • A "Must Have" book for OS professionals and students.
    UNIX(R) Systems for Modern Architectures: Symmetric Multiprocessing and Caching for Kernel Programmers (Addison-Wesley Professional Computing Series)
    Curt Schimmel
    Manufacturer: Addison-Wesley Professional
    ProductGroup: Book
    Binding: Paperback

    Computer DesignComputer Design | Microprocessors & System Design | Hardware | Computers & Internet | Subjects | Books
    Design & ArchitectureDesign & Architecture | Hardware | Computers & Internet | Subjects | Books
    GeneralGeneral | Unix | Operating Systems | Computers & Internet | Subjects | Books
    GeneralGeneral | Operating Systems | Computers & Internet | Subjects | Books
    UnixUnix | APIs & Operating Environments | Programming | Computers & Internet | Subjects | Books
    GeneralGeneral | Programming | Computers & Internet | Subjects | Books
    MathematicsMathematics | Professional Science | Professional & Technical | Subjects | Books | Applied | Chaos & Systems | Geometry & Topology | Mathematical Analysis | Mathematical Physics | Number Systems | Pure Mathematics | Transformations | Trigonometry
    Operating SystemsOperating Systems | Computer Science & Information Systems | New & Used Textbooks | Stores | Books
    All TitlesAll Titles | Qualifying Textbooks - Fall 2007 | Stores | Books
    Computers & InternetComputers & Internet | Qualifying Textbooks - Fall 2007 | Stores | Books
    ProfessionalProfessional | Qualifying Textbooks - Fall 2007 | Stores | Books
    Look Inside Computer BooksLook Inside Computer Books | Trip | Specialty Stores | Books
    Similar Items:
    1. UNIX Internals: The New Frontiers UNIX Internals: The New Frontiers
    2. Solaris(TM) Performance and Tools: DTrace and MDB Techniques for Solaris 10 and OpenSolaris (Solaris Series) Solaris(TM) Performance and Tools: DTrace and MDB Techniques for Solaris 10 and OpenSolaris (Solaris Series)
    3. Linux Kernel Development (2nd Edition) (Novell Press) Linux Kernel Development (2nd Edition) (Novell Press)
    4. Understanding the Linux Kernel Understanding the Linux Kernel
    5. UNIX Filesystems: Evolution, Design, and Implementation UNIX Filesystems: Evolution, Design, and Implementation

    ASIN: 0201633388

    Customer Reviews:

    5 out of 5 stars Great Book for Linux Kernel People.......2002-09-06

    I recently started working on the Linux kernel and found myself
    perplexed by the multiprocessor code I found. After asking
    around, a number of the more experienced Linux kernel developers
    recommended this book. It's excellent! It taught me everything
    I needed to know to get my work done. Plus there's the added
    bonus that this book thoroughly covers cache architecture and its
    interaction with the operating system. I highly recommend this
    book to anyone working on the Linux kernel. It has far more depth and detail on multiprocessing and cache management than any
    of the Linux books I've seen. And it's the only book I've ever
    seen that so thoroughly explains the hardware involved in caches
    and multiprocessors and their effects on the operating system in
    a way that's easy to understand.

    3 out of 5 stars What's there is good, but..........2001-10-25

    In many ways this is a great book. The subject is one that is known to induce headaches, and the author covers it with truly admirable clarity. It's worth buying the book for the chapter on cache consistency alone; like many others, I had to spend years piecing the same information together from varied sources, and it would be hard to overstate the value of having it all in one place.

    So why only three stars? The problem is that the book is incomplete. Cache systems and virtual-memory systems interact in myriad ways, but you wouldn't know that from reading this book. Similarly, storage and networking subsystems are often the bloodiest battlegrounds with respect to multiprocessor synchronization, and yet special considerations in those areas are not covered. Many old architectures (e.g. Apollo, ELXSI) are mentioned, and yet NUMA never even gets a nod. I know that covering all of these topics in any kind of depth would be impossible in a single book of any reasonable length, but their *total* omission is something I consider unacceptable.

    This is a book I would recommend without hesitation to any number of people. Unfortunately, that recommendation would always have to be accompanied by recommendations for other books that pick up where this one inexplicably leaves off.

    5 out of 5 stars THE book if you are a kernel/threading developer........2000-09-21

    I work on MP SVR4 kernels and this book is where I got most of my basics on MP from. I didn't understand the contents all at once - especially the initial intro to memory models in chapter 8, but after reading the SPARC specs (V8 & V9) and chapter 13, I can see how all this is relevant.

    If you are porting a unix or any OS for that matter to todays architectures, this book should help clear up what issues you would encounter and how best to solve them. For example the memory models and consistency guarantees of the source architecture and how they compare to the destination.

    And ofcourse its a great aid to understanding any contemporary OS' kernel code.

    veliath

    5 out of 5 stars Wonderful Book.......1999-11-30

    This book is amazing. I wanted to learn more about synchronization on multiprocessor systems, this book covers that better than any other source I have found.

    If you want to understand SMP systems and the programming issues they cause, this is the book.

    5 out of 5 stars A "Must Have" book for OS professionals and students........1999-02-25

    I just recently discovered this book and I wish I knew about it a couple of years ago. Not only did I learn a lot but it improved my understanding of things I thought I knew. The things you learn in this book are applicable to any operating system. The examples use standard UNIX to illustrate things, but everything applies just as easily to Linux, NT, or any other operating system you're working on.
    Modern Data Warehousing, Mining, and Visualization: Core Concepts
    Average customer rating: Not rated
      Modern Data Warehousing, Mining, and Visualization: Core Concepts
      George M. Marakas
      Manufacturer: Prentice Hall
      ProductGroup: Book
      Binding: Paperback

      GeneralGeneral | Business & Investing | Subjects | Books
      MISMIS | Industries & Professions | Business & Investing | Subjects | Books
      Office AutomationOffice Automation | Skills | Business & Investing | Subjects | Books
      Data MiningData Mining | Databases | Computers & Internet | Subjects | Books
      Data WarehousingData Warehousing | Databases | Computers & Internet | Subjects | Books
      GeneralGeneral | Databases | Computers & Internet | Subjects | Books
      GeneralGeneral | Computers & Internet | Subjects | Books
      MathematicsMathematics | Professional Science | Professional & Technical | Subjects | Books | Applied | Chaos & Systems | Geometry & Topology | Mathematical Analysis | Mathematical Physics | Number Systems | Pure Mathematics | Transformations | Trigonometry
      All TitlesAll Titles | Qualifying Textbooks - Fall 2007 | Stores | Books
      Business & InvestingBusiness & Investing | Qualifying Textbooks - Fall 2007 | Stores | Books
      Computers & InternetComputers & Internet | Qualifying Textbooks - Fall 2007 | Stores | Books
      ProfessionalProfessional | Qualifying Textbooks - Fall 2007 | Stores | Books
      Similar Items:
      1. Business Intelligence Roadmap: The Complete Project Lifecycle for Decision-Support Applications Business Intelligence Roadmap: The Complete Project Lifecycle for Decision-Support Applications
      2. Data Warehousing Fundamentals: A Comprehensive Guide for IT Professionals Data Warehousing Fundamentals: A Comprehensive Guide for IT Professionals
      3. Managerial Issues of Enterprise Resource Planning Systems Managerial Issues of Enterprise Resource Planning Systems
      4. Data and Text Mining: A Business Applications Approach Data and Text Mining: A Business Applications Approach
      5. Decision Support Systems and Megaputer (2nd Edition) Decision Support Systems and Megaputer (2nd Edition)

      ASIN: 0131014595

      Book Description

      Written from a multidisciplinary user/manager approach—rather than a designer approach, this text looks at data warehousing technologies necessary to support the business processes of the twenty-first century. It explores the basic concepts of data mining, warehousing, and visualization—with an emphasis on both technical and managerial issues and the implication of these modern emerging technologies on those issues. Includes mini-cases, narrative vignettes, and an abundance of graphics. Data mining and visualization exercises—using an included fully-enabled, but time-limited version of Megaputer's PolyAnalyst and TextAnalyst data mining and visualization software—give readers hands-on experience with real-world applications. The Data Warehouse. Data Mining and Data Visualization. Data Mining Technologies. Executive Information Systems. Designing and Building the Data Warehouse. The Future of Data Mining, Warehousing, and Visualization.
      Modern Compiler Implementation in C: Basic Techniques
      Average customer rating: 4 out of 5 stars
      • Good, but error-ridden
      Modern Compiler Implementation in C: Basic Techniques
      Andrew W. Appel , and Maia Ginsburg
      Manufacturer: Cambridge University Press
      ProductGroup: Book
      Binding: Paperback

      GeneralGeneral | C | Programming | Computers & Internet | Subjects | Books
      CompilersCompilers | Languages & Tools | Programming | Computers & Internet | Subjects | Books
      GeneralGeneral | Languages & Tools | Programming | Computers & Internet | Subjects | Books
      Software DevelopmentSoftware Development | Software Design, Testing & Engineering | Programming | Computers & Internet | Subjects | Books
      GeneralGeneral | Programming | Computers & Internet | Subjects | Books
      Design Tools & TechniquesDesign Tools & Techniques | Software Engineering | Computer Science | Computers & Internet | Subjects | Books
      Information SystemsInformation Systems | Software Engineering | Computer Science | Computers & Internet | Subjects | Books
      GeneralGeneral | Computers & Internet | Subjects | Books
      GeneralGeneral | Operating Systems | Computers & Internet | Subjects | Books
      GeneralGeneral | Software | Computers & Internet | Subjects | Books
      GeneralGeneral | Reference | Subjects | Books
      Look Inside Computer BooksLook Inside Computer Books | Trip | Specialty Stores | Books
      Look Inside Reference BooksLook Inside Reference Books | Trip | Specialty Stores | Books
      Similar Items:
      1. Compiler Design in C (Prentice-Hall Software Series) Compiler Design in C (Prentice-Hall Software Series)

      ASIN: 0521586534

      Book Description

      This textbook explains all phases of a modern compiler: lexical analysis, parsing, abstract syntax, semantic actions, intermediate representations, instruction selection via tree matching, dataflow analysis, graph-colouring register allocation with coalescing, and runtime systems. It covers current techniques in code generation and register allocation, as well as functional and object-oriented languages, which are missing from most books. The author illustrates the most accepted and successful techniques in a concise way, rather than as an exhaustive catalogue of every possible variant. Detailed descriptions of the interfaces between modules of a compiler are illustrated with actual C header files. A unique feature of the book is a well-designed compiler implementation project in C, including front-end and ‘high-tech’ back-end phases, so that students can build a complete working compiler in one semester. The textbook is meant for use in a one-semester first course for undergraduates in compiler design. Accompanying support software is available.

      Customer Reviews:

      4 out of 5 stars Good, but error-ridden.......1998-04-02

      This book provides a great overview of compiler-writing in general, with excellent discussions of issues like parsing, code generation, register allocation, and optimizations. This particular version (the C version) of the book, however, seems to contain a lot of typos in the code samples -- even without a compiler, I could see that most of them will not compile. If you can figure out what he meant, however, the algorithms are very sound.
      Modern VLSI Design: System-on-Chip Design (3rd Edition)
      Average customer rating: 3 out of 5 stars
      • Weak and disorganized
      • covers current ideas
      Modern VLSI Design: System-on-Chip Design (3rd Edition)
      Wayne Wolf
      Manufacturer: Prentice Hall PTR
      ProductGroup: Book
      Binding: Paperback

      CircuitsCircuits | Electrical & Electronics | Engineering | Professional & Technical | Subjects | Books | Design | Digital Integrated Circuit Design | General | Integrated | Microwave
      GeneralGeneral | Electrical & Electronics | Engineering | Professional & Technical | Subjects | Books
      MicroelectronicsMicroelectronics | Electronics | Electrical & Electronics | Engineering | Professional & Technical | Subjects | Books
      GeneralGeneral | Electronics | Electrical & Electronics | Engineering | Professional & Technical | Subjects | Books
      Very-Large-Scale Integration (VLSI)Very-Large-Scale Integration (VLSI) | Electrical & Electronics | Engineering | Professional & Technical | Subjects | Books
      GeneralGeneral | Science | Subjects | Books
      Circuit ComponentsCircuit Components | Circuitry | Computer Science | Computers & Internet | Subjects | Books
      GeneralGeneral | Arts & Photography | Subjects | Books
      Electrical & ElectronicsElectrical & Electronics | Engineering | New & Used Textbooks | Stores | Books
      All TitlesAll Titles | Qualifying Textbooks - Fall 2007 | Stores | Books
      Arts & PhotographyArts & Photography | Qualifying Textbooks - Fall 2007 | Stores | Books
      Computers & InternetComputers & Internet | Qualifying Textbooks - Fall 2007 | Stores | Books
      ProfessionalProfessional | Qualifying Textbooks - Fall 2007 | Stores | Books
      ScienceScience | Qualifying Textbooks - Fall 2007 | Stores | Books
      Look Inside Art BooksLook Inside Art Books | Trip | Specialty Stores | Books
      Look Inside Computer BooksLook Inside Computer Books | Trip | Specialty Stores | Books
      Similar Items:
      1. Logical Effort: Designing Fast CMOS Circuits (The Morgan Kaufmann Series in Computer Architecture and Design) Logical Effort: Designing Fast CMOS Circuits (The Morgan Kaufmann Series in Computer Architecture and Design)
      2. Digital Integrated Circuits (2nd Edition) Digital Integrated Circuits (2nd Edition)
      3. Multiprocessor Systems-on-Chips (Systems on Silicon) Multiprocessor Systems-on-Chips (Systems on Silicon)
      4. FPGA-Based System Design (Prentice Hall Modern Semiconductor Design Series: PH Signal Integrity Library) FPGA-Based System Design (Prentice Hall Modern Semiconductor Design Series: PH Signal Integrity Library)
      5. Application-Specific Integrated Circuits (The VLSI Systems Series) Application-Specific Integrated Circuits (The VLSI Systems Series)

      ASIN: 0130619701

      Customer Reviews:

      2 out of 5 stars Weak and disorganized.......2006-07-14

      After some years in the IC design business (mostly analog) I needed to teach a course on ASICSs. This book was the text specified by my predecessor. I did not like the book, and eventually read the Weste and Harris book in its 3rd edition. Wolf is not nearly as clear, complete and logically organized as Weste and Harris - no comparison.

      4 out of 5 stars covers current ideas.......2005-04-24

      A start of the art chip may well have over 10 million or 100 million transistors. How to design such a formidable device? Wolf gives a decent explanation to the student or engineer. You have to be careful here. The term VLSI has been in wide use since the 80s. There are scads of books with "VLSI" in their titles. Yet an unwary reader might end up trolling an obsolete text. With Wolf's book, the material reflects current design standards.

      One clear difference between his book and a text from, say, 1990, is the relative deprecating of small scale circuit design. To be sure, he does explain various techniques for putting together simple circuits. These are still necessary skills. But much higher level design skills now come into play when dealing with millions of transistors.

      For instance, scrutinise the chapter on floor planning. The real estate taken up by interconnect is a significant fraction of the chip. Being able to optimise subsystem layout according to various criteria like distributing a clock with minimal skew or distributing sufficient power is vital. Luckily, it is not all rule of thumb. The chapter delves into various methods to aid you.

      The book should give you a good exposure to VLSI ideas.

      Books:

      1. Network+ Exam Prep 2 (Exam Prep N10-003) (Exam Cram 2)
      2. Object-Oriented Thought Process, The (2nd Edition) (Developer's Library)
      3. PMP: Project Management Professional Study Guide, 3rd Edition
      4. Practical Guidelines and Best Practices for Microsoft Visual Basic and Visual C# Developers (Pro-Developer)
      5. Practical Switching Power Supply Design (Academic Press Professional and Technical Series)
      6. Pro .NET 2.0 Windows Forms and Custom Controls in C#
      7. Pro .NET 2.0 Windows Forms and Custom Controls in C#
      8. Professional Ajax, 2nd Edition (Programmer to Programmer)
      9. Programming Microsoft ADO.NET 2.0 Core Reference
      10. Programming WCF Services (Programming)

      Books Index

      Books Home

      Recommended Books

      1. Control Systems Engineering
      2. When You and Your Mother Can't Be Friends: Resolving the Most Complicated Relationship of Your Life
      3. Prentice Hall's Federal Taxation 2002: Corporations, Partnerships, Estates, and Trusts
      4. The 50 Most Influential Black Films: A Celebration of African-American Talent, Determination, and Cr
      5. The Venture Capital Legal Handbook: Top Lawyers & Venture Capitalists on the Laws and Documents
      6. Weather Flying
      7. Turbulent Years: The 60s
      8. Accounting and Information Systems/Book and 3 1/2" Disk
      9. The Academic Scribblers
      10. The Sonnets CD set