
Основные команды *nix
Furet
Xakep, номер #034, стр. 034-046-4
Какие же команды предусмотрели для управления процессами разработчики *nix'a? Лови первую - ps (process status). Эта команда выводит на window (не windows!!!) твоего терминала список процессов.
По умолчанию команда ps выводит информацию в четырех колонках. В первой (PID) - идентификатор процесса; во второй (TTY) - терминал; в третьей (TIME) - содержатся данные об использовании процессом времени центрального процессора; и, наконец, в четвертой (CMD) - указано имя выполняемой команды.
Использовав ключ -f, ты сможешь пощупать процесс обеими руками, получив инфу в полном формате. А ключ -a сообщит команде выводить процессы, запущенные только с этого терминала.
(UID - идентификатор владельца процесса; PPID - идентификатор родительского процесса; С - использование процесса для планирования; STIME - время запуска процесса)
Еще одним полезным ключом является -A, с помощью которого команда ps выведет на чистую воду все процессы, выполняемые на твоей телеге.
Убиваем
Теперь ты готов к главному. Ты готов выполнить команду kill... Был процесс, да сплыл.. А кто его смыл в унитаз?! Его смыл ты. Обговорим это подробнее. Синтаксис этой команды выглядит примерно так:
kill [ signal ] job | PID
('job | PID' - означает, что можно указать либо номер задания, либо идентификатор процесса)
К сигналам, с которыми тебе необходимо познакомиться в первую очередь, относятся: SIGINT - сигнал, посылаемый обычно от клавиатуры активному процессу при нажатии комбинации клавиш <Ctrl+C>, прерывает выполнение процесса без вывода дампа; SIGTERM - сигнал к завершению выполнения программы, этот сигнал обычно посылают другие процессы; SIGKILL - неперехватываемый сигнал, немедленно завершает выполнение программы, не оставляя ему времени на нормальное завершение (завершение с max ущерба); SIGHUP - сообщает о разрыве соединения, посылается процессам, когда терминал прекращает работу или в случае неожиданного закрытия потока ввода/вывода.
Пример: kll -s KILL %2 (процессу с идентификационным номером посылается сигнал KILL, что приведет к его немедленному завершению).
Контрольный выстрел
Сделай его тихо и незаметно, без свидетелей. А затем переходи к более углубленному изучению монстров под названием *nix (*nix! Звучит гордо. Не правда ли?). А поможет тебе в этом настоящая анатомия *nix'ообразных - "Секреты UNIX" by Джеймс С. Армстронг. Займись также всерьез языком программирования Си, на котором написаны все исходники животного. В первый раз слышишь о таком? Тогда книженция "Язык программирования Си", написанная такими известными авторами, как Б.Керниган и Д.Ритчи, как раз для тебя! Кстати, именно этот бук в свое время привлек так много народу к Си. Ну а если тебя клонит на изврат, можешь себе поставить симулятор UNIX под Windows. Одна из лучших такого рода тулз - UWIN (www.research.att.com). А статью о ней ты можешь прочесть в ближайших номерах X. Ну и, наконец, посещай свой любимый сайт - www.xakep.ru, где ты найдешь не менее интересную инфу обо всем, что связано с компами, и не только!