Re: How do disk writes work these days?
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 | darwin-kernel@lists.apple.com Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/darwin-kernel Do not post admin requests to the list. They will be ignored.
participants (1)
-
Justin C. Walker