- ... assembly1
- Real mode was not one of the
strongest points of the GNU assembler, not until recent
versions. Therefore two other assemblers have been used for real-mode
programs such as boot loaders. These are as86 (in use by LILO
and until recently by the real mode code in the Linux kernel) and nasm (in use by SYSLINUX).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... systems2
- For an interesting example see
the file sector.S in the diagnose subdirectory of the
LILO boot loader. The SYSLINUX program does almost the same
thing, but really loads just the first part of the second stage
loader, which in turn loads the rest.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... decompressed3
- At this point we are not in a position to use
BIOS anymore and the kernel console driver has not been initialized
yet. The decompressor contains a very primitive screen output
routine, so it can show the ``Uncompressing Linux'' message.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 19924
- In fact shoelace is even older, but who has heard of that?
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.