[mdk-re] Процессы

Dmitry A. Povarov =?iso-8859-1?q?dizzy_=CE=C1_online=2Eru?=
Пн Янв 29 12:42:01 MSK 2001


On Mon, 29 Jan 2001, cornet wrote:

> Hello, всем :-))
> 
> Вопрос из общей теории OS.
> На сколько я заметил при создании нового процесса, его pid обязательно
> будет больше (и как правило на 1), чем самый большой ранее использованый
> номер. Это значит, что при большом uptime, может возникнуть ситуация
> когда счетчик процессов зашкалит и для вновь создаваемого процесса не
> будет номера или регистр завернется и pid будет равет 1 как у init. Я
> понимаю, что такого на самом деле не_происходит, так как иначе бы
> сервера падали как листья по осени...

Выделение PID во всех unix-ах, которые мне попадались, осуществляется
циклически - после использования максимального из допустимых номеров
поиск _незанятых_ PID начинается с 1. 

Поскольку процессы иногда умирают, "зашкаливания" и переполнения таблицы
процессов как правило не происходит. Впрочем, такую ситуацию нетрудно 
создать искусственно ;)

> Может кто на пальцах обьяснит мне каков механизм разрешения подобных
> ситуаций или подскажет что 
> почитать?

man fork, man getpid...

-Dizzy

-------------------------------------------------------------------------
Dmitry "Dizzy" Povarov                   [ mailto:dizzy на online.ru       ]
ABS Group of Russia-On-Line ISP,         [ http://dizzy.pp.ru 		]
Golden Telecom / TeleRoss Ltd.           [ ICQ: 13146487                ]

"Macavity, Macavity, there is no one like Macavity.
 He's broken every human law, he breaks the law of gravity..." (T.Elioth)






Подробная информация о списке рассылки community