- Gujin
Gujin is a
boot loader for personal computers. It isfree software distributed under theGNU General Public License that is written in the C programming language, and is designed to be compiled with theGNU C Compiler andGNU Binary Utilities .Functionality and design
Gujin is capable both of bootstrapping partitions by reading and invoking their
Volume Boot Record s and of loading and invoking theLinux kernel directly from a file in a disc volume. Furthermore, Gujin is capable of bootstrapping from disc image files, presenting the disc image to the operating system being bootstrapped as if it were a (bootable)floppy disc .Gujin locates Linux kernel files by scanning all disc volumes and searching for the usual filenames in the root directory and the "/boot" subdirectory of the volume. When searching volumes for files, Gujin only understands the FAT12, FAT16, FAT32,
ext2 ,ext3 , andISO 9660 filesystem formats. Gujin is capable of reading both the standard Linux file format andGNU zip compressed ELF images (filename extension kgz).Gujin presents a
graphical user interface to the user for selecting which disc volume or operating system kernel to bootstrap. It automatically selects the graphics mode to use. When bootstrapping a Linux kernel, it enables the user to select the video mode before invoking the Linux kernel. It also passes information about the keyboard and mouse to the Linux kernel on its command line.Like most boot managers, Gujin is designed to be able to bootstrap discs and disc volumes that the machine's BIOS is, by itself, not capable of booting. Gujin can bootstrap ATAPI
CD-ROM s andDVD s, for example.Gujin can only access devices that are supported by the machine's firmware. It is not capable of using USB devices such as keyboards, mice, discs, CD-ROMs, or DVDs unless the BIOS provides access to them.
Gujin is primarily a
real mode (or v8086 mode) program. Only a small part of the program, the part that relocates an operating system kernel before invoking it, executes inprotected mode .Gujin can load operating system kernels at different physical addresses to the defaults (with specially compiled kernels and modules) in order to leave ISA DMA-able memory free for other uses by the operating system itself, or to forbid kernel code modification by the legacy DMA.
Installation and use
Gujin can be installed and invoked in three ways:
*Gujin can replace theMaster Boot Record of a fixed disc. It will run when theBIOS bootstraps from that disc.
*Gujin can replace theVolume Boot Record of a disc partition, or of a floppy disc. It will run when the MBR (or aboot manager ) boots that disc partition or when the BIOS bootstraps from that floppy disc.
*Gujin can exist as a simpleDOS executable program image file on a FAT partition. Likeloadlin , this allows Gujin to be invoked from DOS.Each flavour of Gujin comes in two sizes:
* a "full" version that presents the graphical user interface
* a "tiny" version that presents no user interface and that is controlled solely by itscommand-line arguments (for the DOS flavour) or compiled-in configuration settings (for the MBR and VBR flavours)Gujin when run as a DOS program
When run as a DOS program, Gujin is designed to retain the DOS execution environment intact unless an operating system is selected and bootstrapped. Gujin thus uses normal XMS services available to DOS programs to access
extended memory when loading an operating system kernel.References
External links
* [http://gujin.org/ Official website]
Wikimedia Foundation. 2010.