hes@ecsvax.UUCP (Henry Schaffer) (10/09/85)
<>I saw a couple of recommendations - so I went to our library to check it out. Our library didn't have it (yet), nor was it in Books in Print (the main series or the supplement.) HOwever, I was able to track down the info about the book (from OCLC), and here it is: Advanced UNIX Programming by Rochkind, Marc J. Prentice-Hall 1985 ISBN:0130118184 ~$32.95 (hard cover) 0130118001 ~$24.95 (paperback) At our normal library ordering/cataloging/etc. speeds, it'll be months before I see it. If anybody has a copy, a review (even a brief one) would be appreciated. --henry schaffer
POSER@SU-CSLI.ARPA (Bill Poser) (10/13/85)
I won't venture a proper review, but I've bought the book and read most of it, on the basis of which I recommend it. It's very clear and well written and contains discussions of a lot of things that I have had to learn by reading the manuals and experimenting. The title is very accurate: it doesn't tell you anything about UNIX internals or implementation details; it's about programming (and assumes a knowledge of C) on a UNIX system. Unlike many other more elementary UNIX books it has little to say about shell programming or use of UNIX utilities. In this sense it is largely complementary to Kernighan & Pike's "The UNIX Programming Environment". What it is really about is how to use the services provided by the kernel, i.e. how to use system calls. I think it does a good job of this. It is organized functionally, with chapters on such topics as signals, semaphores, process management, and terminal i/o. In addition to overviews, many sections begin with synopses of the relevant system calls followed by explanations of their use. I haven't thus far encountered any inaccuracies, though I don't know all of the versions of UNIX covered or everything abut the ones I am familiar with. My only complaints are matters of ommission. The book is oriented more toward AT&T UNIX than toward Berkeley UNIX, and the discussion of some topics is restricted to non-Berkeley versions of UNIX; for example, there is no discussion of signals in 4.2BSD. The authors do at least tell you when what they have to say does not apply to some version(s) of UNIX. The other thing that I would have liked to see is somewhat more attention to low-level systems programming, e.g. device drivers and other kinds of real-time applications. There is a rather heavy emphasis on inter-process communication, with a lot of discussion of issues related to DBMS implementation. Although it doesn't cover everything I'd like to know more about, I definitely recommend it for what it does cover. -------
peter@rlgvax.UUCP (Peter Klosky) (10/16/85)
XXX Title: The Unix Operating System Author: Kaare Christian Publisher: Wiley & Sons, 1983 This book has two very good chapters at the end, "System Manager's Utilities" and "The UNIX System Kernel." The manager's section describes how to run cron, fsck, mknod, what a setuid bit means, etc. The author's style of writing makes this book easy to read, even for non-programmers. The kernel chapter is good in terms of explaining data structures such as what is a u area, how do the file structs point at inodes, etc. The author takes the time to explain each task that must be performed in order to open ../a/b so that actual people can understand. He is kind enough to explain such subtle things such as what is the purpose of the cdevsw and bdevsw array and how conf.c fits into the scheme. My only complaint is that the two decent chapters of the book are too short; too bad he had to spend so many chapters explaining how to write shell scripts and use ed.