Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Mar 95 13:53:17 -0800
From:      Bakul Shah <bakul@netcom.com>
To:        Jeff Hoffman <jeffh@Cybernetics.NET>
Cc:        hackers@FreeBSD.org
Subject:   Re: Any advice from experienced hackers? 
Message-ID:  <199503162153.NAA24816@netcom16.netcom.com>
In-Reply-To: Your message of "Thu, 16 Mar 95 15:14:40 EST." <Pine.SUN.3.91.950316151208.17771A-100000@server0> 

next in thread | previous in thread | raw e-mail | index | archive | help
You should definitely get the daemon book!  That is, ``The
Design and Implementation of the 4.3BSD UNIX Operating
System'' by Leffler, McKusick, Karels and Quarterman;
published by Addison Wesley.  ISBN 0-201-06196-1.  I hope
they will update it for 4.4BSD.  The Bach book is also
very useful.

The best way to learn is by modifying the source code.  Try
a small well defined project that touches on the file system
or something central.  Avoid drivers (unless you want to
learn about driver writing) because they interact in a
limited way with the rest of the kernel.

One quick project I can think of is to add some tracing
code: log which file block is read/written, when and by
which process.  This would be a tuple: <device, inode,
offset, size, time, pid>.  Allocate a big buffer to gather
enough samples, which is periodically emptied by a user
process.  This trace data can be used to find which files
are used together, and how frequently and also to discern
any interesting usage patterns.  This info. in turn can be
used to e.g. shuffle files around on the disk so as to
reduce access time as well as to tune buffer caching.

Bakul



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199503162153.NAA24816>