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

cornet =?iso-8859-1?q?cornet_=CE=C1_zmail=2Eru?=
Пн Янв 29 12:22:00 MSK 2001


denf на novosoft.ru wrote:
>  Все просто: постоянное увеличение на 1 - это самый быстрый способ
> выделения свободных pid (если не поддерживать список свободных: конечно),
> когда дойдет до самого большого, начнет с начала, причем, большинство из
> начальных процессов уже умерли и выделение опять будет быстрым.

Hello!!

Я правильно понял, что когда зашкалило число процессов, то работает
алгоритм типа:

last_enabled_pid=1; # вызывается только при зашкаливании

for (n=last_enabled_pid+1; n<=max_pid; n++)
	{
	if (n != занято_активным_процессом) exit;	# если большинство древних
процессов уже ушли то скорее всего сразу же будет exit.
	}
new_pid = n;
last_enabled_pid=n; # используется при следующих вызовах for

	
В сильно упрощенном варианте верно?

 
> 1╘щ╜╘╝К,┴╘Фj)b·        b╡с²зз▒ЙН╡х ·X╖╩^jh╘∙╕Л╝Хm╤÷Ъ√)Нфв  *ei╩+╩Ы ┼Y ÷Ыb╡ь╖~▐ФjwkjG╚╨к"an==

-- 
******** FIRE & STEEL ********




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