From owner-freebsd-current Mon Mar 9 02:55:25 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id CAA19159 for freebsd-current-outgoing; Mon, 9 Mar 1998 02:55:25 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from helios.dnttm.ru (root@dnttm-gw.rssi.ru [193.232.0.205]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id CAA19154 for ; Mon, 9 Mar 1998 02:55:21 -0800 (PST) (envelope-from dima@tejblum.dnttm.rssi.ru) Received: (from uucp@localhost) by helios.dnttm.ru (8.8.5/8.8.5/IP-3) with UUCP id NAA19844; Mon, 9 Mar 1998 13:38:29 +0300 Received: from tejblum.dnttm.rssi.ru (localhost [127.0.0.1]) by tejblum.dnttm.rssi.ru (8.8.8/8.8.7) with ESMTP id NAA03211; Mon, 9 Mar 1998 13:47:13 +0300 (MSK) (envelope-from dima@tejblum.dnttm.rssi.ru) Message-Id: <199803091047.NAA03211@tejblum.dnttm.rssi.ru> X-Mailer: exmh version 2.0gamma 1/27/96 To: Nate Williams cc: Terry Lambert , current@FreeBSD.ORG Subject: Re: vnode_pager: *** WARNING *** stale FS code in system In-reply-to: Your message of "Sun, 08 Mar 1998 22:17:40 MST." <199803090517.WAA15531@mt.sri.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 09 Mar 1998 13:47:12 +0300 From: Dmitrij Tejblum Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Nate Williams wrote: > In short, you are attempting to make local media FS's the 'base class' > for all FS (using C++ vernacular). As Base Classes, they must > implement/define *everything* for all classes, and that all other > 'stackable' FS's can inherit from the base class. Stacking layers *is not* an analogy of inheritance. Stacking layers is analogy of event-passing in GUI, or "filters" in Unix pipes, or some such. Every widget, of course, must handle every possible event. But some widget are designed especially to dispatch events to other widgets. This dispatching is a way of handling. Both widgets are finished stuff, unlike a derived class without a base class. Or, as example of a layer, consider a program that read a text file, handle lines started with '#', and print other lines in slightly modified form to output. It is a finished program too. You cannot say that it inherit from the program which read and handle its output. But there is real inheritance in filesystems. For example, FIFOs in FFS, FIFOs in NFS, FIFOs in CD9660, etc. is all derived from a generic FIFO. Terry wants that all filesystems handle GETPAGES/PUTPAGES. This is fine. I simple don't like that he put his 'default' junk in zillion filesystems, instead of put it in an appropriate base class. Dima To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message