Почему я получаю ошибки после переноса приложения и попытки его запуска?

Не делайте этого!

В режиме ядра FPU отключен по нескольким причинам:

  • Он позволяет Linux работать в архитектурах, которые не имеют FPU
  • Он не позволяет сохранять и восстанавливать весь набор регистров каждый переход ядра / пользователя-пространства (это может удвоить время переключения контекста)
  • В основном все функции ядра используют целые числа для представления десятичных чисел -> вам, вероятно, не нужна плавающая точка
  • В Linux преемственность отключается, когда пространство ядра работает в режиме FPU
  • Число плавающей запятой является злым и могут создавать очень плохое неожиданное поведение

Если вы действительно хотите использовать номера FP (и не должны), вы должны использовать kernel_fpu_begin и kernel_fpu_end примитивы, чтобы избежать разбиения регистров пользовательского пространства, и вы должны учитывать все возможные проблемы (включая безопасность) при работе с номерами FP.

0
задан Vlad Zhbankov 17 January 2019 в 08:11
поделиться