getcwd() and friends.

Barry Shein bzs at bu-cs.BU.EDU
Wed Apr 26 11:46:26 AEST 1989


I remember teaching a systems programming course and, after going over
the whole file system/file descriptor model getting into the SYSV
shmem/semaphore/msg stuff. At the end of the lecture I asked a student
who looked disturbed what the problem was, he said "it looks like it
landed on Unix after taking off from Mars!"

The (possibly true) story I had heard was the the whole interface was
thrown together by a non-mainline group to support a (possibly
internal) client at AT&T and ended up getting stuck in the mainline
distributions. That is, it was never a plan but an accident of history
somewhere back in the early SYSIII days.

I can't imagine what the nervousness is about having these things in
the file name space (not like anyone hesitated with FIFOs and that,
IMHO, is a neat feature.) They obviously all needed a global name
space and that's what the file system is there for.

I would have preferred some extension of "non-persistant" objects,
that is, file names (& inodes) which never leave main memory thus
guaranteed to go away in the event of a system crash, they only live
in the appropriate caches, only one bit needed in the buffer headers
and a little code to skip past them. Would have made all sorts of
objects like this cheaper and safer to implement (like lock files and
some types of temp files.)

Ah well, too late now I guess...

-- 

	-Barry Shein, Software Tool & Die

There's nothing more terrifying to hardware vendors than
satisfied customers.



More information about the Comp.unix.wizards mailing list