Я не уверен, что вы называете ОС 32 битами.
Чтобы быть конкретным, мой дистрибутив ядра и рабочего стола - 64-разрядный Debian / Sid, но я обычно использую schroot для запуска deboostrap -ed 32 бит Debian внутри среды chroot (для целей тестирования).
Считаете ли вы, что моя 32-битная среда должна быть названа 32 битами (я считаю,) или 64 бита (в конце концов, он запускается внутри ядра с 64 битами). В этой среде uname -m указано i686, а все библиотеки и исполняемые файлы и процессы - 32 бита.
Для практических целей uname -m должно быть достаточно. Команда file может рассказать вам, является ли исполняемый файл ELF 32-битным или 64-битным.
См. Конкретную личность Linux (2) syscall (а также uname (2) one). [ ! d4]
И аппаратная информация о вашем процессоре видна, например,
cat /proc/cpuinfo
. Его вывод такой же в моей 64-битной системе на рабочем столе и в моей 32-битной среде с открытым исходным кодом.
Я попытался сделать это в своей предыдущей работе, где я тестировал устройство хранения. Проблема с flakey заключается в том, что она обычно слишком ошибочна в неправильных местах и вызывает слишком резкую ошибку.
Вам нужно указать, как устройство является чешуйчатым, по умолчанию используется жесткая ошибка, из-за которой вы предотвращаете используя это, есть еще два варианта: drop_writes и corrupt_bio_byte
drop write - не удастся выполнить все записи, но читает успешное
drop пишет - возможно, что вы необходимо, поскольку это позволяет более тонкий поломка, которая возможна для инструментов для обработки.
Документация для dmflakey находится здесь https://www.kernel.org/doc/Documentation/device-mapper/dm-flakey .txt
например:
Это должно приводить к возникновению каждого 32-го байта каждого READ, который был 1 равным 0
sudo dmsetup create test --table '0 123 flakey 1 0 /dev/loop0 1 corrupt_bio_byte 32 r 1 0'