Home :: Books :: Computers & Internet  

Arts & Photography
Audio CDs
Audiocassettes
Biographies & Memoirs
Business & Investing
Children's Books
Christianity
Comics & Graphic Novels
Computers & Internet

Cooking, Food & Wine
Entertainment
Gay & Lesbian
Health, Mind & Body
History
Home & Garden
Horror
Literature & Fiction
Mystery & Thrillers
Nonfiction
Outdoors & Nature
Parenting & Families
Professional & Technical
Reference
Religion & Spirituality
Romance
Science
Science Fiction & Fantasy
Sports
Teens
Travel
Women's Fiction
UNIX Filesystems: Evolution, Design, and Implementation

UNIX Filesystems: Evolution, Design, and Implementation

List Price: $45.00
Your Price: $29.70
Product Info Reviews

<< 1 >>

Rating: 1 stars
Summary: Yet another wannabe Linux filler book
Review: After reading the forward, I was under the impression that this book is targetting at non-kernel engineers. I thought that I had enough of a technical background on kernel concepts and the like to get a great deal out this book. I'm finishing up chapter 7 as I write this and so far I am disappointed.

Maybe I don't have enough prior knowledge to be getting more out of the first half of this book. Base on what I've read so far, the title should be "Unix filesystems: A background and quick overiew". Personally, I feel that a book on "Unix Filesystems: Evolution, Design and Implementation" should spend more than 35 pages (chap 5, 6) on the key kernel data-structures, and their respective interaction, that underpin unix filesytem internals (from the process table to file table to inodes to disk).

This book provides a quick overview of the above, which in my opinion is inadequate. Maybe I'm just approaching this book in the wrong way. I'm not really sure who the author's intended target audience is.

Rating: 5 stars
Summary: Good supplements for UNIX internals
Review: As the author claims, this book supplements other UNIX internals books, because they lack a thorough discussion on filesystems. For example, for a long time I've been puzzled by the pseudo code for read(2) system call in Maurice Bach's book. An inode lock is taken even for read() (Design of the UNIX Operating System, p.97) That doesn't sound right. ufs_inode.h on Solaris implies that ufs uses rwlock (multi-reader/single-writer lock; forget the modern concurrent direct I/O for now). Jim Mauro's "Solaris Internals" talks about rwlocks and filesystems in separate chapters but not in the same context. Here Steve's book tells us that filesystems didn't use rwlocks almost until the time SVR4 came out, and Bach's book was written before that. This is just one example of the mysteries Steve's book solved for me. I also like Steve's examples of using Solaris crash(1M). (I even collected them in a web page: rootshell.be/~yong321/computer/SolarisMdb.txt).

