From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <445F6761.8020405@anvil.com> Date: Mon, 8 May 2006 16:44:33 +0100 From: Dave Lukes User-Agent: Thunderbird 1.5.0.2 (X11/20060420) MIME-Version: 1.0 To: Fans of the OS Plan 9 from Bell Labs <9fans@cse.psu.edu> Subject: Re: [9fans] kernel development: how not to References: <00842b4663291b0523bb203740d23f74@quanstro.net> In-Reply-To: <00842b4663291b0523bb203740d23f74@quanstro.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Topicbox-Message-UUID: 4f576254-ead1-11e9-9d60-3106f5b1d025 Yawn. After the Beserkeley folks implemented vread() and vwrite() in 4.1BSD many people (including myself) saw the concept and thought "why didn't they just detect that as a special case in read() and write()?": exactly the same benefits without the new syscalls. In the same way, most of the speed improvements for muck like splice(), could probably be gained by tuning the current system (and, hey, you might even speed up a couple of other things along the way). Of course improving current functionality without complicating any visible interfaces is far less fun that implementing the wankmyego(fuckme, im, so, clever, look, at, all, these, parameters, i, must, be, a, genius) syscall. Sigh, DaveL erik quanstrom wrote: > sort of. it's an extension. here's the kerneltrap summary: > > http://kerneltrap.org/node/6506 > > what linux actually said is that COW games (e.g. for freebsd's zero-copy > socket code) are worse than just copying the data. > > the real difference between bsd's stuff and what linus did is > the linux trick is an explict system call, not a vm game. > but he misses that adding strange system calls that parallel > read and write is even bigger trouble. either your fundamental > object is a file (unix) or a block of memory (multix). pick a > lane! certainly don't mix the two at the same level. > > linus may be right that the freebsd vm's techniques are broken. > i don't know. > > the zero-copy idea is tantalizing. it would be neat to allow the > network stacks or devdraw to live in a user-level fileserver > without a performance (2 copy) penalty. but it may be the case > that allowing this trickery is more code than it is worth. > > - erik > > On Fri May 5 10:20:1CDT 2006, leimy2k@gmail.com wrote: > >> Is the the vmslice that Linus told BSD people they were a bunch of >> retards for not having? >> >> >> >> On 5/5/06, erik quanstrom wrote: >> >>> the linux guys decided to implement system calls >>> "splice" and "tee". splice concatinates the pages from >>> two files -- the vm equivalent of "cat a b". tee >>> is the vm equivalent of its namesake. >>> >>> http://lwn.net/Articles/181169/#Comments >>> >>> the best part is the conclusion -- "needs a bit more work". >>> ha! >>> >>> - erik >>>