Единственные фрагменты этого, которые удобочитаемы, для нормальных людей, — сообщения об ошибках и предупреждения. И все что здесь заслуживает внимания, это то, что Linux не останавливает, и не падает, когда он встречает ошибку; он выдает вразумительную претензию, прекращает попытки запустить какой‑то упрямый или поврежденный процесс, и катится дальше. Это было решительно не верно для ранних версий "яблочных" и "мелкомягких" ОСей, по той простой причине, что ОСь, которая неспособна ходить и жевать жвачку одновременно, возможно, не сможет восстановиться от ошибок. Поиск и обработка ошибок требует отдельного процесса, работающего параллельно с тем, который "ошибся". Типа супер–эго, если угодно, что присматривает за всеми остальными процессами, и выскакивает, когда какой‑то из них теряется. Теперь, когда MacOS и "Винда" могут делать более чем одну вещь одновременно, они стали значительно лучше обрабатывать ошибки, чем обычно, но они даже не приблизились к Linux или другим Юнихам в этом отношении; и их большая сложность сделала их уязвимыми для новых типов ошибок.
Падучесть, искупление, погашение, доверие и другие заумные технические понятия
Линух не заточен под какие‑то централизованные политики, диктующие, как писать сообщения об ошибке и документацию, так что каждый программист пишет свои собственные. Обычно они на английском, даже если учесть, что до фига и больше линуховых программистов–европейцев. Часто они забавны (сообщения, а не программисты — прим. перев.). Но всегда честны. Если какая‑то бяка случилась, если программуля просто еще недоделана, или если пользователь что‑то воткнул не туда, об этом будет заявлено в лоб. Интерфейс командной строки облегчает программулям надоедание нам небольшими комментариями, предупреждениями, и сообщениями там и тут. Даже если приложение плющит как подбитую субмарину, оно обычно может все еще перебиваться небольшими сообщениями типа "S. O.S.". Иногда, когда вы кончаете работать с программой и закрываете его на фиг, вы обнаруживаете, что оно оставило серию некритичных замечаний и низкоуровневых сообщений об ошибах через окно терминала из которого вы его запустили. Как если бы программное обеспечение болтало с вами о том, как оно было, пока вы с ним работали.
Документация для Linux поступает в форме "человеческих страниц" (man pages — сокращение от manual ("Поручик молчать!" — прим. перев. — не от "рукосуйство", а от "руководство"). Вы можете иметь доступ к ним или через ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ (команда xman) или из командной строки (команда man). Вот образец со страницы руководства для программы вызывающей rsh: "Стоповые сигналы стопят только локальный процесс rsh; это возможно неправильно, но к настоящему времени слишком сложно, чтобы пофиксить, по причинам слишком заумным, чтобы объяснять здесь."
"Человечьи страницы" содержат много таких материалов, которые читаются подобно кратким мантрам пилотов, борющихся с управлением поврежденными самолетами. Общее чувство, — типа тысяч монументальных, но "темных" усилий, увиденных во вспышке стробоскопа. Каждый программист имеет дело с его собственными костылями и тараканами; он — слишком занят фиксированием их, и улучшением своих программулей, чтобы объяснять вещи подробно или удовлетворить сложные претензии.
На практике вы почти никогда не встретите серьезного "таракана" при прогоне Linux (в смысле, фиксить Линуха кувалдой о "трех пальцах", в отличие от Виндов, приходится очень редко — прим. перев). А если встретили — почти всегда это происходит с коммерческим софтом (различные поставщики продают программное обеспечение, которое работает под Linux). ОпСистема и ее основные программные утилиты слишком важны, чтобы в них водились серьезные жуки. Я работал под Линухом каждый день с позднего 1995–го и видал, как многие "аппликационные" программы рушились напрочь в пламени, но я никогда не видeл аварию самой ОпСистемы. Никогда. Ни разу. Довольно много линуховых систем, которые работают непрерывно и в жестких условиях в течение месяцев или лет, без необходимости в перезагрузке.
Коммерческие ОСи должны принять ту же официальную позицию по отношению к ошибкам, как коммунистические страны — к бедности. Исходя из доктрин, не возможно допустить, что бедность была серьезной проблемой в коммунистических странах, поскольку целью коммунизма являлась ликвидация бедности. Аналогично, коммерческие "осевые" компании, типа "Яблока" и "Мелкософта", не могут пройти мимо допущения, что их программное обеспечение "утараканено" и что оно разрушаеся все время, сколько‑нибудь изящнее, чем Disney, который может выпустить пресс–релиз о том, что Микки Маус — просто актер в костюме.