From owner-freebsd-current Fri Oct 30 11:14:03 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id LAA14169 for freebsd-current-outgoing; Fri, 30 Oct 1998 11:14:03 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from korin.warman.org.pl (korin.nask.waw.pl [148.81.160.10]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id LAA14147 for ; Fri, 30 Oct 1998 11:14:00 -0800 (PST) (envelope-from abial@nask.pl) Received: from localhost (abial@localhost) by korin.warman.org.pl (8.9.1/8.8.5) with SMTP id UAA24817; Fri, 30 Oct 1998 20:18:53 +0100 (CET) X-Authentication-Warning: korin.warman.org.pl: abial owned process doing -bs Date: Fri, 30 Oct 1998 20:18:53 +0100 (CET) From: Andrzej Bialecki X-Sender: abial@korin.warman.org.pl To: Mike Smith cc: "Jordan K. Hubbard" , current@FreeBSD.ORG Subject: Re: New boot loader and alternate kernels In-Reply-To: <199810301848.KAA01266@dingo.cdrom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Fri, 30 Oct 1998, Mike Smith wrote: > > > How many people would be interested in labels and conditional branches, > > > for example? > > > > Probably quite a few, but then you get into the predictable debate > > of "why not just add atlast to the loader? It's only 7K!" :-) > > Actually, it's about 45k. I've been looking at all sorts of small > script interpreters; there doesn't seem to be much in the "useful" > category under about 40k, and that's too big for the Alpha at the > moment. There are Forth implementations for x86 which take around 8kB. These implement the subset of CORE words only, but you can have a /boot/core-ext.4th, /boot/menus.4th, etc, etc... - all these would be added to dictionary at run-time. This includes also all sorts of conditionals, loops, help screens etc, etc... Imagine something like that: /boot/boot.config: ----------------------------- include /boot/help.4th \ Here I define words "run_tests" and "load_tests" include /boot/my_loading_and_unloading_test.4th include /boot/menus.4th run_tests 0= if \ All tests are ok, boot experimental set of modules load_tests boot then ." The tests failed. Booting last known good kernel..." cr boot /kernel.good ------------------------- This idea has a nice touch about it - "Forth? The Suns and FreeBSD's use it as their boot monitor.." :-) Andrzej Bialecki -------------------- ++-------++ ------------------------------------- ||PicoBSD|| FreeBSD in your pocket? Go and see: Research & Academic |+-------+| "Small & Embedded FreeBSD" Network in Poland | |TT~~~| | http://www.freebsd.org/~picobsd/ -------------------- ~-+==---+-+ ------------------------------------- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message