6.1. Data sources

To obtain the operating system image, ABLE can retrieve data from a number of sources. A source may be a “block” device where data can be random accessed in discrete chunks or a “stream” device where data can be accessed serially. ABLE insulates the user from these details and provides a unified interface.

Any device, for which ABLE has a driver, can act as a source. Devices that ABLE can create sources from include ATA hard drives, ATAPI cdroms, memory devices, USB devices and network interfaces.

ABLE identifies a sources by placing the source name in brackets. Sources can be found from the ABLE command line by using the ls command on the “root” directory.

Example 6.1. Using the ls command to list available sources.

The ls when performed on the “root” directory, with the -a option, shows all available sources.

>ls -a -l /
drwxr-xr-x 1 0 0        0 .
drwxr-xr-x 1 0 0        0 ..
brw-rw-rw- 1 0 0   0,   0 nor0
brw-rw-rw- 1 0 0   0,   0 hdc1
brw-rw-rw- 1 0 0   0,   0 hdc
brw-rw-rw- 1 0 0   0,   0 tftpboot
brw-rw-rw- 1 0 0   0,   0 xmodem
brw-rw-rw- 1 0 0   0,   0 console
brw-rw-rw- 1 0 0   0,   0 char4
brw-rw-rw- 1 0 0   0,   0 char3
brw-rw-rw- 1 0 0   0,   0 char2
brw-rw-rw- 1 0 0   0,   0 char1
brw-rw-rw- 1 0 0   0,   0 char0
brw-rw-rw- 1 0 0   0,   0 24cxx0p1
brw-rw-rw- 1 0 0   0,   0 24cxx0
brw-rw-rw- 1 0 0   0,   0 nand0p2
brw-rw-rw- 1 0 0   0,   0 nand0p1
brw-rw-rw- 1 0 0   0,   0 nand0
brw-rw-rw- 1 0 0   0,   0 s3c2410x
lrwxrwxrwx 1 0 0       11 hd0 -> (hdc1):ext2
lrwxrwxrwx 1 0 0        5 s3c2410_serial2 -> char4
lrwxrwxrwx 1 0 0        5 s3c2410_serial1 -> char3
lrwxrwxrwx 1 0 0        5 s3c2410_serial0 -> char2
lrwxrwxrwx 1 0 0        5 u16550_serial1 -> char1
lrwxrwxrwx 1 0 0        5 u16550_serial0 -> char0
lrwxrwxrwx 1 0 0        8 nvram0 -> 24cxx0p1
lrwxrwxrwx 1 0 0       15 flash1 -> (nand0p2):jffs2
lrwxrwxrwx 1 0 0        7 flash0 -> nand0p1
>

The sources listed as links are “aliases” which build upon or “cook” the behaviour of other sources.