From owner-freebsd-current Fri Jun 26 00:12:29 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id AAA21380 for freebsd-current-outgoing; Fri, 26 Jun 1998 00:12:29 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from smtp03.primenet.com (daemon@smtp03.primenet.com [206.165.6.133]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id AAA21366 for ; Fri, 26 Jun 1998 00:12:22 -0700 (PDT) (envelope-from tlambert@usr01.primenet.com) Received: (from daemon@localhost) by smtp03.primenet.com (8.8.8/8.8.8) id AAA27719; Fri, 26 Jun 1998 00:12:18 -0700 (MST) Received: from usr01.primenet.com(206.165.6.201) via SMTP by smtp03.primenet.com, id smtpd027700; Fri Jun 26 00:12:15 1998 Received: (from tlambert@localhost) by usr01.primenet.com (8.8.5/8.8.5) id AAA16363; Fri, 26 Jun 1998 00:12:13 -0700 (MST) From: Terry Lambert Message-Id: <199806260712.AAA16363@usr01.primenet.com> Subject: Re: buffering in user space (was Heads up: block devices to disappear!) To: mi@aldan.algebra.com (Mikhail Teterin) Date: Fri, 26 Jun 1998 07:12:13 +0000 (GMT) Cc: current@FreeBSD.ORG In-Reply-To: <199806251344.JAA27893@rtfm.ziplink.net> from "Mikhail Teterin" at Jun 25, 98 09:44:34 am X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > =I agree; buffering should be done in user programs. > = > =Death to stdio! > > mi@rtfm:/tmp (558) nm /usr/lib/libc.so.3.1 | grep putchar > 00009c80 T _putchar > > To the best of my knowledge, stdio is part of libc and thus lives > in user-space already. Or is this because ANSI comittee is against > implementing SMB servers in user space? > > I may very well be wrong, but stdio seems like a poor example. The point is "why write code that utilizes a library (or kernel) when you can rewrite it yourself and include it as overhead in every program, instead of promoting code reuse?". It was sarcasm on what I view as the stupidity of the reinvention of block devices in user space libraries instead of the kernel. If you are going to do something that requires more work, the place to do it is a lower level than where you plan on implementing. If this is "block devices", then the place to implement it is the kernel, not in every user space program that expect block devices. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message