Обработка не отвечающих программ в... ..Windows ..Linux УАААААААААААА! / Windows :: Linux :: ASM (ASM Comics,ASM Комиксы) :: Смешные комиксы (веб-комиксы с юмором и их переводы)
Подробнее
Обработка не отвечающих программ в...
..Windows
..Linux
УАААААААААААА!
ASM,ASM Comics,ASM Комиксы,Смешные комиксы,веб-комиксы с юмором и их переводы,Linux,Windows
То есть Линукс безжалостно удаляет перестающие отвечать файлы? Ебать он жестокий — если ты неполноценный и не может работать, то просто расстрел! Линукс - ОС для нацистов?!
Там хорошая система распределения ресурсов и процессорного времени. Оно зависит от множества параметров. Если процесс перестал отвечать, то его просто выкидывают из очереди полностью и отбирают все ресурсы (считай - процесс завершён), как-то так. Хот программу можно и вежливо попросить завершиться самой, да, если не помогло - чтож...
Никогда не программировал под линухс, внезапно стало интересно, а что имеется в виду под "перестал отвечать"? Это относится только к программам с графическим интерфейсом, которые обрабатывают последний полученный от пользователя сигнал и не могут принять новых? Просто меня смущает то, что речь идет о процессах вообще...
Не, сигналы там для всех процессов.
Приложение может, например, отморозиться от SIGHUP(посылается при закрытии терминала, откуда процесс запущен), но вот от SIGKILL(безусловное завершение) отморозиться не выйдет(бывают связанные с аппараткой траблы, когда это не так, но это исключения, и там только аппаратный же ребут).
Кстати, по поводу файлов. В Линуксе можно удалить исполняющийся файл ещё до его завершения, при этом он продолжит исполнение, а в Винде хуй ты удалишь какой-нибудь зловред, который наотрез отказывается завершаться.
Хе-хе, без рута жизнь плоха. А если серьёзно, то я по наивности влупил рмрф в корне под убунтой, мне разнесло весь home, часть /usr, и еще весь внешний винт елдой накрыло. Теперь я как-то осторожнее -r -f приписываю.
Ну серьёзно, часто ли нужен рут если ты не админ, а просто смотришь фильмы, слушаешь музон, сидишь на реакторе, гамаешь, рисуешь-моделируешь или даже кодишь? Мне лично sudo обычно приходится использовать только ради подтверждения установки обновлений, и то иногда влом это делать. Если у тебя все нужные пакеты стоят, то рут в повседневной жизни не нужон™.
Ну у меня там крутятся 2 мнстанса glasfish'a, jenkins, 2 mysql сервера и так по мелочи для веба. И там всего один пользователь - root. Я на эту машину редко хожу для серьёзных действий, ибо там уже всё настроено и работает. Но знаешь как оно бывает "Пили пиво, меняли пароли" :) Храни нас священный бекап :)
Нуу, в винде залогиниться под системом без плясок непросто. А обычный админ уже начиная с ХР - очень сильно обрезан в привилегиях.
Хотя, админу доступна отладка, а отладчиком можно завершить отлаживаемый процесс. Так можно закилять то, что обычно не убивается, типа services или csrss.
Помню я однажды жил на арче и обновил систему, не зная, что все бинарники переехали в /usr. Баш я по дурости закрыл сразу после, но холивар в запущенном файрфоксе завершить удалось.
Неа, не всегда. Особенно если это зловред, написанный не самыми кривыми руками, и запущенный из-под system. Но можно цепануться отладкой и тут же рубануть его(для ленивых - так умеет far).
способов много, тысячи их! Например - завалить аппаратными прерываниями. Другой пример - сумрачные гении из адоба со своим фальшплеером умеют делать такую каку, даже когда их поделка работает в песочнице браузера.
Я вот помню когда пользовался убунтой у меня горело по поводу выключения ПК. Если на винде какая-то программа не хочет закрываться нормально, к примеру предлагает пользователю диалог в том же ворде аля сохранить файл? То убунтовская юнити особо пользователя не спрашивает и просто напросто убивает процесс и если вдруг что то ты забыл сохранить... Всё пиздец!
Если говорить про предустановленное ПО, то в зависимости от дистрибутива можно очень долго перечиалять отличия. Тут речь шла о завершении работы, что больше относится к функциям ядра. В ядре отличия тоже есть, если конкретно про прерывание, нам будет интересен пункт preemption. У серверных версиях эта штука по дефолту отключена, что исключает прерывание процесса, в отличие от десктопа. Если конечно не установлено дополнительно настраиваемых компонентов типа OOMkiller. Так что думаю разница есть.
Хотя хз что произойдёт если какой-нибудь libreoffice зависнет... Если есть предположения я бы послушал.
Хотя тут указано что произошло слияние версий: https://help.ubuntu.com/community/ServerFaq#What.27s_the_difference_between_the_kernels_linux-image-server_and_linux-image-generic.3F_What_architecture_is_linux-image-server.3F_Which_one_should_I_use.3F
Так что походу насчёт ядер я уже года 3 как не прав :D
Однако ничто не мешает собрать самому.
Лично я делаю серверную установку, а потом доставляю все что необходимо в основном из-за этого
>>>> cat /etc/apt/apt.conf
APT::Install-Recommends "0";
APT::Install-Suggests "0";
Линь была собрана сильным разумом человеком для сильных разумом людей. Забыть сохранить - это удел слабых маздайщиков и любителей огрызков. Правда, иногда жжестакая иерархия играет злую шутку - создав тысячи детей в процессах и убивая родителя, ты экстерминируешь весь клан. Под маздаем можно забить на RTFM при скачках между софтом. Под линью игнор RTFM - это ты просто заведомо отрезаешь себе яйца нодовкой или уничтожаешь все что было тебе дорого в цифровом виде.
Использую windows, у меня горит по поводу выключения ПК. Выключаю, ухожу пить чай, возвращаюсь, а он ещё работает из-за того, что какая-то дурацкая фигня мешает выключиться. А ведь я же сам сказал ему выключаться. Но нет, надо сука подождать, пока вся муть сама закроется.
Он же сказал обновить, вот я и обновил. :)
А вообще ты не первый и пожалуй не последний, кто называет меня извращенецем. Видимо сказывается влияние де Сада.
Хотя, не знаю, мне нравится 10ка. Ну отсылает данные к M$, а кто сейчас не следит за пользователем? Да, по моему, все следят. Ну посмотрят по каким порносайтам лазию, может и расширят свой кругозор.
А война за приватность, к сожалению, уже проиграна. Раньше я тоже боролся за приватность в сми (когда только-только появились папараци), в IT, а потом понял, что людям пофиг на приватность. Да и вмешиваться мне больше запретили.
От железа оч сильно зависит, на нетбуке помнится всю ночь можно было обновления ставить, на стационарном же ПеКа (довольно мощном) это никогда не было проблемой.
Винда не говно, просто сейчас потеряла все свои качества. Раньше ее принимали так-как дешево стоила, стояла на всех компах и в конце-концов к ней привыкли. Хрюшка и семерка показали все достоинства, но сейчас все катится в полное отчаянье.
А чем 10-ка плоха? С плитками практически никакого взаимодействия нет, в остальном интерфейс не так сильно отличается от 7-ки, разве что стал более юзерфрендли.
Хм, у меня в моей gentoo kde 5 если приложение зависает. всплывает сообщение. Че делать будем?! Подождать или убить процесс Это так через гуй, а через консоль можно дофига всяких сигналов отправить.............
В Linux доступны оба варианта, можно сначала попросить программу завершиться по-хорошему (SIGTERM), и если она не хочет, то завершить принудительно (SIGKILL).
Re: Как убить процесс? kill -9 не работает.
> это ядро его должно прибить, а не он сам /&/#171;сдохнуть/&/#187;, да?
Да. SIGTERM передается процессу, чтобы он умер сам (император приказал совершить сеппуку). SIGKILL отрабатывается ядром (император послал наемного убийцу).
-- no-dashi (linux.org.ru)
Приказы императора:
SIGABRT - описать все свое имущество и сделать сэппуку! (если не захочет - заслать пристава и наемного убийцу)
SIGBUS* - ты влез куда не следует! описать все имущество и сделать сэппуку!
SIGCHLD - доблестный самурай, твой сын погиб!
SIGTSTP - замри!
SIGSTOP -
SIGCONT - отомри!
SIGFPE* - сука, ты делил на ноль?? сделать сэппуку!
SIGHUP - твой дом сгорел! сделать сэппуку!
SIGILL* - что ты такое, блядь, сделал? немедленно сэппуку!
SIGINT - боги хотят твойе смерти, сделать сэппуку!
SIGKILL - он не должен жить, убить его!
SIGPIPE - не сметь говорить с мертвым соратником! сделать сэппуку!
SIGQUIT - боги хотят его смерти и описи имущества! пристав, убийца - выполнять!
SIGSEGV - не лезь на чужую территорию! описать все имущество и сделать сэппуку!
SIGTERM - сделать сэппуку!
SIGTTIN - ты влез в чужой дом, чтобы что-то спиздить, замереть!
SIGTTOU - ты влез в чужой дом, чтобы что-то подбросить, замереть!
SIGUSR1, SIGUSR2 - твой друг хочет, чтобы ты сделал сэппуку!
SIGPOLL - я слежу за тобой! впрочем, можешь сделать сэппуку
SIGPROF - я следил за твоим выполнением задания, ты не успел, и виновен только ты! сэппукку!
SIGVTALRM - я следил за выполнением твоего задания, и мне насрать, что кто-то другой тормозил! сэппуку!
SIGALRM - ты не успел, и мне похуй, почему! сэппуку!
Ребят, вы нихуя не поняли эту шутку.
На винде - программа зависла - её можно тупо завершить.
А на линукс - умирает вся система, так как программа пожирает всю память, и все ресурсы системы.
Например:
Запустил Blender на Linux
Сделал несколько раз разбиение поверхности сферы (там получаются миллионы поликов)
И всё - ПИЗДА
Linux банально зависает и всё в ней умирает, так как Blender тупо сжирает все ресурсы.
И вы уже ничего не запустите - ни монитор ресурсов, ни в консольный режим не перейти.
А значит нельзя ничего сделать.
Чувак - убери свап, добавь оперативы и не сношай людям мозг. Конечно ты не знаешь кто такой oom killer. Что если твое приложение сожрало всю память, то его прибъет ядро, совсем тебя об этом не спрашивая. А то что говоришь это прелестный косяк наличия свапа, который, о чудо, в отличие от винды действительно отключается.
Что? Снова этот Виндоус 10?
Sert
i
Хм... а если я все-таки скачаю?
Я джин У\/тс!о\лге 10 и ты первый который скачал его! Я исполню 3 твои желания
Хочу чтобы Windows никогда не глючила! j
Приложение может, например, отморозиться от SIGHUP(посылается при закрытии терминала, откуда процесс запущен), но вот от SIGKILL(безусловное завершение) отморозиться не выйдет(бывают связанные с аппараткой траблы, когда это не так, но это исключения, и там только аппаратный же ребут).
Хотя, админу доступна отладка, а отладчиком можно завершить отлаживаемый процесс. Так можно закилять то, что обычно не убивается, типа services или csrss.
Хотя хз что произойдёт если какой-нибудь libreoffice зависнет... Если есть предположения я бы послушал.
То что разные версии ядер используются исходит из целей, которые каждая из версий преследует (серверная или десктопная).
Хотя тут указано что произошло слияние версий:
https://help.ubuntu.com/community/ServerFaq#What.27s_the_difference_between_the_kernels_linux-image-server_and_linux-image-generic.3F_What_architecture_is_linux-image-server.3F_Which_one_should_I_use.3F
Так что походу насчёт ядер я уже года 3 как не прав :D
Однако ничто не мешает собрать самому.
>>>> cat /etc/apt/apt.conf
APT::Install-Recommends "0";
APT::Install-Suggests "0";
Мир магов жесток.....
Я аж свитер в джинсы заправил и бороду взлохматил =)
А вообще ты не первый и пожалуй не последний, кто называет меня извращенецем. Видимо сказывается влияние де Сада.
Хотя, не знаю, мне нравится 10ка. Ну отсылает данные к M$, а кто сейчас не следит за пользователем? Да, по моему, все следят. Ну посмотрят по каким порносайтам лазию, может и расширят свой кругозор.
А война за приватность, к сожалению, уже проиграна. Раньше я тоже боролся за приватность в сми (когда только-только появились папараци), в IT, а потом понял, что людям пофиг на приватность. Да и вмешиваться мне больше запретили.
> это ядро его должно прибить, а не он сам /&/#171;сдохнуть/&/#187;, да?
Да. SIGTERM передается процессу, чтобы он умер сам (император приказал совершить сеппуку). SIGKILL отрабатывается ядром (император послал наемного убийцу).
-- no-dashi (linux.org.ru)
SIGABRT - описать все свое имущество и сделать сэппуку! (если не захочет - заслать пристава и наемного убийцу)
SIGBUS* - ты влез куда не следует! описать все имущество и сделать сэппуку!
SIGCHLD - доблестный самурай, твой сын погиб!
SIGTSTP - замри!
SIGSTOP -
SIGCONT - отомри!
SIGFPE* - сука, ты делил на ноль?? сделать сэппуку!
SIGHUP - твой дом сгорел! сделать сэппуку!
SIGILL* - что ты такое, блядь, сделал? немедленно сэппуку!
SIGINT - боги хотят твойе смерти, сделать сэппуку!
SIGKILL - он не должен жить, убить его!
SIGPIPE - не сметь говорить с мертвым соратником! сделать сэппуку!
SIGQUIT - боги хотят его смерти и описи имущества! пристав, убийца - выполнять!
SIGSEGV - не лезь на чужую территорию! описать все имущество и сделать сэппуку!
SIGTERM - сделать сэппуку!
SIGTTIN - ты влез в чужой дом, чтобы что-то спиздить, замереть!
SIGTTOU - ты влез в чужой дом, чтобы что-то подбросить, замереть!
SIGUSR1, SIGUSR2 - твой друг хочет, чтобы ты сделал сэппуку!
SIGPOLL - я слежу за тобой! впрочем, можешь сделать сэппуку
SIGPROF - я следил за твоим выполнением задания, ты не успел, и виновен только ты! сэппукку!
SIGVTALRM - я следил за выполнением твоего задания, и мне насрать, что кто-то другой тормозил! сэппуку!
SIGALRM - ты не успел, и мне похуй, почему! сэппуку!
блядь, влом оставшиеся писать...
На винде - программа зависла - её можно тупо завершить.
А на линукс - умирает вся система, так как программа пожирает всю память, и все ресурсы системы.
Например:
Запустил Blender на Linux
Сделал несколько раз разбиение поверхности сферы (там получаются миллионы поликов)
И всё - ПИЗДА
Linux банально зависает и всё в ней умирает, так как Blender тупо сжирает все ресурсы.
И вы уже ничего не запустите - ни монитор ресурсов, ни в консольный режим не перейти.
А значит нельзя ничего сделать.
Только жать RESET на системнике.
Reset для слабаков.