I recently discovered your excellent site (was pre-Lions src just recently
made available?), which prompted me to send the following mail out to my
colleagues in Solaris Kernel Development. (Apologies in advance if you find
this annoying, superfluous or disrespectful -- I thought some might find
it interesting, if stupid.) If there are other kernel implementors of
AT&T-derived UNIX lurking here, it would be enlightening to know what a
similar comparison yields on your baby. (It should go without saying that
the implementation of each mentioned function has virtually no resemblance
to its V3 forebear.) And of course, my burning question: has none of us
changed "/* stat codes */" in proc.h?)
------8<---------------------
Subject: Memorial Day in uts
To: kernel(a)eng.sun.com
All,
This Memorial Day, take a moment to remember the source code that has
served in our kernel since its inception. To this end, wander by
http://minnie.tuhs.org/UnixTree/, and pause for a moment to commemorate
these brave functions from the 101st Tapeborne -- all of which have
served continuously since August, 1973:
bflush() falloc() newproc() sched()
bread() getblk() nodev() signal()
brelse() getf() nulldev() stty()
bwrite() gtty() panic() suser()
clock() issig() printf() swtch()
closef() mmread() psig() timeout()
core() mmwrite() psignal() ufalloc()
Their compatriot structure fields include:
av_back b_flags p_flag u_cdir
av_forw b_forw p_ppid
b_back c_arg (*) p_stat
b_blkno c_func (*) p_wchan
(*) c_func and c_arg are notable for having survived a bonwick scorched-earth
rewrite of callouts circa 1997 -- unclear if this makes them eligible for
the Purple Heart, or if they should be considered acquited war criminals.
As for constants, B_DONE, B_ERROR, FREAD, FWRITE, and SSLEEP have all had the
same numerical value since they enlisted in 1973. And a moment of silence
is certainly due to this line in proc.h -- a line which has not changed
so much as a character since 1973:
/* stat codes */
And to the code ripped out in the line of duty, we say only: "We Have Not
Forgotten." (Of course, we usually follow that up with "Never Again.")
- Bryan
----------------------------------------------------------------------------
Bryan Cantrill, Solaris Kernel Development. bmc(a)eng.sun.com (650) 786-3652