[TUHS] Understanding the /bin, /sbin, /usr/bin, /usr/sbin Split

Warner Losh imp at bsdimp.com
Fri Feb 3 09:33:37 AEST 2012

On Feb 2, 2012, at 3:59 PM, Lyndon Nerenberg wrote:
> On 2012-02-02, at 2:47 PM, Warner Losh wrote:
>> Embedded systems had limits of 4MB, 8MB or 16MB when these patches were done.
> Those systems also tend to ship with a very carefully culled set of binaries.  Perhaps someone reading this with access to that type of system could do some measurements of a static vs. shared build of one of those embedded systems.  A well designed system without library bloat can pump out some pretty skinny static binaries.

You know that I wrote those patches for FreeBSD when I was producing embedded systems that needed the savings, right?

At the time, the size of / was on the order of 60MB without the patches and 8MB with the patches (excluding the kernel and modules).  Compression got the size of the kernel + / + /usr down to about 7MB which left enough room on the flash for our monolithic application.  At the time, the crunchgen approach to binaries produced similar values (about 6MB for the same list of binaries we selected).  However, our build process and monolithic application were ill suited to crunchgenning so we opted for shared libraries which got us most of the benefits and allowed us better flexibility in deploying new versions of our program.

After the patches were done, we discovered other benefits, such as easier deploying of security fixes...


More information about the TUHS mailing list