В настоящее время пытаюсь найти способ БУЛЬТЕТА найти размер сектора устройства на базе FLASH (тестирование с USB-накопителем), не получая убедительного ответа где-либо еще
использование stat дает мне размер = 4096 байт
struct stat info;
const char* device = "/dev/sdc";
if (stat(device, &info))
{
std::cout << "stat() error" << strerror(errno) << "\r\n";
exit(1);
}
std::cout << "Prefered block size for '" << device << "' is " << info.st_blksize << " byte" << std::endl;
но fdisk говорит 512 байт
Disk /dev/sdc: 3.8 GiB, 4047503360 bytes, 7905280 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Есть ли другой способ, которым я могу доверять?