grub: History
1.2 History of GRUB
===================
GRUB originated in 1995 when Erich Boleyn was trying to boot the GNU
Hurd with the University of Utah's Mach 4 microkernel (now known as GNU
Mach). Erich and Brian Ford designed the Multiboot Specification (⇒
Multiboot Specification (multiboot)Top.), because they were determined
not to add to the large number of mutually-incompatible PC boot methods.
Erich then began modifying the FreeBSD boot loader so that it would
understand Multiboot. He soon realized that it would be a lot easier to
write his own boot loader from scratch than to keep working on the
FreeBSD boot loader, and so GRUB was born.
Erich added many features to GRUB, but other priorities prevented him
from keeping up with the demands of its quickly-expanding user base. In
1999, Gordon Matzigkeit and Yoshinori K. Okuji adopted GRUB as an
official GNU package, and opened its development by making the latest
sources available via anonymous CVS. ⇒Obtaining and Building
GRUB, for more information.
Over the next few years, GRUB was extended to meet many needs, but it
quickly became clear that its design was not keeping up with the
extensions being made to it, and we reached the point where it was very
difficult to make any further changes without breaking existing
features. Around 2002, Yoshinori K. Okuji started work on PUPA
(Preliminary Universal Programming Architecture for GNU GRUB), aiming to
rewrite the core of GRUB to make it cleaner, safer, more robust, and
more powerful. PUPA was eventually renamed to GRUB 2, and the original
version of GRUB was renamed to GRUB Legacy. Small amounts of
maintenance continued to be done on GRUB Legacy, but the last release
(0.97) was made in 2005 and at the time of writing it seems unlikely
that there will be another.
By around 2007, GNU/Linux distributions started to use GRUB 2 to
limited extents, and by the end of 2009 multiple major distributions
were installing it by default.