|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Valentin Nechayev 2:5020/400 13 Dec 2003 13:11:02 To : Kirill Frolov Subject : Re: ps auxw | grep grep ; bsd vs linux -------------------------------------------------------------------------------- >>> Kirill Frolov wrote: KF> Даю команду ps auxw | grep grep. В BSD. Строка с процессом самого KF> grep появляется через раз. Почему? В Linux, как и положено, появляется KF> каждый раз. Hикому оно не положено такого. Это особенности работы шедулера. KF> Чем можно объяснить BSDшное поведение ps? Получается, на KF> момент выполнения ps, процесс grep ещё не существовал. А как такое KF> возможно? :-/ Он существовал. Hо он был твоим любимым шеллом и не успел сделать exec() на grep. Исполнение пайпа идёт так: 1. Создание пайпа. 2. fork() на всех участников. 3. dup2() и exec() каждому. Если для ps успевают пройти fork()->dup2()->exec()->ps быстрее, то grep не виден. -netch- --- ifmail v.2.15dev5.1 * Origin: Dark side of coredump (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/7368973e068f.html, оценка из 5, голосов 10
|