Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!philabs!seismo!hao!hplabs!sri-unix!ron@brl-vgr From: ron%brl-vgr@sri-unix.UUCP Newsgroups: net.unix Subject: Re: Raw vs. block device. I'm confused. Message-ID: <15194@sri-arpa.UUCP> Date: Thu, 12-Jan-84 00:18:07 EST Article-I.D.: sri-arpa.15194 Posted: Thu Jan 12 00:18:07 1984 Date-Received: Mon, 9-Jan-84 00:13:17 EST Lines: 14 From: Ron Natalie In one word..."buffering". A io on a block device is always done into a buffer in the kernel. A raw disk io is done directly into the buffer the user passed. Of course raw is faster if you are looking at a block and then throwing it away. You don't need the buffer cache and you don't need all that copying. There are constraints however. Since the peripheral really transfers directly into the user buffer the number of characters the user requested it may not work. Most peripherals require word align ments, various offsets and minimum granularities. ADB is probably going away because you are not reading the beginning of a physical disk block, or you are not reading a whole block. -ROn