Subject: Re: floppyinstfs size
To: Jim Thompson <jim@musenki.com>
From: Erik Anggard <erik.anggard@packetfront.com>
List: port-sandpoint
Date: 03/17/2002 23:52:26
Wrong about what, Jim? I don't use Linux a whole lot, I prefer *BSD,  :) 
so correct me if I'm wrong:
Saying that a system runs Linux doesn't say anything other than that the 
kernel is Linux. And a root file system can be however small you like it 
to be (as long as it will fit a /sbin/init). So the statement "Linux 
fits in 4MB" is doesn't say a whole lot now does it? The NetBSD kernel 
with a root file system will also fit in 4MB (or even 1.4MB which is the 
case for an installation floppy) but a complete user-land will not fit 
in 4MB. Nor will a Debian/Suse/RedHat/whatever Linux installation with a 
complete user-land fit in 4MB. We have a fairly minimal Debian 
installation on a PC in our lab it takes up about 300MB on the disk. So 
if you're going to make remarks on how much better than NetBSD you think 
Linux is, please be a lite more specific. :)

I've never used a Sandpoint evaluation board (we use the sandpoint port 
somewhat modified on our own hardware) so I'm not familiar with the size 
of the flash on it.

I'm not familiar with JFFS and I don't belive there is any 
implementation for it  on NetBSD but good old FFS works pretty well on 
flashes.

/Erik


Jim Thompson wrote:

>Woo.  I hate to say it like this, but I hope you're wrong.
>Linux fits (with a root filesystem) in 4MB of flash with a whole bunch
>left over.
>
>not that there is anywhere near 4MB on a Sandpoint, mind you.
>
>Is there anything like JFFS/JFFS2 on NetBSD (yet)?  Or do I need to
>hire Wasabi to write it?  :-)
>
>jim
>
>Erik Anggard writes:
>
>>Well, what you've made is an installation-kernel. Typing "s" will give
>>you a shell with a limited set of commands (those listed in
>>distrib/sandpoint/floppies/ramdisk/list).
>>
>>If you want a full blown NetBSD system you will of course need to
>>include all the binaries, libs and other files in the ram-image which
>>means that the image will be very large (and if you're booting of a
>>flash it will probably not be big enough to hold that kernel).
>>
>>Otherwise you will have to figure out what binaries, libs and other
>>files you need for your specific application and then make an image
>>containing those. This usually requires a bit of work to get it to work
>>correctly. (You have to figure out what libraries, config files etc.
>>that your binaries need to run). If your bootloader/monitor can
>>decompress (e.g. gzip or bzip2) an elf-image before booting it you
>>should be able to make a useful system that will fit in 2Mb.
>>
>>If your application only requires a few processes you can replace
>>/sbin/init with your own that will only fork of those specific
>>processes. The binaries for those processes will have to be statically
>>linked or you will have to include the libs they need and
>>/usr/libexec/ld.elf_so.
>>
>>If your sandpoint-system has a network interface you can instead use the
>>kernel option NFS_BOOT_BOOTP or NFS_BOOT_DHCP, see options (4), to have
>>the kernel mount the root filesystem from an NFS-fileserver. This works
>>very well and you will get a full blown NetBSD system.
>>
>>/Erik
>>
>>
>>
>>bgjung@etri.re.kr wrote:
>>
>>>Thank you for your reply.
>>>I'm trying to make a "standalone" kernel.
>>>I used sys/arch/sandpoint/conf/RAMDISK and
>>>distrib/sandpoint/floppys/ramdisk/ramdisk.fs.
>>>But it didn't live "standalone".
>>>It just ask (I)nstall, (S)hell, (H)alt?
>>>So, I 'm wondering it needs to setup all tgz fles (base,tgz and
>>>etc.tgz), it almost 80M bytes, not 8M byte.
>>>What is missing on distrib/sandpoint?
>>>Or what I should add some lines on conf/RAMDISK?
>>>2M is sufficient for "standalone" image?
>>>
>>>
>>>
>>>Are you trying to make an installation floppy disk or just a
>>>"standalone" kernel? We use the following process to build "standalone"
>>>kernels:
>>>1) configure and compile a kernel with options MEMORY_DISK_HOOKS,
>>>MEMORY_DISK_IS_ROOT and MINIROOTSIZE (and optionaly
>>>MEMORY_DISK_SERVER=0), see src/sys/arch/sandpoint/conf/RAMDISK
>>>2) set up a directory to contain the files for the ramdisk and possibly
>>>an mtree-file and use makefs (8) to create an image-file of the
>>>directory (use "-s"-flag to set the size to the same as MINIROOTSIZE in
>>>step 1).
>>>3) use mdsetimage (8) to copy the image-file into the kernel built in
>>>step 1
>>>/Erik
>>>Boo Geum Jung wrote:
>>>
>>>>2M seems to be insufficient to execute standalone on RAM, I don't
>>>>
>>>know the
>>>
>>>>exact resean now.
>>>>So I'd like to extent the size of floppyinstfs from 2M to 8M.
>>>>What should I change?
>>>>Should I change disktab?
>>>>
>>>>floppyinstfs|NetBSD floppy install filesystem:\
>>>>:ty=floppy:se#512:nt#1:rm#300:ns#64:nc#64:\
>>>>:pa#4096:oa#0:ba#4096:fa#512:ta=4.2BSD:\
>>>>:pc#4096:oc#0:
>>>>
>