Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Установка Ubuntu c RT ядром  (Прочитано 3276 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн almatec

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Установка Ubuntu c RT ядром
« : 26 Июля 2018, 14:22:04 »
Добрый день уважаемые форумчане.
Дело следующее
Для решения моей задачки нужно поставить на машину Linuxcnc в связке с платами ввода вывода от Mesanet.
Так как я не особо понимаю в линуксах, но самое первое что я попытался сделать это просто скачать готовый образ с linuxcnc.org и не мучаться, однако по умолчанию они предлагают ставить debian wheezy, который иногда жутко тормозит на моем железе, либо отваливатся аппаратура. Беглый поиск сразу сказал что новые материнки с apollo lake могут себя так вести.
Нашел инструкцию, тут https://forum.linuxcnc.org/9-installing-linuxcnc/33521-building-linuxcnc-dev-on-ubuntu-16-04-preempt-rt-kernel
В принципе вроде все просто, решил ставит Ubuntu 18.04LTS
Мать Asrock ITX-J3455
После установки образа с главного сайта все работает, система загружается за 17 сек и пока не вызывает вопросов
Далее собрал и установил ядро как описано
Выбрал в качестве RT ядра 4.14.52, как самый последний вариант RT ядра.
В базовой же установке стоит ядро 4.15.0, думаю что принципиальных отличий нет
Удивительно ;D, но после перезагрузки и выбора ядра все запустилось.
Но есть пару раздражающих и непонятных вещей.
В RT варианте загрузка занимает почти минуту, половину этого времени он висит после надписи "Загружается начальный виртуальный диск" беглый анализ dmesg показывает что 35 секунд машина тупит над командой initrd и распаковкой чего-то большого.
Зашел в папку /boot и увидел что образы initrd отличаются по размеру в 10 раз!
От исходной образ весит 50 Мб, а от той что я скомпилировал больше 500Мб
В общем вопрос как я это сделал ;D и что с этим можно сделать?

Второй вопрос, при загрузке RT после того как он потупил появляются несколько сообщений о проблемах в hardware
mce: [Hardware Error]: CPU 0: Machine Check: 0 Bank 4: e600000000020408
mce: [Hardware Error]: TSC 0 ADDR fef5b580
mce: [Hardware Error]: PROCESSOR 0:506c9 TIME 1532599333 SOCKET 0 APIC 0 microcode 2c
И еще какая то фигня о TPM

При это все дальше идет хорошо и загружается

При загрузке с обычным ядром сообщений не наблюдаю.

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6167
    • Просмотр профиля
Re: Установка Ubuntu c RT ядром
« Ответ #1 : 26 Июля 2018, 14:42:21 »
almatec, почему нельзя поставить linux-lowlatency из репозитория? Зачем компилировать собственное?

Оффлайн almatec

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Установка Ubuntu c RT ядром
« Ответ #2 : 26 Июля 2018, 15:11:30 »
Спасибо хороший вопрос.
Во первых, как я сказал я не очень в этом ориентируюсь, так что не знаю.
LinuxCNC это же для управления движением станка, так что требования к задержкам есть.
Во вторых сообщество linuxcnc.org говорит так делать, иначе я думаю у меня станок далеко не поедет
http://linuxcnc.org/docs/html/getting-started/getting-linuxcnc.html#_installing_linuxcnc
Хотя инфа старая уже.

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6167
    • Просмотр профиля
Re: Установка Ubuntu c RT ядром
« Ответ #3 : 26 Июля 2018, 15:22:27 »
попробуйте имеющееся в репозитории и оцените результат. На нём работает ubuntustudio, где задержки при работе с мультимедиа тоже критичны.

у меня ваша ссылка не открывается.

Оффлайн almatec

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Установка Ubuntu c RT ядром
« Ответ #4 : 27 Июля 2018, 00:00:54 »
Очевидно мне придется провести много опытов с разными вариантами, однако это особенно утомительно если это приходится делать методом тыка.
https://www.opennet.ru/base/sys/initramfs_monify.txt.html
Вот эта статья помогла улучшить положение - образ диска уменьшился до 188Мб, при этом образы generic стали 26Мб
Стало раза в два быстрее грузиться, но есть куда работать

Продолжаю эксперименты и сбор разрозненной информации.

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6167
    • Просмотр профиля
Re: Установка Ubuntu c RT ядром
« Ответ #5 : 27 Июля 2018, 08:47:45 »
то есть
sudo apt install linux-lowlatencyдля вас слишком просто и хочется драйва?

Оффлайн almatec

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Установка Ubuntu c RT ядром
« Ответ #6 : 27 Июля 2018, 17:17:55 »
Я даже не знаю
В linuxcnc крутятся два процесса, один с периодом 1мс, а второй 25мкс.
Поэтому в документации четко написано ставить RT ядро, иначе программа пригодна только для проверки софта и траекторий.
Зачем я буду пробовать заведомо нерабочий вариант?

В принципе я добился всего что нужно, ядро собрал поставил, linuxcnc собрал - работает
Кому интересно по этой теме - вот тут самая исчерпывающая статья
https://forum.linuxcnc.org/9-installing-linuxcnc/32193-complete-how-to-linux-mint-18-1-32-64-rtai-or-preempt-with-rip-install-or-deb

Но остались те самые нюансы с которых я и начинал тему.
Сегодня полдня курил интернет однако так и не понял где лежит список того что mkiniramfs кладет в образ.
Я пока собирал его, видел, что он задумывается над папками драйверов видеокарт и еще чего-то. Это явно как раз и есть тот мусор который раздувает образ.

И еще напрягает сообщения об ошибках микрокода на загрузке, напоминаю я ставлю Ubuntu 16.04 LTS на плату Celeron J3455

Прошу помощи кто знает как это поправить

Оффлайн MooSE

  • Старожил
  • *
  • Сообщений: 1117
    • Просмотр профиля
Re: Установка Ubuntu c RT ядром
« Ответ #7 : 28 Июля 2018, 15:21:06 »
https://www.opennet.ru/base/sys/initramfs_monify.txt.html
Вот эта статья помогла улучшить положение - образ диска уменьшился до 188Мб, при этом образы generic стали 26Мб
Стало раза в два быстрее грузиться, но есть куда работать
Я как автор того материала скажу что это влияет только на скорость загрузки, но не на работу после неё.

А вам уже советовали linux-lowlatency. Про него вот тут написано:
Цитировать
-lowlatency kernel - very similar to the -preempt kernel and based on the -generic kernel source tree, but uses a more aggressive configuration to further reduce latency. Also known as a soft real-time kernel.

Т.е. в целом это именно то что вам надо и без лишних плясок с бубном.

 

Страница сгенерирована за 0.051 секунд. Запросов: 25.