After you create the full filesystem with everything, and you have compiled kernel modules into that filesystem (assuming you're using modules), you can then create the initrd image.
The basic idea behind the init ramdisk in Linux is to load a minuscule filesystem first, which loads modules and then jumps to load the real system. The initrd, as shown by its name, resides entirely on the ramdisk, so it doesn't need to worry about block devices like the harddrive. This makes booting initrd first much easier.
The idea behind SLS is that the init ramdisk does not NEED to start the real system and then jump to it. The initrd is a linux filesystem, and when it first starts up, the script "init" is called in the root directory of the filesystem. This "init" script does some module loading, and at the end of this script, the initrd loads the real filesystem. For SLS, all we have to do is symbolically link the init script in the root directory to "/sbin/init", and effectively boot up the complete SLS system in RAM.
We have created a folder in the section called “SLS Filesystem” that is the root directory of all the files within the SLS system. From within the directory, we execute the command:
# find . | cpio -c -o > ../image
This command puts all the files together into an image. Then we have to zip it with the command:
# gzip -9 < ../image > ../initrd-small.img
There you have the wonderful initrd image that is SLS.