Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!ames!sdcsvax!ucbvax!DBSTU1.BITNET!I7100501 From: I7100501@DBSTU1.BITNET.UUCP Newsgroups: comp.os.vms Subject: RE: buffered i/o count Message-ID: <8709200626.AA15095@ucbvax.Berkeley.EDU> Date: Sun, 20-Sep-87 02:26:36 EDT Article-I.D.: ucbvax.8709200626.AA15095 Posted: Sun Sep 20 02:26:36 1987 Date-Received: Sun, 20-Sep-87 19:37:15 EDT Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 29 Todd Warnock asked: >Where does BUFFERED I/O count come from ? Does DMA affect it ? What >determines when it gets incremented ? Pointers to manuals would be >appreciated. I need to know for accounting purposes. Buffered I/O is a method (as opposed to Direct I/O) of transfering data from a user process to the driver. Buffered I/O uses an intermediate system buffer in non-paged pool which interacts with the process in process context and to which the driver has access in fork context. If such a buffer is allocated for a user process, its buffered i/o count is incremented. If the buffer is released, it is decremented. Obviously, resources for buffered i/o are limited, so quotas are used. If the driver uses direct i/o, the process pages containing the user buffer are locked in memory and the driver can access it directly. The direct i/o count is incremented if pages are locked and decremented when released. Normally all DMA devices uses direct i/o, whereas non-DMA devices may use buffered i/o. The driver determines what transfer mode is used. This and more information is in the "Guide to Writing a Device Driver". ----------------------------------------------------------------------------- Eckart Meyer BITNET: I7100501@DBSTU1 Inst. f. Nachrichtentechnik PHONE: 0531 / 391-2454 Technical University of Braunschweig ADDR: Schleinitzstr. 23 Germany 3300 Braunschweig -----------------------------------------------------------------------------