Date: Fri, 25 Apr 2003 10:21:11 +0200 From: Alexandre <ahb@skynet.be> To: Marc Schneiders <marc@schneiders.org> Cc: freebsd-small@freebsd.org Subject: Re: How to make the kernel small, smaller, smallest? Message-ID: <3EA8EFF7.7060902@skynet.be> In-Reply-To: <20030425000438.O90079-100000@voo.doo.net> References: <20030425000438.O90079-100000@voo.doo.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Actually as far as PicoBSD goes the easiest in the beggining is to just copy the bridge folder into a new one Do your kernel modifications but in your crunch.conf don't change anything if you are not certain what you need (except maybe for the sh tinyware) 'cos you will need a lot more than just sh and init (You need tools to decompress the kernel, and if your root file system is not together woth the mfs the it needs to be mounted). Then once that's done start removing program from crunch.conf patiently, reading the manuals and so on. Oinit is not the best choice, it does not provide password login, so if your box is to be connected to the net not good. here is the example of a kerner file (size here big cos is used over etherboot), also there is no mouse or keyboard support, nor video, it boots up via the serial port. # # $FreeBSD: src/release/picobsd/router/PICOBSD,v 1.6.2.3 2002/03/13 18:16:53 luigi Exp $ # #Line starting with #PicoBSD contains PicoBSD build parameters #marker def_sz init MFS_inodes floppy_inodes #PicoBSD 10000 init 4096 32768 options MD_ROOT_SIZE=10000 machine i386 cpu I486_CPU ident PICOBSD maxusers 1 options MATH_EMULATE #Support for x87 emulation options INET #InterNETworking options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] options MFS #Memory Filesystem options MD_ROOT #MFS as root options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options USERCONFIG #boot -c editor options NO_SWAPPING device isa0 device npx0 at nexus? port IO_NPX irq 13 device sio0 at isa? port IO_COM1 flags 0x10 irq 4 device sio1 at isa? port IO_COM2 irq 3 options CONSPEED=19200 device ep0 at isa? #port 0x300 irq 10 pseudo-device loop pseudo-device ether pseudo-device pty 16 pseudo-device md Marc Schneiders wrote: >On Thu, 24 Apr 2003, at 19:19 [=GMT+0200], Rodrigo Readi wrote: > > > >>Thanks for your answers to my previous posting. Manuels's Article about >>minibsd contains indeed a lot of interesting matters, but it is >>unfortunately not for my purpose: I want a minimal FreeBSD in one, at >>most two, floppies that allows me to start an Xserver over a >>NFS. PicoBSD is more for my purposes, thanks Bruce for your notes. >> >>Now I have a new question: how to build a very small kernel? Today I >>threw a lot away from the GENERIG config file, but inspite of it, it >>compiled a lot of functions (modules?) that dont seem usefull to >>me. At the end I had a little more than 2MB, >> >> > >Is this just the kernel or also the modules? I think all modules are >built, but they are not in the kernel then. So I think you don't need >to worry. > >If your kernel is 2MB, there must be more to cut. Mine are 1870295 and >1862058 and they could lose some things. Obviously you don't need any >ata or scsi stuff, no ISO9660 filesystem etc. There is a lot you can >cut. INET6 if you don't use that. NFS takes up lots of kernel bytes, >but you need that, right? Same probably with printer port, usb maybe? > >About 2 years ago I looked into this a bit and built something really >small, to run on a laptop with 4 MB RAM. That must have been before >the GENERIC kernel got slightly fatter. It was 1.3MB or little under. > >I am not an expert at all on kernel 'hacking'. I know no C whatsoever. >I just tried things. And when the kernel doesn't boot, well put the >option back in you just took out and rebuild. If you build it on a >recent machine it goes pretty fast these days. > > >_______________________________________________ >freebsd-small@freebsd.org mailing list >http://lists.freebsd.org/mailman/listinfo/freebsd-small >To unsubscribe, send any mail to "freebsd-small-unsubscribe@freebsd.org" > > > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3EA8EFF7.7060902>