Generic kernels can be built without drivers for any SCSI adapters which load the SCSI driver as a module. To solve the problem of allowing the kernel to read the module without being able to address the SCSI adapter, an initial ramdisk is used. That ramdisk is loaded by the operating system loader (such as lilo) and is available to the kernel as soon as it is loaded. That image is resonsible for loading the proper SCSI adapter and allowing the kernel to mount the root filesystem. This program creates such a ramdisk image using information found in /etc/conf.modules.