Which filesystem for RTEMS?

I see in the User Manual (v6.1, ch. 1.2 Features) that RTEMS can use these filesystems: IMFS, FAT, RFS, NFSv2 and (for flash) JFFS2, YAFFS2.

However, in 8.1.4.4 Example Booting RTEMS on ZCU102 board, a Xilinx bsp image (or alternatively an Ubuntu image) is used to create the SDcard. That contains an ext4 partition with a Linux-type rfs (root filesystem).

How is the rfs made in RTEMS? Where it sits in the boot media? Can I use ext4? Is the above rfs in the example not used? what is used instead?

In this example, RTEMS does not use the filesystem on the SD card at all. RTEMS is loaded from the FAT32 partition of the SD card by u-boot. It is possible to access the SD card from RTEMS, but this requires libbsd for the SD card drivers. You can use the media01 test in libbsd to verify access to the SD card FAT32 partition.

1 Like

Not having seen in the User manual a reference to how to build a filesystem for RTEMS, but there are 25 mentions of “filesystem”…

Do you mean by “filesystem”, how the boot media is organized (i.e. its filesystem)?

In this case, I’m speaking about a filesystem that RTEMS presents to the user. The root file system is typically an instance of In-Memory File System (IMFS) when present and other filesystems can be mounted into it if available.

The boot media from which RTEMS is loaded may not even been a filesystem in the traditional sense as it could be a raw offset and size loaded from NOR or NAND (or even from JTAG).