Главная / Программирование /
Язык программирования Perl / Тест 16
Язык программирования Perl - тест 16
Упражнение 1:
Номер 1
Что такое идентификатор процесса (PID)?
Ответ:
 (1) имя программы, которая запускается на параллельное выполнение 
 (2) имя переменной, в которой хранится ссылка на подпрограмму 
 (3) номер, присваиваемый процессу операционной системой 
Номер 2
Процессы выполняются синхронно, когда ...
Ответ:
 (1) ... процесс работает параллельно другому и независимо от него 
 (2) ... процесс ожидает события в другом процессе или его окончания 
 (3) ... процессы работали независимо, но закончились одновременно 
Номер 3
Процессы выполняются асинхронно, когда ...
Ответ:
 (1) ... процесс работает параллельно другому и независимо от него 
 (2) ... процесс ожидает события в другом процессе или его окончания 
 (3) ... процессы выполнялись в течение разных промежутков времени 
Упражнение 2:
Номер 1
Легковесные процессы (или потоки управления, или нити) ...
Ответ:
 (1) ... выполняются в рамках одного процесса в единой области памяти 
 (2) ... выполняются как отдельные процессы в разных областях памяти 
 (3) ... отличаются от полновесных только меньшим временем выполнения 
Номер 2
Полновесные процессы ...
Ответ:
 (1) ... запускаются параллельно в собственных областях памяти 
 (2) ... могут запускаться только функцией system()
 
 (3) ... отличаются от легковесных большим объемом занимаемой памяти 
Номер 3
Сигнал - это ...
Ответ:
 (1) ... уведомление процесса системой о наступлении события 
 (2) ... просто вызов определенной подпрограммы в процессе 
 (3) ... передача данных с помощью программного канала 
Упражнение 3:
Номер 1
Какие кавычки используются в операции выполнения программы?
Ответ:
 (1) '...' или q(...) 
 (2) `...` или qx(...) 
 (3) "..." или qq(...) 
Номер 2
Какая функция синхронно выполняет внешнюю программу?
Ответ:
 (1) exec()
 
 (2) kill()
 
 (3) system()
 
Номер 3
Какая функция заменяет выполняющуюся программу?
Ответ:
 (1) exec()
 
 (2) kill()
 
 (3) system()
 
Номер 4
Какая функция НЕ предназначена выполнять внешние программы?
Ответ:
 (1) exec()
 
 (2) fork()
 
 (3) open()
 
 (4) system()
 
Упражнение 4:
Номер 1
Как устанавливается подпрограмма-обработчик сигнала?
Ответ:
 (1) ее имя помещается в специальный хэш %INC
 
 (2) ссылка на нее помещается в специальный хэш %SIG
 
 (3) ее имя должно совпадать с идентификатором сигнала 
Номер 2
Как создается программный канал?
Ответ:
 (1) с помощью функции pipe()
 
 (2) с помощью функции fork()
 
 (3) с помощью функции create()
 
Номер 3
Как организовать двусторонний обмен данными между процессами?
Ответ:
 (1) организовать два программных канала двумя вызовами pipe()
 
 (2) поочередно читать и писать в один и тот же программный канал 
 (3) создать несколько каналов вызовом pipe(@список_каналов)
 
Упражнение 5:
Номер 1
Для ожидания завершения нужного процесса-потомка применяется ...
Ответ:
 (1) ... функция kill()
 
 (2) ... функция waitpid()
 
 (3) ... функция wait()
 
Номер 2
Для ожидания окончания любого процесса-потомка применяется ...
Ответ:
 (1) функция detach()
 
 (2) функция waiting()
 
 (3) функция wait()
 
Номер 3
Проверка работоспособности процесса-потомка выполняется ...
Ответ:
 (1) ... вызовом kill(0, $pid)
 
 (2) ... вызовом kill(KILL, $pid)
 
 (3) ... вызовом waitpid($pid, 0)
 
Упражнение 6:
Номер 1
Запустить нить на выполнение можно с помощью ...
Ответ:
 (1) ... обращения к методу threads->new
 
 (2) ... обращения к методу $thread->join
 
 (3) ... обращения к методу $thread->detach
 
 (4) ... обращения к методу $thread->tid
 
Номер 2
Ждать завершения выполнения нити можно с помощью ...
Ответ:
 (1) ... обращения к методу $t->dequeue
 
 (2) ... обращения к методу $t->join
 
 (3) ... обращения к методу $t->detach
 
 (4) ... обращения к методу $t->pending
 
Номер 3
Отсоединить выполняющуюся нить без возможности присоединения ...
Ответ:
 (1) можно с помощью метода $t->detach
 
 (2) можно с помощью метода $t->dequeue
 
 (3) можно с помощью метода $t->join
 
 (4) можно с помощью метода $t->pending