From owner-freebsd-current@FreeBSD.ORG Thu May 25 19:29:25 2006 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B7A4B16AAC2; Thu, 25 May 2006 19:29:25 +0000 (UTC) (envelope-from olivier@gautherot.net) Received: from smtp4-g19.free.fr (smtp4-g19.free.fr [212.27.42.30]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4CA3543D66; Thu, 25 May 2006 19:29:25 +0000 (GMT) (envelope-from olivier@gautherot.net) Received: from imp2-g19.free.fr (imp2-g19.free.fr [212.27.42.2]) by smtp4-g19.free.fr (Postfix) with ESMTP id 67C5C549EB; Thu, 25 May 2006 21:29:24 +0200 (CEST) Received: by imp2-g19.free.fr (Postfix, from userid 33) id 5317D603F; Thu, 25 May 2006 21:29:24 +0200 (CEST) Received: from 200.54.71.227 ([200.54.71.227]) by imp2-g19.free.fr (IMP) with HTTP for ; Thu, 25 May 2006 21:29:24 +0200 Message-ID: <1148585364.447605943e3e1@imp2-g19.free.fr> Date: Thu, 25 May 2006 21:29:24 +0200 From: Olivier Gautherot To: Andrew Atrens References: <3981.1148578569@critter.freebsd.dk> <4475EFC1.1020504@nortel.com> <1148580598.4475f2f677197@imp2-g19.free.fr> <4475F967.5040806@nortel.com> In-Reply-To: <4475F967.5040806@nortel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit User-Agent: Internet Messaging Program (IMP) 3.2.5 X-Originating-IP: 200.54.71.227 X-Mailman-Approved-At: Thu, 25 May 2006 20:19:57 +0000 Cc: Alexander Leidinger , Poul-Henning Kamp , small@freebsd.org, current@freebsd.org Subject: Re: FreeBSD's embedded agenda X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 May 2006 19:29:36 -0000 Hi Andrew! > Yes, exactly... that's precisely what 'wear-leveling' is meant to do .. > > I think I mentioned wear-leveling further back in the email chain .. You did indeed mention it. > Yes, you definitely want wear-leveling. The debate is whether the > filesystem knows about it, versus it being managed by a lower level > 'driver'. If I were told to start the design now, I would advocate to keep all Flash-specific features in a low-level driver and let the filesystem take care of upper concepts. After all, the cylinder concept of a spinning disk does not always match the physical structure so we could follow the same logic. By Flash-specific features, I mean: - Erased bits set to 1 (that's another constraint, common to NAND and NOR, you can't write a 1 on a 0) - Seek time of 0 - Wear-leveling - Garbage collection For the filesystem, we could think of a standard one - why reinvent the wheel when FreeBSD already has a good one that could be used, possibly with a few tweaks? Unless we want to plug compression in, what could be helpful and is sometimes desired. Just a tought -- Olivier Gautherot olivier@gautherot.net Tel: +56 8 730 9361