You always install the boot files on the SD card - this can be as small as 16MB for just the boot files (including kernel). Included in these boot files are two text files that configure the Pi, one that instructs the kernel how the OS should be loaded (cmdline.txt), and a second (config.txt) that instructs how the ARM SoC is configured (ARM/GPU memory split, overclocking, HDMI settings etc.)
Now, for the Pi to complete booting it also needs to load the OS files - these can be located on a second SD card partition (/dev/mmcblk0p2, typically formatted as ext4), or on a USB memory stick (eg. /dev/sda1, again ext4 formatted) or a remote NFS mount point (see guide elsewhere in this sub-forum). You configure where the kernel can find the OS by editing cmdline.txt.
In the case of OpenELEC, all of it can go on the SD card (two partitions required, the first for the mandatory boot files, a second for storage).
Or you can configure your OpenELEC storage to be on a USB memory card - this setup is much less prone to SD card corruption. For USB storage, your cmdline.txt file would look like:
Code:
boot=/dev/mmcblk0p1 disk=/dev/sda1 ssh nosplash
Or you can
boot from NFS which requires only the boot loader and kernel files on the SD card (less than 16MB required), with the OpenELEC OS and Storage mounted and loaded over NFS. Since OpenELEC on a 512MB Pi loads entirely into RAM at boot, performance is surprisingly good, and SD corruption a fading memory...