Попытался открыть в Kate текстовый файл на 300 МБ 1 ГБ, всё зависло, в tty не выйти. Светодиод винчестера на ноутбуке постоянно горит. Индикаторов Caps и Scroll Lock нет
Мне больше интересно почему в VSCode который писался Web-макаками 300 МБ файл открывается в лёт, а в Kate и GEdit который был написан хадкорными сишными и приплюснутыми «дидами» ака «сейчас таких не делают» – висяки и подобное поведение.
Ну а по сабжу, пробуй SysReq+REISUB по очереди и настрой systemd-oomd, подозреваю что убогий Kate попытался распарсить подсветку синтаксиса на 300 МБ файле регуляркой, съел всю RAM и вместо того чтобы сразу получить OOM-Killer’ом молотком по пальцам за ужасное качество KDE-софта – остался висеть и своппить всю систему.
If your shitty X server is frozen and you cannot access any virtual console, using “Alt + SysRq + r” should take the keyboard away from the silly X server and let you perform “Ctrl + Alt + F1” in order to get to a terminal and kill the appropriate processes.
If you do not have the patience to do that, “Alt + SysRq + k” will kill everything in the same way as “Ctrl + Alt + Backspace” (but more violently).
If nothing responds at all, and the only way is to reboot your computer, the classical combo is “reisub” for “Raising Elephant Is So Utterly Boring”, or just remember the opposite of “busier“. Use each letter of this anagram with the magic key in order to:
r - Take the keyboard from stupid X
e - Ask all programs to end gently
i - Kill the one who did not
s - Save the data from the cache to the hard drive
-Example - your shitty X server is frozen
+Example - your shitty wayland is frozen
-r - Take the keyboard from stupid X
+r - Take the keyboard from stupid wayland
Паника это когда экран переключается на текстовую консоль и выводится диагностическая информация. Этого может не произойти, если баг в графических драйверах и просто вся графическая подсистема ухайдокалась, но вряд ли твой случай к этому относится.
А у тебя просто ОС медленно работает. Надо подождать.
Мне больше интересно почему в VSCode который писался Web-макаками 300 МБ файл открывается в лёт, а в Kate и GEdit который был написан хадкорными сишными и приплюснутыми «дидами» ака «сейчас таких не делают» – висяки и подобное поведение.
Потому, что в vscode используются продуманные алгоритмы и структуры данных, позволяющие работать с файлами произвольного размера (хотя я сам в этом сомневаюсь, но в рамках данного сообщения поверю тебе на слово), а в Kate и GEdit используются простые алгоритмы, которые работают плохо для файлов большого размера.
А вообще я за всю жизнь видел только один редактор, который действительно хорошо работает с файлами произвольного размера. Это мало известная программа под Windows под названием EditPad. Я его даже когда-то покупал. Конечно таких программ явно больше одной, но я других не видел.
Иными словами алгоритмы обеспечивают асимптотическую сложность. Правильные алгоритмы будут давать сложность O(1) для отображения и редактирования файла любого размера (т.к. в окне редактирования вмещаются лишь несколько тысяч символов). А конкретный язык даст просто коэффициент к этой сложности. Редактор на C будет реагировать за 1 микросекунду на действие. Редактор на JS будет реагировать за 1 миллисекунду на действие. Оба редактора будут выглядеть быстрыми для пользователя в итоге.
Наверно как раз потому что по инету расплодились вредные гайды делать reisub в любой ситуации, вон даже EXL их пересказывает. Если у тебя система в аварийном состоянии, то пытаться штатно завершать работающие программы не всегда хорошая идея, этим в некоторых случаях можно только усугубить проблемы. Просто нажать alt-prtsc-B (или кнопку reset на компе) в большинстве случаев будет не хуже чем эта длинная последовательность.
Потому что это очень неудобно для гуи - на alt-f1 гуи-хоткей не повесить. А виндузятники скорее всего ещё alt-f4 на закрытие окна хотят. Что-то не верится что вайланд клавиатуру не захватывает. Иксы вот захватывают (и даже переключение терминала ctrl-alt-f1 обрабатывается xorg-ом а не ядром).
Где «там»? Ядерное переключение Alt+Fn. Иксы клавиатуру перехватывают, а Ctrl+Alt+Fn обрабатывают сами, эмулируя то же самое. Что у вайланда не знаю, но сомневаюсь что он отдаёт Alt+Fn ядру.
Ты читать разучился или как? Если Alt-Fn не работает на переключение значит клавиатура перехватывается. Ctrl-Alt-Fn обрабатывается юзерспейсной прогой.
Повторю: если система в аварийном состоянии то лучше не пытаться делать штатное завершение. И не писать ничего на диск - вместо правильных данных может записаться какой-то мусор, сгенерированный ядром в забагованном состоянии. А файловая система нормально починится после ребута и без этого, а некоторым и починка не нужна.
Для работы с такими файлами сделали команду less, а ещё grep. При помощи них можно работать и с 10 и более файликами 😃. А с кейт думаю надо просто подождать, если есть своп.