From owner-freebsd-fs@FreeBSD.ORG Mon Jul 24 18:52:06 2006 Return-Path: X-Original-To: freebsd-fs@freebsd.org Delivered-To: freebsd-fs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8290B16A4DA for ; Mon, 24 Jul 2006 18:52:06 +0000 (UTC) (envelope-from adamsch1@yahoo.com) Received: from web31812.mail.mud.yahoo.com (web31812.mail.mud.yahoo.com [68.142.207.75]) by mx1.FreeBSD.org (Postfix) with SMTP id 1370043D45 for ; Mon, 24 Jul 2006 18:52:06 +0000 (GMT) (envelope-from adamsch1@yahoo.com) Received: (qmail 17027 invoked by uid 60001); 24 Jul 2006 18:52:05 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:Received:Date:From:Reply-To:Subject:To:MIME-Version:Content-Type; b=0R1jOx9ZQ2XYs6qozfRdYls6CKkUYfSZrHJYvV8Ov0pByxMQVJUe518IurEcRtqu8Ibc37pVB4sLd7SlxuCrVf5PJnmPu2aRaw6LzUhCC7KesIK2PTpiMuF6sPt1v3WIleN5lYCrobvuJmNoccVAdStT+RWCwoIfTSfwT8yPdEk= ; Message-ID: <20060724185205.17021.qmail@web31812.mail.mud.yahoo.com> Received: from [207.126.230.225] by web31812.mail.mud.yahoo.com via HTTP; Mon, 24 Jul 2006 11:52:05 PDT Date: Mon, 24 Jul 2006 11:52:05 -0700 (PDT) From: Shane Adams To: freebsd-fs@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: Advice for hacking on ufs/ffs X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Shane Adams List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Jul 2006 18:52:06 -0000 Hello, I'm a programmer that is new to kernel development. I'm interested in hacking around on UFS and FFS. I only have one machine so I copied the complete sys/ufs code to a new directory under fs, and changed a few things to get it to compile and mount. Everything works, and I was ready to start hacking without worrying so much about screwing up my system. Naturally I've rebooted the machine a few times since then, and I was wondering if anyone has advice for a fledgling kernel programmer. (Best practices) I read someplace that the UFS (some revision of the code) was written in userland then ported to the kernel. Is that how McKusick implemented softupdates or snapshots? The code is so dense I have trouble fathoming writing that much code in the mannor in which I've been tackling it. When I make a mistake, the machine freeze's, then reboots. I don't seem to get a kernel dump (or I'm not looking in the right location). Anway, kind of a broad question I know, just looking for a few tips! Cheers, Shane