Некоторые системные вызовы UNIX
Системные вызовы:
Для создания нового процесса в Unix системах вызов fork
pid=fork( ) создать новый процесс
Если значение pid= -1 не был создан процесс
Если значение pid` 0 -процесс был создан, к родительскому процессу вернулся
идентификатор созданного процесса.
Если значение pid= 0 - возвращается для созданного процесса.
if ( (pid=fork( ) )= = 0)
{
код нового процесса
}
else
{
код старого процесса
}
waitpid (pid, M)
где М-маска
if ( (pid=fork( ) ) = =0)
{
код нового процесса exit( );
}
waitpid (pid, M)
exit( )- завершение нового процесса.
Если новый процесс завершится, продолжить старый процесс.
exeeve( ) запуск программы
if ( (pid=fork( ) )= = 0)
{
execve( );
код нового процесса;
exit ( );
}
waitpid (pid, M)
![]()
![]()
![]()


kill (pid) убить процесс
Отслеживает действия «потомков» и убивает.
pipe ( ) создает файл в файле, можно списать и набивать значениями.
pipe( pid ) организует файл от дочернего к родительскому, значения пишутся в файл.
Creat_Thread (имя подпрограммы) создает виток, нити
Exit_Thread ( ) завершает виток
Get_pid ( ) получить pid
mypid=Get_pid( )
statpid( pid ) получить состояние процесса с заданным pid.
предыдущая тема следующая тема