LINUX.ORG.RU

Тонкий клиент WYSE C10LE и состояние 32-битных систем

 ,


3

1

Запустил Debian 11 с LXQt на WYSE C10LE — тонком клиенте из 2010, построенном на платформе VIA Eden Esther VX855 — несуперскалярном 32-битном процессоре x86 с частотой в 1 ГГц, 512 МБ DDR2 RAM и 128 МБ флеш-памяти, подключённой к шине IDE.

Процессор относительно современный, в наличии SSE2 и SSE3 (PNI). За видео в этом SoC отвечает VIA Chrome9 HCM, поддерживающий DirectX 9 и декодирование H.264 в Windows, но в Linux обеспечивающий только самое базовое 2D-ускорение средствами открытого драйвера OpenChrome. Также существует проприетарный драйвер, поддерживающий 2D и 3D, но только под Ubuntu 12.04-12.10.

Система работает, на удивление, не так уж и плохо. Для совсем старых и низкопроизводительных платформ существует только один сравнительно современный веб-движок — QtWebkit, который устарел, плохо обрабатывает современный javascript и содержит известные уязвимости, зато присутствует во многих дистрибутивах в том или ином виде, хоть как-то поддерживается и — главное — быстро рендерит и потребляет малое количество памяти.

На фотографии представлен веб-браузер Qutebrowser с 7 открытыми вкладками, в режиме работы с QtWebkit. Как видно, даже с 7 вкладками (2 из которых ­— страницы Википедии с большим количеством картинок) браузер потребляет около 140 мегабайт, что позволяет комфортно сёрфить интернет на смешных 512 МБ RAM.
Из других браузеров, до сих пор поддерживающих QtWebkit, можно отметить Otter Browser и KDE’шный Konqueror, который дополнительно поддерживает еще и KHTML (3 движка в одном браузере), но в Debian собран только с WebEngine. Первый в репозиториях Debian не присутствует.
Браузер Seamonkey, актуальная версия которого построена на базе движка из Firefox 60, работает более-менее сносно, но не блестяще — рендерит дольше QtWebkit’а примерно в 2-3 раза, потребляет заметно больше памяти, зато работает со всеми современными сайтами. Можно использовать в качестве запасного варианта, когда QtWebkit не справляется.

