Разница между оболочками

Большинство сигналов по умолчанию фатальные. Любой сигнал , указанный в списке с действием по умолчанию «завершение» или «сброс ядра», является фатальным, если только он не проигнорирован или не обработан явно. Сюда входят такие «доброкачественные» сигналы, как SIGUSR1, а также SIGKILLразумеется, SIGTERMи т. д.

Это соответствует определению фатальных сигналов ядра Linux; чтобы сигнал был фатальным:

  • это не должен быть один из игнорируемых сигналов (с точки зрения ядра )или один из стоп-сигналов, т.е. соответственно SIGCONT, SIGCHLD, SIGWINCH, иSIGURGс одной стороны, и SIGSTOP, SIGTSTP, SIGTTINи SIGTTOUс другой ;
  • его обработчик сигнала должен быть обработчиком по умолчанию.

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

-2
07.04.2021, 23:00
1 ответ

Основная роль оболочки — позволить вам запускать программы, установленные в вашей системе. Как следствие, все оболочки командной строки позволяют запускать практически одни и те же команды. Различия заключаются в очень небольшом количестве команд, встроенных в сами оболочки, которые немного различаются между оболочками.

Оболочки различаются, главным образом, с точки зрения их средств программирования и возможностей командной строки (завершения, вызова истории, синтаксического удобства и т. д. ). Видеть Каковы фундаментальные различия между основными *оболочками NIX? . Оболочки отвечают за выпуск командной строки , и это тоже зависит от оболочки.

Для интерактивного использования по умолчанию в Linux используется bash, а в macOS — zsh. Если вы начали привыкать к bash, вы можете прочитать мое руководство о том, почему zsh лучше . Единственным другим серьезным претендентом на интерактивное использование является fish , у которого хорошие настройки по умолчанию, но мало возможностей для настройки.

1
28.04.2021, 22:53

Теги

Похожие вопросы