CCL: help needed
- From: "Perry E. Metzger"
<perry(_)piermont.com>
- Subject: CCL: help needed
- Date: Fri, 28 Oct 2005 10:22:14 -0400
Sent to CCL by: "Perry E. Metzger" [perry~~piermont.com]
"Arindam Ganguly arindamganguly^^^gmail.com" <owner-chemistry _
ccl.net> writes:
> could you suggest some more refernces where a clear distinction espcially
in
> terms of the diffrences between the architectural differences of windows
and
> lInux is highlighted. thanks,
Unfortunately, a lot of this stuff is hard. The problem is that issues
like virtual memory subsystem architecture aren't any more easily
understood by non-specialist than an ab initio computational chemistry
system is easily understood by the non-specialist. Really
understanding the issues requires that you have an operating systems
class under your belt, or the equivalent.
There are also a *lot* of different issues in performance differences
between Windows and various Unix flavors, not just the VM
subsystems. I picked that just because seeing the difference made
there is particularly easy. there are many others.
Anyway, trying to answer your point more directly:
For Linux, there is apparently a book on the virtual memory subsystem
-- you can find it by doing a google for "linux virtual memory". I
have to admit, though, that the best way to *really* understand the
architecture of the system is to look at the code and play with
it. There is also some documentation that comes with the kernel
sources themselves, including a bunch of stuff on tuning associated
with the proc filesystem documentation.
For NetBSD (the Unix I tend to use the most, but which I suspect no
one here uses or will be using any time soon), there is a longish
paper on the design of the VM subsystem, which you can find off of
here:
http://netbsd.org/Documentation/kernel/uvm.html
Unfortunately, Chuck's original papers don't include a description of
the way that the unified buffer cache works or the internal tuning
mechanisms it employs. Those can be found out about in other pieces of
system documentation.
For Windows, the easiest way to learn about the VM system and its
tuning is by reading through the MSDN documentation on the subject --
the information from Microsoft's old NT architecture books is quite out
of date at this point. The MSDN info is, however, quite opaque,
including the obscure references to the several variables in the
registry that you actually can flip to alter performance a bit. There
are also some good open source tools to let you monitor Windows VM
behavior in real time, including from www.sysinternals.com.
Perry