[net.lang.c] BOOKS: Advanced UNIX

ijk@hou2a.UUCP (I.KINAL) (11/18/85)

Has anyone any recommendations on either book (both published by Prentice
Hall; I haven't seen them yet in my local bookstore; they both look
interesting, but I've seen some pretty poor books hyped even better ).  
Here's the promos on both:
------------------------
Advanced UNIX (TM) Programming by Marc J. Rochkind.  Here's comprehensive,
practical advice on how and when to use - and not use system calls.  
265 pp. $32.95.

Systems Software Tools by Ted J. Biggerstaff.  This easy-to-follow, new
guide gives you the latest details on the C language and compiler, 
interrupt and communications hardware, terminal emulators, window 
interfaces, multitasking window systems, and concurrency structures.
250 pp. $28.95.
-----------------------

Thanx in advance
Ihor Kinal
{hou2a | hru3c} !ijk

gwyn@BRL.ARPA (VLD/VMB) (11/19/85)

Rochkind's "Advanced UNIX Programming" is excellent for its
intended audience, which is people who know C programming
and need to learn about UNIX-specific programming.  It does
not much overlap Kernighan & Pike's "The UNIX Programming
Environment"; these two books, along with Kernighan &
Ritchie's "The C Programming Language", constitute a very
good learning library for UNIX system programming.

I haven't seen Biggerstaff's book.

geoff@utcs.uucp (Geoff Collyer) (11/20/85)

I have not read Advanced UNIX (TM) Programming by Marc J. Rochkind,
but I do know some of his background:

	Marc J. Rochkind helped write the UNIX re-implementation of SCCS

and he's still proud of it (unbowed and unrepentant), judging from his
recent advertising.  (SCCS originally ran on MVS or MVT, as I recall,
and was rewritten for PWB.)  If this means nothing to you, try reading
the SCCS sources or manuals or try using SCCS.

jpl@allegra.UUCP (John P. Linderman) (11/22/85)

> I have not read Advanced UNIX (TM) Programming by Marc J. Rochkind,
> but I do know some of his background:
> 
> 	Marc J. Rochkind helped write the UNIX re-implementation of SCCS
> 
> and he's still proud of it (unbowed and unrepentant), judging from his
> recent advertising.  (SCCS originally ran on MVS or MVT, as I recall,
> and was rewritten for PWB.)  If this means nothing to you, try reading
> the SCCS sources or manuals or try using SCCS.

And I suppose Thomas Edison was a fool because you have a better sounding
turntable than he did.  I don't care a lot for SCCS, but it's a whole lot
better than nothing, which is what was available when Marc came up with
the idea.  SCCS has been through a lot of hands since Marc let go of it,
so if you don't like the style, you'd better be pretty sure who's
responsible before you lay it at Marc's doorstep.

Not only are slurs via SCCS unjustified, they are irrelevant.  People
asked about the book, not for a history of the author.  I have read
much of the book, and it's top rate.  It's rather better suited to
Xenix and System V users than to 4.2 folks (4.2 directories and file
systems don't look like Marc describes them, for example), but I'd
recommend it without hesitation even to Berkelers.  It'll take much
less time to recover from such minor inaccuracies than it would take to
rediscover the useful information that Marc presents.

John P. Linderman  allegra!jpl

fmg@galon (Pat Gallivan) (11/22/85)

In article <672@hou2a.UUCP> ijk@hou2a.UUCP (I.KINAL) writes:
>Has anyone any recommendations on either book (both published by Prentice
>Hall;
>------------------------
>Advanced UNIX (TM) Programming by Marc J. Rochkind.  Here's comprehensive,
>practical advice on how and when to use - and not use system calls.  
>265 pp. $32.95.
>
Marc's book is excellent.  It is essentially an indepth discussion of system
calls. i.e. device and file I/O with a good discussion of semaphores. 

I would highly recommend it to anyone dealing with the Unix system internals.
The book is clear and concise with well developed examples.  Even the expert
will enjoy it as Marc adds comments and insight on some of the historical
imperatives for certain of the kernal's features.

A working knowledge of UNIX* and C is expected.

He is carrying the bible, though,  for AT&T* as the examples reference system
III to system 5 and Xenix 3.0.  For those with BSD or V7, the conversions are
not that difficult.

BTW: In the front of the book, the author offers the examples in "machine
readable form".  When I contacted him he indicated they were available but
at a price.  If I understood right, although he wasn't on any of the nets
he did correspond with Colorado University (boulder!) via e-mail.

* Yes it is trade-marked and copyrighted by TPC.

------------
>Systems Software Tools by Ted J. Biggerstaff.  This easy-to-follow, new
>guide gives you the latest details on the C language and compiler, 
>interrupt and communications hardware, terminal emulators, window 
>interfaces, multitasking window systems, and concurrency structures.
>250 pp. $28.95.
>-----------------------

  Sorry can't help you on this one.


----
Pat Gallivan @                   UUCP: ..!seismo!hao!nbires!isis!galon!fmg
Galon Exploration, Inc.
7122 S. Fillmore,                       (303) 770-6229
Littleton, CO  80122             Data:  (303) 771-0258         

"It is better to 'backup' then go forward."

larry@geowhiz.UUCP (Larry McVoy) (11/23/85)

There has been some discussion of Unix technical books and people seem
to like Marc's book.  The only problem is that it is for SystemV.  Has
anyone written such a book specifically for 4.[23]?
-- 
Larry McVoy                                             +----------------+
                                                        | Slower traffic |
Arpa:  mcvoy@rsch.wisc.edu                              |   keep right   |
Uucp:  {seismo, ihnp4}!uwvax!geowhiz!geophiz!larry      +----------------+

geoff@utcs.uucp (Geoff Collyer) (11/25/85)

John Linderman is right, as usual.
I apologise to Marc J. Rochkind and have cancelled my original article.
I must have been grumpier than usual when I posted it.

gnu@l5.uucp (John Gilmore) (11/28/85)

In article <672@hou2a.UUCP>, ijk@hou2a.UUCP (I.KINAL) writes:
> Advanced UNIX (TM) Programming by Marc J. Rochkind.  Here's comprehensive,
> practical advice on how and when to use - and not use system calls.  
> 265 pp. $32.95.

Laura and I looked at this book at a friend's house and our opinion
was that if you only want to write for System V, it might be OK.
If you care about the larger Unix world, pass it up.  He seemed to
have kind of the right attitude, but all the little details are
wrong, and he totally ignores the non-att world.

gwyn@brl-tgr.ARPA (Doug Gwyn <gwyn>) (11/29/85)

> > Advanced UNIX (TM) Programming by Marc J. Rochkind.  Here's comprehensive,
> > practical advice on how and when to use - and not use system calls.  
> > 265 pp. $32.95.
> 
> Laura and I looked at this book at a friend's house and our opinion
> was that if you only want to write for System V, it might be OK.
> If you care about the larger Unix world, pass it up.  He seemed to
> have kind of the right attitude, but all the little details are
> wrong, and he totally ignores the non-att world.

Well, many of the programming errors I see 4.2BSD programmers make
would have been avoided if they had understood the information in
Marc's book.  Most of what he has to say applies to any brand of
UNIX, and he has brief discussions of other variants at the end of
most chapters.  For portability, one should be programming in what
amounts to a System V environment anyway, even on BSD systems.  If
you don't have a System V environment on your 4.2BSD system, it is
your own fault, since one is available for free.

I would be interesting in hearing what all the "little details" are
that are "wrong".  I didn't notice many errors.

mrl@drutx.UUCP (LongoMR) (12/02/85)

> Laura and I looked at this book at a friend's house and our opinion
> was that if you only want to write for System V, it might be OK.
> If you care about the larger Unix world, pass it up.  He seemed to
> have kind of the right attitude, but all the little details are
> wrong, and he totally ignores the non-att world.

Wow, that seems like a pretty definate statement to be offered without
examples, wouldn't you say? I would be interested to know not only
your opinion, but how you arrived at it. Note that this is not a flame.
I just bought the book and if I am going to be wasting my time, I'd rather
not read it. I would, however, like to know how you came to your conclusion.
-- 
			Mark R. Longo
			ihnp4!drutx!mrl

seifert@hammer.UUCP (Snoopy) (12/03/85)

In article <152@brl-tgr.ARPA> gwyn@brl-tgr.ARPA (Doug Gwyn <gwyn>) writes:

>  For portability, one should be programming in what
>amounts to a System V environment anyway, even on BSD systems.

No, one should program for v6.  Anything added since then is non-portable.

>  If
>you don't have a System V environment on your 4.2BSD system, it is
>your own fault, since one is available for free.

Oh?  Who's giving disks away?  Mine's full, I don't have *room*
for storing a sysV environment.

Snoopy
tektronix!tekecs!doghouse.TEK!snoopy

gnu@l5.uucp (John Gilmore) (12/08/85)

In article <737@drutx.UUCP>, mrl@drutx.UUCP (LongoMR) writes:
    (The double indent is me, gnu, speaking:)
> > Laura and I looked at this book at a friend's house and our opinion
> > was that if you only want to write for System V, it might be OK.
> > If you care about the larger Unix world, pass it up.  He seemed to
> > have kind of the right attitude, but all the little details are
> > wrong, and he totally ignores the non-att world.
> 
> Wow, that seems like a pretty definate statement to be offered without
> examples, wouldn't you say? I would be interested to know not only
> your opinion, but how you arrived at it. Note that this is not a flame.
> I just bought the book and if I am going to be wasting my time, I'd rather
> not read it. I would, however, like to know how you came to your conclusion.

As I said, we only looked at the book at someone else's house.  We opened
it in a few places and found enough odd things.  He suggests that you read
directories by opening them and doing 16-byte reads into a struct; that's
somebody who's never heard of the fast file system or portability if I've
ever seen it.  Laura said at the time that his preface statements about
the history of Unix were wrong -- not in major ways, but in small ways.
One place I opened it he used a strtok() function which was the first
I'd heard of it -- though later I noticed a PD implementation of it
in my net.sources archives, it didn't appear in BSD systems or V7 or 32V.

I'm not saying it's a bad book, I'm just saying it's too focused on SV
for my taste.  I care more about portability than that.  I would undoubtedly
learn things from it, and I know enough about non-Sys V systems to know
when what he's saying is unportable or wrong -- but how much of his
audience is in that position?