The limits for Power-Safe filesystems (supported by fs-qnx6.so) include:
The maximum file size depends on the block size but also the maximum filesystem size.
Although 64-bit addressing is used, the block pointers are always 32 bits. The inode for a file has 16 pointers at the root of the block lookup tree. So, with a 1 KB block size, you can fit 256 block pointers in a block and so, a file that's up to 16 × 256 × 1 KB (4 MB) requires one level of indirect pointers. If the file is bigger, you need two levels (i.e., 16 blocks of 256 pointers to blocks holding another 256 pointers to blocks), which gives a maximum file size of 1 GB. For three levels of indirect pointers, the maximum file size is 256 GB.
Block size | Maximum file size |
---|---|
0.5 KB | 16 GB |
1 KB | 256 GB |
2 KB | 4 TB |
4 KB | 16 TB |
8 KB | 32 TB |
16 KB | 64 TB |
32 KB | 128 TB |
The same as the maximum number of inodes minus two (one is reserved for "/", the other for "/.boot").
This number can be set by either mkqnx6fs (with the -i option), or mkqnx6fsimg (with the num_inodes attribute in the buildfile). Both utilities assign default values if the number isn't specified.
You can query this value at any time with df -g mountpoint, where the variable is set to the Power-Safe filesystem mountpoint. The chkqnx6fs -S option also shows this value.
Block size | Maximum filesystem size |
---|---|
0.5 KB | 2 TB |
1 KB | 4 TB |
2 KB | 8 TB |
4 KB | 16 TB |
8 KB | 32 TB |
16 KB | 64 TB |
32 KB | 128 TB |