The storage memory partition structure
Let's first explain what partitions are and why they are used. Partitions are logical divisions of storage space divided into multiple logical units, providing a convenient way of storage management. Each partition can have its own filesystem, and thus, it can be formatted separately. Also, for virtual memory a specific type of partition, a so-called swap partition can be used. Every block device, which means every memory device with random access and consisting of discrete blocks such as sectors, can be partitioned.
Each operating system usually has a boot partition where important system files that are in charge of starting up the system are stored. A system can have more than one operating system where a boot menu can provide the possibility of selecting a specific boot partition on each system startup.
It is very important to understand the partition structure of the BBB storage memory in order to know how to install alternative operating systems. By default, there is no extension microSD card installed, and the internal flash memory is divided into two partitions. If you boot up the preinstalled operating system from the internal memory, there will be two partitions for the internal and two partitions for the optional uninstalled microSD card. Furthermore, there will be two virtual partitions that represent the boot loader for the internal and external memory. The latter two are permanent and cannot be accidentally overwritten. The kernel of the preinstalled Linux version, like any other version, will map the storage partitions in its local filesystem to the /dev
directory.
The following table shows the existing partitions if they are booted from the internal flash memory:
Partition |
Location |
---|---|
|
The first block device and the first partition |
|
The first block device and the second partition |
|
The second block device and the first partition |
|
The second block device and second partition |
|
The boot code partition 1 |
|
The boot code partition 2 |
The mmcblk0p1
and mmcblk0p2
partitions, respectively, relate to the first and second partitions of the first block device (the number zero), whereas the mmcblk1p1
and mmcblk1p2
partitions relate to the second block device (the number one).The order of the block devices changes if an external microSD card is installed and booted.
Note
If there is no external microSD card installed, the internal memory is/dev/mmcblk0
; if it is installed, the internal memory is /dev/mmcblk1
instead.