Не уверенный в последствиях производительности, но кажется, что возможный компромисс, по крайней мере, во время разработки, должен был бы включать обоих автоувеличенный, целочисленный "суррогатный" ключ, а также Ваш намеченный, уникальный, "естественный" ключ. Это дало бы Вам возможность оценить производительность, а также другие возможные проблемы, включая изменяемость естественных ключей.
Сборка strace не выполняет автоматический анализ структур и не генерирует для них парсеры - вам придется написать код для обработки ваших структур.
Самый простой способ добиться этого - написать промежуточный преобразователь библиотеки для ioctl ( )
. Там' хорошее руководство по выполнению этого в Linux здесь .
Вы можете проверить номера пользовательских команд, которые использует ваше приложение; и выгрузите структуры для них.