Re: darwin-kernel digest, Vol 2 #203 - 4 msgs
Re: darwin-kernel digest, Vol 2 #203 - 4 msgs
- Subject: Re: darwin-kernel digest, Vol 2 #203 - 4 msgs
- From: John Hunter <email@hidden>
- Date: Sun, 19 Jan 2003 15:40:48 +0000
Hi,
I'm sure there are lots of ways to optimise caching, but my question
is: why does one process causing a lot of disk access slows down a
whole lot other processes which you would think don't require so much
disk access (like the Window Manager when you drag a window...). I
haven't seen this kind of behaviour with other UNIX systems.
John
Hello!
First of all, I don't know what is implemented in the darwin kernel at
all, but here are some of my thoughts about this topic:
Preventing disk access for starting applications if nearly impossible,
because the data has to be read out for it. It can only be improved by
caching all data that was read or reading out sequentially (if
possible)
data, that will be used. In an offline-situation it is possible to
calculate what is the best way to read and cache disk-data, but in the
online-situation it is somehow hard to tell which data could be read
next. It is easy to guess if someone opens a file, that and begins to
read it sequentially, that he could read the whole file, so the system
could begin to cache it, if memory is available and no other
disk-access
is forced. This all shouldn't be a problem which is new to the world,
so
one should find some online-algorithms with a good competivness in the
appropriate text-books.
One question would be, how swapping is implemented. There has to be
some
way of telling the system, that the swap files don't have to be cached.
Caching of swap-space is somehow stupid :)
By using caches, one could also cache disk-write-access, trying to
reduce disk-access at all, enhancing spin-down-times and for mobile
users this should reduce battery usage. I was thinking of it some while
ago, but hadn't had the time to look at the different parts of darwin
related to disk-access.
_______________________________________________
darwin-kernel mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/darwin-kernel
Do not post admin requests to the list. They will be ignored.