Опробовав разные дистрибутивы на этой машине, обнаружил следующие особенности и проблемы:

  1. Syslinux на этой платформе запускается сам и загружает ядро и initrd на порядок быстрее GRUB2 — 5 секунд против примерно 1 минуты. Бегло посмотрев код загрузки ядра и включив режим отладки в GRUB, каких-то очевидных проблем, которые могут вести к такому поведению, не обнаружил, детально отлаживать не стал. Загрузка в GRUB2 происходит по USB 2.0, не по 1.1 (загрузчик plop перед запуском grub не ускоряет процесс).
  2. У syslinux на удивление плохая документация. Quick start’ы из wiki все какие-то недописанные — не пошаговое руководство, а разрозненная информация. Нигде не говорится о необходимости копирования .c32-файлов, если нужно меню — додумался сам, благо кучу раз видел файлы syslinux в других дистрибутивах.
  3. С некоторыми вызовами ACPI на WYSE наблюдаются проблемы. В частности, thermal-подсистема отдаёт ответ по 5-6 секунд, что и замедляет загрузку ядра, и тормозит на 5-6 секунд каждый вызов утилиты sensors. Благо, в ядре есть отдельный thermal-драйвер под процессор, что позволяет отключить ACPI thermal без последствий и потери в функциональности.
  4. Все GTK3-приложения подтормаживают, медленно прорисовывают окна, с задержкой откликаются на действия. Возможно, дело в теме, но её смена и попытка отключить все анимации к заметному ускорению не привели. GTK2 и Qt5 откликаются на действия быстро, работают хорошо.
  5. В последних версиях ядра Linux (в т.ч. LTS-ветке 5.15) присутствует ошибка, приводящая к зависанию этого процессора (вот эта проблема)
  6. Графический сеанс Debian не запускался сразу после установки. Проблема оказалась в systemd: systemd-logind устанавливает опцию CanGraphical=false из-за видео, потому, что драйвер OpenChrome выполнен в виде X.org DDX, и ни DRM, ни FB не поддерживаются. Простое решение — добавить nomodeset в строку запуска ядра: [1], [2]
  7. В archlinux32 всё сломано: многие программы не запускаются из-за обновлений библиотек без перекомпиляции всех пакетов, от них зависящих, т.к. не всегда их возможно перекомпилировать с современными версиями библиотек и компиляторов (многим «жирным» проектам требуется больше 4 ГБ виртуальной памяти для сборки, они падают на 32-битных системах, а кросс-компиляция в archlinux32 не используется). Разработчики выпускают shim-пакеты со старыми библиотеками, чтобы хоть как-то вернуть работоспособность программ, но библиотеки необходимо устанавливать вручную, в виде зависимостей к пакетам они не прописаны.
    Устанавливаешь chromium — не запускается, seamonkey — не запускается. Удручающее зрелище.
  8. Дистрибутив slitaz включает веб-браузер и кучу программ в 50 мегабайт iso-образа, но тоже страдает от проблем с версионностью библиотек. Многие пакеты серьёзно устрарели, но сам факт возможности упаковки веб-браузера, аудио и видеоплеера, полноценной темы со всеми иконками, всех возможных средств настройки системы и прочего всего в 50 мегабайт впечатляет. Проект почти не развивается.
  9. Основные устоявшиеся дистрибутивы Linux либо не формируют .iso для x86, либо вовсе не предоставляют 32-битных пакетов. Некоторые форки RHEL, такие как Rocky Linux, можно забутстрапить из 32-битных репозиториев, также есть x86 ISO OpenSUSE Tumbleweed (который rolling release), но если смотреть глобально, полноценная поддержка x86 осталась только в Debian.
  10. zstd даже с -22 –long не дотягивает до степени сжатия xz -5 для упаковки rootfs.

>>> Просмотр (3728x2700, 1280 Kb)

★★★★★

Проверено: hobbit ()

Ответ на: комментарий от smilessss

Я купил несколько десятков таких клиентов по дешевке, с целью использования в качестве специализированных маршрутизаторов на OpenWRT. Они для этой цели подходят идеально — большое количество оперативной памяти и флеша позволяют уместить все необходимые программы, в отличие от обычных потребительских роутеров.

А тесты в качестве десктопа — так, просто проверка состояния современных 32-битных дистрибутивов и возможности использования подобных малопроизводительных платформ для десктопных задач в современных условиях.

ValdikSS ★★★★★ ()
Последнее исправление: ValdikSS (всего исправлений: 1)

Проект почти не развивается.

Щито поделать. Древнее ядро и древняя версия gcc накладывают свои ограничения, а обновлять их основные разработчики почему-то не хотят по своим соображениям.

На этом тонком клиенте отлично Win98 со старыми играми бегают)

devl547 ★★★★★ ()
Ответ на: комментарий от gremlin_the_red

Спойлер: они умерли. /thread

Спорный спойлер. Мир к счастью смартфонами и десктопами не заканчивается.

ssh2 ★★★ ()
Ответ на: комментарий от ValdikSS

Я купил несколько десятков таких клиентов по дешевке, с целью использования в качестве специализированных маршрутизаторов на OpenWRT.

А планируется какая-нибудь оркестрация? В смысле централизованное управление устройствами.

ssh2 ★★★ ()
Ответ на: комментарий от gremlin_the_red

Вот только не умерла необходимость гонять 32-битный софт в вайне. А ещё никто так и не сказал в чём проблема продолжить собирать их версию.

kirill_rrr ★★★★★ ()

Любопытное упражнение в некромантии. Особенно по части браузера.

kirill_rrr ★★★★★ ()

браузер потребляет около 140 мегабайт, что позволяет комфортно сёрфить интернет на смешных 512 МБ RAM.

