> From: Bryan Cantrill <[EMAIL PROTECTED]> > Subject: Re: [osol-discuss] Etymology of BFU > To: [EMAIL PROTECTED] (Rich Teer) > Date: Sun, 24 Jul 2005 12:59:39 -0700 (PDT) > Cc: opensolaris-discuss@opensolaris.org, [EMAIL PROTECTED] (Jeff Bonwick), [EMAIL PROTECTED] (Roger A. Faulkner) > > > Hi all, > > > > A quick question for you: what definition of BFU came first: > > Blindingly Fast Upgrade, or Bonwick Faulkner Upgrade? Just > > curious. > > I had always been led to believe that both were just more palatable names > retrofitted on to BFU after it was in widepread use -- and that the > original name was (as you'd expect if you know Bonwick) Big F'ing Upgrade. > But Jeff or Roger can obviously answer for certain; they're cc:'d... > > - Bryan
It was 1993, during the development of Solaris 2.3, when Jeff and I came up with bfu. We needed a faster way to upgrade people's workstations (otherwise, we had to wait four weeks between the time we put something back and the time it became available as a netinstall image). At that time, the nightly build produced cpio archives of everything it built that night. We used these archives to populate idle disks on test machines, but nothing else. It occurred to me that, since cpio doesn't overwrite any files (it creates new files and renames them into place), I could do this operation to a running system. I tried it and it worked (for some definition of 'worked'), but the configuration files were a problem. I told Jeff, and he said "You're doing WHAT? Are you insane?" Then he applied his natural talent to the problem and, with a few back-and-forth iterations between us, we came up with a shell script to do the job better than just using cpio. But we needed a name for the script (we came up with a few pretty lame names that we were unhappy with). Then, as we were walking with a bunch of irreverent kernel engineers from Building 5 in the Mountain View campus to Building 12 (the lunch room), we told them about it. At this time, there were several BF* things, including BFM (Big F'ing Make, the nightly build). [We measured the speed of a machine in units of BFM's per day.] So Jim Voll (no longer at Sun, but well and fondly remembered) declared, "So it's a BFU!" and the name received all-around approval. On that same trip to the lunch room, Jeff and I cleaned it up a bit to be either "Blinding Fast Upgrade" or "Bonwick-Faulkner Upgrade", but everyone remembers Jim Voll's original. At that time, it was a bit of a pain to deal with merging the old and new (replaced by the upgrade) configuration files, so bfu was really only usable by experienced engineers. Also, Jeff wrote up the documentation for it, including the wonderful section about "UFS bungee jumping" (what happens if the system loses power while in the middle of copying in a cpio archive?). Since that time Jeff has improved bfu a lot and made it more reliable, and it has become one of the mainstays of Solaris development, both kernel and user-level. Everyone is expected to make appropriate changes to bfu when they integrate some big wad that requires it, so it's no longer Jeff's or my baby. Roger _______________________________________________ opensolaris-discuss mailing list opensolaris-discuss@opensolaris.org