Superb technical details aside, this book is also written in good pedagogical style. Hands-on exercises always help. (How many people have read Goodheart's "Magic Garden" book for longer than a week?) Some code examples, pseudo or real, also help. Steve's book has both. Lastly, it comes with a mini-filesystem. I didn't test it but I believe it would help CS students tremendously.

Since the book is just much about Solaris as about Linux, I wish he talked more about Linux debugfs() and perhaps could use gdb to debug ext2 filesystems. I hope the new edition, if there is one, can give examples of Solaris mdb since crash is deprecated, and can expand the examples to include some new FSs, riserfs, Oracle's OCFS, etc. (Both have source code available to the public.) In chapters about cluster filesystems, the technical discussion seems to be less strong. There must be ways to debug these FSes just like using crash() and adb() to follow pointers in memory to debug UFS. It's just that cluster FSes are less understood and studied in this fashion.

Rating: 5 stars
Summary: Good book, encourages the reader to experiment and learn
Review: I have to disagree with the "wannabe Linux filler book" another reviewer mentioned, it's a eye catching "sound bite" but in this instance it is not valid. The text is largely neutral with respect to specific flavours of platform and file system though obviously the author's experiences, source code availability and legal restrictions with respect to commercial products all play a part. Yes you can state that some reference texts are available from the Internet but the author has yet again made the subject accessible to a much larger audience through making the subject matter approachable in much the same way as he did with his book, "UNIX Internals." The example file system is written for Linux but that is a reasonable choice as it maximises accessibility for the reader.

The author obviously wants the reader to learn through experimentation and actively encourages this with a number of step by step examples that the reader can easily both repeat on their systems and use as a starting point for their own "what if?" experimentation on the subject matter.

Perhaps including a little more information on other current filesystems would make a good book better as mentioned in another review, but only if it provided the author with a starting point for taking the reader through examples of another filesystem feature, or perhaps an opportunity to compare and contrast solutions to a given design issue.

Including UNIX filesystem history was both interesting and helpful in as much as it provides a context through which the reader can understand why the introduction of features such as page cache, Sun's vnode layer etc were necessary or useful.

In summary, I found the book an interesting read and I was not disappointed with my purchase.

Rating: 5 stars
Summary: Good book, encourages the reader to experiment and learn
Review: I have to disagree with the "wannabe Linux filler book" another reviewer mentioned, it's a eye catching "sound bite" but in this instance it is not valid. The text is largely neutral with respect to specific flavours of platform and file system though obviously the author's experiences, source code availability and legal restrictions with respect to commercial products all play a part. Yes you can state that some reference texts are available from the Internet but the author has yet again made the subject accessible to a much larger audience through making the subject matter approachable in much the same way as he did with his book, "UNIX Internals." The example file system is written for Linux but that is a reasonable choice as it maximises accessibility for the reader.

The author obviously wants the reader to learn through experimentation and actively encourages this with a number of step by step examples that the reader can easily both repeat on their systems and use as a starting point for their own "what if?" experimentation on the subject matter.

Perhaps including a little more information on other current filesystems would make a good book better as mentioned in another review, but only if it provided the author with a starting point for taking the reader through examples of another filesystem feature, or perhaps an opportunity to compare and contrast solutions to a given design issue.

Including UNIX filesystem history was both interesting and helpful in as much as it provides a context through which the reader can understand why the introduction of features such as page cache, Sun's vnode layer etc were necessary or useful.

In summary, I found the book an interesting read and I was not disappointed with my purchase.

Rating: 3 stars
Summary: Not an FS design related book but...
Review: Let's face it: there's a dearth of books out there about filesystems. There are plenty of journals, but if you understand them, you wouldn't need a book like this. If you're trying to get your feet wet, you're often trying to learn more without knowing what to learn and where to find it.

Steve Pate's "UNIX Filesystems" helps fill this void. It is *not* intended for beginners; a book like "Linux Filesystems" (Von Hagen) would be better choice for someone who wants to start from the ground up. Once you're up, that's when the value of Pate's book kicks in.

Some have accused this book of being "yet another wannabe Linux filler book" -- this is simply not the case. For one thing, a Linux filler book is just a collection of man pages that have been casually rewritten into a barebones outline. They don't go in-depth -- they can't, because they really have nothing specific to say. "UNIX Filesystems" goes into great detail -- not as much as technical papers, granted, but then this book is easier to read than your average technical paper. As for it being a "Linux" book: a reading of the title and table of contents confirms that this book is about UNIX, a broader category of which Linux is a part.

Pate covers three major filesystems: ext2/3 (the baseline for GNU/Linux systems for years now), UFS (baseline for BSD systems), and VxFS. That's a nice spread of material: two of the most popular open filesystems plus the proprietary filesystem found on many proprietary UNIXes. (Perhaps this will annoy some diehard Linux enthusiasts, but it shouldn't. Linus Torvalds knows more about the FreeBSD kernel than most give him credit for, so learning from the competition is hardly a bad thing. And as a Linux user with no animosity toward BSD users, I'm glad to see UFS get a chance in the spotlight.)

If I had a gripe about this book, it's that it doesn't cover more filesystems. (I'd like to have seen Reiserfs, among others). However, this is a patently unfair criticism -- Pate didn't set out to write the filesystems Bible -- so just take this as my two cents.

This book is definitely worth looking into if you know a little something about filesystems and are ready for more.

Rating: 5 stars
Summary: Worth looking into
Review: Let's face it: there's a dearth of books out there about filesystems. There are plenty of journals, but if you understand them, you wouldn't need a book like this. If you're trying to get your feet wet, you're often trying to learn more without knowing what to learn and where to find it.

Steve Pate's "UNIX Filesystems" helps fill this void. It is *not* intended for beginners; a book like "Linux Filesystems" (Von Hagen) would be better choice for someone who wants to start from the ground up. Once you're up, that's when the value of Pate's book kicks in.

Some have accused this book of being "yet another wannabe Linux filler book" -- this is simply not the case. For one thing, a Linux filler book is just a collection of man pages that have been casually rewritten into a barebones outline. They don't go in-depth -- they can't, because they really have nothing specific to say. "UNIX Filesystems" goes into great detail -- not as much as technical papers, granted, but then this book is easier to read than your average technical paper. As for it being a "Linux" book: a reading of the title and table of contents confirms that this book is about UNIX, a broader category of which Linux is a part.

Pate covers three major filesystems: ext2/3 (the baseline for GNU/Linux systems for years now), UFS (baseline for BSD systems), and VxFS. That's a nice spread of material: two of the most popular open filesystems plus the proprietary filesystem found on many proprietary UNIXes. (Perhaps this will annoy some diehard Linux enthusiasts, but it shouldn't. Linus Torvalds knows more about the FreeBSD kernel than most give him credit for, so learning from the competition is hardly a bad thing. And as a Linux user with no animosity toward BSD users, I'm glad to see UFS get a chance in the spotlight.)

If I had a gripe about this book, it's that it doesn't cover more filesystems. (I'd like to have seen Reiserfs, among others). However, this is a patently unfair criticism -- Pate didn't set out to write the filesystems Bible -- so just take this as my two cents.

This book is definitely worth looking into if you know a little something about filesystems and are ready for more.

Rating: 3 stars
Summary: Not an FS design related book but...
Review: This book is not a filesystem design or specification book. The explainations are high level overviews of the workings of various filesystems. It explains VFS and how the kernel abstracts various filesystems, what the basic design principles of each are and nothing more. The title of this book is somewhat misleading as it sounds like a book for programmers (reason I purchased it), but is more geared towards sysadmins.

A better title would have been "Filesystems Explained" or something of the sort. I guess "Design and Implementation" sounded cool....


<< 1 >>

© 2004, ReviewFocus or its affiliates