Re: How do disk writes work these days?
Re: How do disk writes work these days?
- Subject: Re: How do disk writes work these days?
- From: "Justin C. Walker" <email@hidden>
- Date: Tue, 23 Jul 2002 12:20:18 -0700
On Tuesday, July 23, 2002, at 07:18 AM, Wade Tregaskis wrote:
[for background, I don't have any experience coding at the kernel
level; I lurk on this list hoping to learn :)]
This is probably a numbingly boring question, but what happens when the
kernel gets handed data to write to disk, from say a userland app? I
ask because I've begun covering this from a users point of view in my
uni course, and they seem to indicate that the method, now as it was 30
years ago, is to block any disk write's and yield time to other
processes.
I don't recall any unix system in the past 30 years that did that. Disk
writes are scheduled by the I/O subsystem, and the driver handles
talking with the device to get the data there. All of this is
generally asynchronous with respect to process activity.
Depending on the details of use and implementation, there are disk block
or page caches to go through, but I can't imagine a system that would
block disk writes. In any system that supports disk controllers that
can be DMA masters, there's no need to do that. In the case of
controllers that required "programmed I/O", the disk writes would still
be fairly high priority, but would tend to block process activity.
I'm curious if this is still how it's done. If not, what's the [basic]
procedure?
Get any book on operating systems; there is bound to be a reasonable,
and fairly generic, discussion of this part of OS behavior.
Regards,
Justin
--
/~\ The ASCII Justin C. Walker, Curmudgeon-at-Large
\ / Ribbon Campaign
X Help cure HTML Email
/ \
_______________________________________________
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.