-
- Евгений, вы же знаете про проект LinuxCNC? Он сейчас может по другому называется, но там управляющий софт был в том числе и на питоне, взаимодействуя с ядром, из которого "торчали" RT вызовы. Не вижу препятсвий для использования с Lua. Управление ЧПУ - вполне себе реалтайм, имхо. - Dingo(05.11.2020 16:31)
- затащить непойми-какую хрень в ринг0 и взбадривать машину внешним
ресетом? ну, такое... - фyтбoлиcт(01.11.2020 14:31,
)
- VM может быть весьма дуракоупорной и независающей. Это скорее
технология повышения надежности. - Evgeny_CD(01.11.2020 18:00)
- BTW, у линуха в ядре уже есть VM для всяких файрволлов и роутеров.
Может ее как-то заюзать? LightElf(4 знак., 02.11.2020 12:30 - 12:44, ссылка)
- Это пакетный фильтр, работает до попадания пакетов в сетевой стек
ядра, некоторые сетевые адаптеры его могут, тем самым разгружая
cpu. Дoктyp77(87 знак., 02.11.2020 13:08)
- Это целый фреймворк, с JIT-компилятором и библиотекаршами, который
можно для разных целей юзать. - LightElf(02.11.2020 13:22)
- Ага, через него вроде systrace работает. - fk0(02.11.2020 13:31, ссылка)
- Это целый фреймворк, с JIT-компилятором и библиотекаршами, который
можно для разных целей юзать. - LightElf(02.11.2020 13:22)
- Так так. А что это за VM? - Evgeny_CD(02.11.2020 12:31)
- Называется LightElf(4 знак., 02.11.2020 12:45, ссылка)
- Ага, такие буквы мне попадались. Спасибо! - Evgeny_CD(02.11.2020 13:00)
- Называется LightElf(4 знак., 02.11.2020 12:45, ссылка)
- Это пакетный фильтр, работает до попадания пакетов в сетевой стек
ядра, некоторые сетевые адаптеры его могут, тем самым разгружая
cpu. Дoктyp77(87 знак., 02.11.2020 13:08)
- Это скорее технология "синего экрана" Дoктyp77(142 знак., 02.11.2020 09:56)
- Значит, стек экономим и память хаваем, выделенную ядерным
аллокатором. - Evgeny_CD(02.11.2020 11:17)
- Pawn весьма экономен по памяти данных! - Evgeny_CD(02.11.2020 11:19)
- Pawn, вроде как, совсем не Lua? - LightElf(02.11.2020 12:28)
- Сейчас мы ищем принцип. С этой точки зрения без разницы :) - Evgeny_CD(02.11.2020 12:32)
- Pawn, вроде как, совсем не Lua? - LightElf(02.11.2020 12:28)
- Pawn весьма экономен по памяти данных! - Evgeny_CD(02.11.2020 11:19)
- Значит, стек экономим и память хаваем, выделенную ядерным
аллокатором. - Evgeny_CD(02.11.2020 11:17)
- BTW, у линуха в ядре уже есть VM для всяких файрволлов и роутеров.
Может ее как-то заюзать? LightElf(4 знак., 02.11.2020 12:30 - 12:44, ссылка)
- VM может быть весьма дуракоупорной и независающей. Это скорее
технология повышения надежности. - Evgeny_CD(01.11.2020 18:00)
- Ключевой вопрос - M$ имеет какой-нибудь запрет на VM в драйверах? - Evgeny_CD(01.11.2020 00:49)
- Вот народ что-то в этом духе под Windows копает. - Evgeny_CD(01.11.2020 00:54, ссылка)
- Замысел прост - я могу на непатченном (до RT) ядре Linux развернуть
PLC с латентностью менее 1мс. Что сильно-сильно меняет дело. - Evgeny_CD(01.11.2020 00:48)
- BTW, вроде бы народец из RTLinux близок к мейнлайнингу. Может просто дождаться счастья? LightElf(24 знак., 04.11.2020 15:39, ссылка)
- Выделить для низколатентных операций отдельное ядро - жаба душит? - LightElf(01.11.2020 01:03)
- А такой метод точно всегда сработает? - Evgeny_CD(01.11.2020 01:06)
- Почему нет? На уровне загрузчика отгрызаем кусок памяти, чтобы линух втуда не лез совсем. И одно ядро. А так же отрываем все железо, которое нужно этим самым низколатентным операциям. Тем же загрузчиком впиливаем в эту память спецуевый код. Общение с линуксячим драйвером - через межпроцессорные и софтовые прерывания. Даже на мелких одноядреных армах можно делать низколатентные операции, задействовав FIQ. Мне как-то надо было выдерживать довольно жесткие времянки на SPI NUC970 LightElf(109 знак., 02.11.2020 12:27)
- на интеловских процах: DPDK is supposed to poll a certain port for
incoming packets in an infinite loop, pinned to a certain logical
core. слышал, что 100G аппликухи до 4 кор отъедают только на
поллинг. - фyтбoлиcт(01.11.2020 14:29,
)
- А в 100G разве не DMA решения, с поллингом, бывают? На таких
скоростях без аппаратного ускорителя делать нечего. - Evgeny_CD(01.11.2020 18:02)
- В DPDK используется DMA сетевой карты для размещения пакетов в памяти, но данные из буферов опросом выгребаются потоками с высоким приоритетом. Дoктyp77(343 знак., 02.11.2020 09:54)
- 100G с поллингом работает. The DPDK implements a run to completion
model for packet processing, where all resources must be allocated
prior to calling Data Plane applications, running as execution
units on logical processing cores. The model does not support a
scheduler and all devices are accessed bypolling. The primary
reason for not using interrupts is the performance overhead imposed
byinterrupt processing. - фyтбoлиcт(01.11.2020 18:29,
)
- Офигеть! Спираль истории развития CPU зашла на новый виток... - Evgeny_CD(01.11.2020 18:30)
- А в 100G разве не DMA решения, с поллингом, бывают? На таких
скоростях без аппаратного ускорителя делать нечего. - Evgeny_CD(01.11.2020 18:02)
- А такой метод точно всегда сработает? - Evgeny_CD(01.11.2020 01:06)
- Мысль в том, что латентность, вызванная оверхедами на собственно
VM, сильно ниже латетности самой ОСи в user mode. Evgeny_CD(102 знак., 01.11.2020 00:37)
- А к стеку она доступ получить может, которого 2 или 4 Кбайта? Дoктyp77(64 знак., 02.11.2020 09:59)
- kmalloc / kfree ? - Evgeny_CD(02.11.2020 11:16)
- Да, но Дoктyp77(375 знак., 02.11.2020 11:28)
- Ага, кроличья нора все же есть! Спасибо! - Evgeny_CD(02.11.2020 11:31)
- Да, но Дoктyp77(375 знак., 02.11.2020 11:28)
- ФАК! Действительно, 8к стандартно... - Evgeny_CD(02.11.2020 11:13, ссылка)
- kmalloc / kfree ? - Evgeny_CD(02.11.2020 11:16)
- А к стеку она доступ получить может, которого 2 или 4 Кбайта? Дoктyp77(64 знак., 02.11.2020 09:59)