это фантастика. (с) у меня браузер в своп уходит на 64 Гб. кроме озу.

crypt ★★★★★ ()
Ответ на: комментарий от ssh2

Да, планируется система проверки доступности сайтов и сервисов.

ValdikSS ★★★★★ ()
Ответ на: комментарий от ValdikSS

Там на сколько производительные через raspberry pi 3 ? По части сети

pinachet ★★★★★ ()

Qutebrowser

Хорошая вещь, но с links в плане скорости работы и удобства мало что сравнится.

Осталось мне найти приличный ридер для epub-fb2-mobi книг, и будет почти десктопная ось. Calibre неплохая вещь и довольно всеядная, но открывать книги по минуте, которые e-ink читалка открывает за 5 секунд… Не совсем.

tt ()
Ответ на: комментарий от gremlin_the_red

состояние 32-битных систем

Спойлер: они умерли. /thread

Mozilla/5.0 (X11; Linux i686; OpenBSD i386) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36

Марширует кладбище,
Дружно, да не в ногу,
Новые товарищи,
Старая дорога…
(Ю.Шевчук, «Кладбище»)

tt ()
Последнее исправление: tt (всего исправлений: 1)

zstd даже с -22 –long не дотягивает до степени сжатия xz -5 для упаковки rootfs.

Интересный результат.

token_polyak ★★ ()

Зачем ты гуглишь про: «гиеновидная собаку» и «красного волка»?

romanlinux ★★ ()

Минуты две думал, к какому «взрослому» компьютеру тонкие клиенты подключены; странно, конечно, но веселиться не запретишь. Хотя, придумать сценарии использования как походной машины, в принципе, можно — вон, есть же какая-то затычка для HDMI с хромосью.

Princesska ★★★★ ()

Haiku уже советовали попробовать на железке этой?

Если попробуешь, жду отчёта, интересно.

EXL ★★★★★ ()
Последнее исправление: EXL (всего исправлений: 2)

Вспомнил про терминал Wyse WY-50. Редкий качественный пост здесь, было интересно читать.

Evenik ()
Ответ на: комментарий от token_polyak

Вернёмся во времена 6 дебиана, когда приходилось держать в х86_64 репе отдельные 32-битные пакеты, а юзер должен был молиться чтобы комплект был достаточным и ещё надо было угадать что ставить потому что механизмы зависимостей на них не работали?

kirill_rrr ★★★★★ ()
Ответ на: комментарий от kirill_rrr

Все библиотеки вайна, которые до этого шли как посиксовые .so, переделывают в PE. Это, кроме других преимуществ, отвяжет вайн от 32-разрядных библиотек. Также DRM-зонды не будут ругаться на модифицированные компоненты винды, что безусловно полезно для вульвы, например.

Таким образом, внутри вайн будут библиотеки WoW64 для запуска 32-разрядных экзешников (что по-любому нужно, ибо большая часть виндового софта 32-bit only, а то и 16-bit - те же установщики Wise или InstallShield), снаружи - 64-разрядные бинарники, и никакого мультилиба.

Работа почти завершена, вот прямо позавчера выпустили 7.8, в которой из встроенных не-PE библиотек остались openal32.dll, opengl32.dll и wineusb.sys.

token_polyak ★★ ()
Ответ на: комментарий от token_polyak

в которой из встроенных не-PE библиотек остались openal32.dll, opengl32.dll и wineusb.sys

Так к графике (и получается звуку) и было больше всего вопросов. Но если доделают и будет работать, тогда ладно.

Правда может внезапно всплыть како нибудь друго х86_32 софт, который тоже надо запускать.

kirill_rrr ★★★★★ ()
Последнее исправление: kirill_rrr (всего исправлений: 1)
Ответ на: комментарий от devl547

Давно?

Но на старой системе у меня castor в разы быстрее lagrange работает.

alt-tab-let ()

Спасибо за скрин и описание. С удовольствием почитал.

Odalist ★★★★★ ()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)