LINUX.ORG.RU
ФорумTalks

Ядерная консоль всё

 , ,


3

1

Собственно, сабж. Ядерную консоль закапывают совсем, а не только прокрутку в ней:

We'd like to move to CONFIG_VT=n as the console and vt subsystem have historically been a source of bugs but are also nasty places for locking etc. It also can be the cause of oops going missing when it takes out the panic path with locking bugs stopping other paths from completely processing the oops (like pstore or serial). ... Once you think through all the paths and things you want supported, you realise the best user console is going to be one that supports emojis and non-Latin scripts. This probably means you want a lightweight wayland compositor running a fullscreen VTE based terminal. Working back from the consequences of this means you probably aren't going to want this in systemd, and it should be a separate development.

The other area discussed was around the requirements for a panic/emergency kernel console, likely called drmlog, this would just be something to output to the display whenever the kernel panics or during boot before the user console is loaded.

https://www.phoronix.com/news/LPC-2022-Consoles-Accelerators

В качестве альтернативы предлагается, например, KMSCON: https://www.freedesktop.org/wiki/Software/kmscon/ .

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

Нет я на полном серьёзе написал для разного железа и версий Windows/Linux. После Windows 8 стало совсем дно с производительностью.

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

фреймбуферный fbcon, как я понял, и собираются выпилить

Так kmscon умеет и без kms на случай если дрова совсем никуда и даже kms не заводится?

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

если дрова совсем никуда и даже kms не заводится?

Есть же драйвера VESA/GOP с поддержкой KMS. Так что оно всегда должно заводиться если какие-то настройки не поломали.

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

Лучше бы реализацию псевдотерминалов в юзерспейс вынесли.

Давно пора ядро распилить на микросервисы.

wandrien ★★★
()

А kmscon вис намертво, когда я пробовал.

Ну может теперь допилят.

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

Странно, что не получили распространение клавиатуры с встроенным примитивным LCD дисплеем для вывода текста. Для таких целей они, как мне кажется, были бы удобнее.

Leupold_cat ★★★★★
()
Последнее исправление: Leupold_cat (всего исправлений: 2)
Ответ на: комментарий от wandrien

Давно пора ядро распилить на микросервисы.

Не потерять бы за этой движухой GPL.

Mirage1_
()
Ответ на: комментарий от X512

Попробуйте поменять размер окна Проводника и увидите слайдшоу

Что характерно, вплоть до WIn XP на Ati Mach и Matrox всё было норм.

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

в Линуксе при использовании Accelerated X на старых 2D карточках тоже всё нормально было.

Shadow ★★★★★
()
8 марта 2023 г.
Ответ на: комментарий от Werenter

Очень хорошая концепция, зачем её менять?

В некоторых случаях концепция «всё есть файл» неудобна и я бы предпочёл стандартную реализацию API в виде заголовочного файла со структурами, вместо ковыряния и ручного чтения этих файлов. Тем более много где там часто меняется текстовая разметка и старые утилиты перестают работать. В голове при написании утилит нужно держать «а что если они возьмут и поменяют разметку в будущем»?

Один из ярких примеров – получение списка активных процессов системы для своей утилиты. Где в случае концепции «всё есть файл» нужно городить рекурсивное чтение /proc и парсинг инфы из файлов оттуда, а если бы было адекватное системное API это бы решилось простым вызовом функции.

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

Конечно легче, а главное – безопаснее и намного удобнее.

В случае функции или метода у тебя есть контракт и проверки в компиляторе. В случае текста и внезапно изменившегося форматирования в нём у тебя будет heisenbug и не факт что ты его заметишь тогда, когда это нужно.

Яркий пример: Почему Линукс устарел? (комментарий)

Именно из-за идиотской концепции «всё есть текст», применяемой не к месту, в Linux-специфичных ветках плодится вот такой вот убогий говнокод:

  1. https://github.com/icculus/Serious-Engine/blob/29c44aed166872552c4e4c353ff6db4c3f0c08df/Sources/Engine/Base/Timer.cpp#L351-L394
  2. https://github.com/anrieff/libcpuid/blob/ccd0ec842652aa094c4f95d3509a96c27fdc202f/libcpuid/rdtsc.c#L125-L147
  3. etc.

Кстати, обратите внимание на код по веткам FreeBSD, macOS, Windows – насколько он проще и там нет никаких говнопарсеров ориентирующихся на разметку текстовых файлов.

Прикладные программисты для Linux открывают файлы и пишут корявые говнопарсеры для элементарнейших вещей вместо того, чтобы вызывать GetAllProcess(), GetCPUSpeedHz(), GetCPUName(), GetCPUSomeShit() и ехать дальше, решать конкретную задачу, а не думать о том, будет ли мой быстро накиданный наколенный парсер безопасным и неговнокодным?

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

Бывают API обёртки над файлами вроде libdrm. Правда в случае файлов устройтв видеокарт протокол бинарный через ioctl().

X512 ★★★★★
()

Это не консоль всё, это линуксу 3.14зда!

burato ★★★★★
()

линус торвальдс кукухой поехал

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

Как в дата центр пустили человека который не разбирается?

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

Если через «remote hands», то дежурная смена в ДЦ тоже не во всем шарит - им желательно все со скриншотами, что нажать, куда воткнуть.

Но как уже сказали, обычно консоль виртуальная и ее можно видеть в браузере через iLO/iDRAC/HMC/etc. Топать за физической консолью - это если что-то совсем поломалось.

bigbit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.