Перейти к содержанию

Упражнения (Questions)

Контрольные вопросы

  1. Какое из следующих определений наилучшим образом описывает многозадачную операционную систему?

    A. Операционная система, способная выполнять несколько задач одновременно на нескольких процессорах. B. Операционная система, способная выполнять одну задачу одновременно на нескольких процессорах. C. Операционная система, выполняющая несколько задач одновременно на одном процессоре. D. Операционная система, постоянно переключающая процессорное время между загруженными процессами.

  2. Вы ввели vi в командной строке. Какой тип процесса был создан в вашей системе Linux?

    A. Пользовательский. B. Системный. C. Демон. D. System V.

  3. Ваш текущий сеанс оболочки имеет PID 3456. Вы выполняете команду su для переключения на учётную запись root. Процесс su имеет PID 3457. Затем вы запускаете vi из командной строки под учётной записью root. Процесс vi имеет PID 3458. Каков PPID процесса vi?

    A. 3456. B. 3457. C. 3458. D. 3459.

  4. Какой процесс может быть прародителем всех процессов, выполняющихся в системе Linux? (Выберите два.)

    A. bash. B. init. C. sh. D. ps. E. systemd.

  5. Вы работаете в системе Fedora Linux, использующей System V init-сценарии. Где эти сценарии хранятся в файловой системе?

    A. /etc/init.d B. /etc/rc.d/init.d C. /etc/sysv/init.d D. /etc/init.d/rc.d

  6. Вы хотите использовать ps для отображения расширенной информации только о процессах, связанных с текущим сеансом терминала. Какая команда это обеспечит?

    A. ps B. ps –e C. ps –f D. ps –ef

  7. Что такое зомби-процесс?

    A. Процесс, завершивший выполнение, но чей родительский процесс ещё не освободил PID дочернего. B. Процесс, прекративший выполнение в ожидании пользовательского ввода. C. Процесс, за которым ведёт наблюдение другой процесс. D. Процесс, перешедший в режим сна, который невозможно прервать.

  8. Какой параметр ps позволяет отобразить все выполняющиеся в данный момент процессы?

    A. –c B. –e C. –f D. –l

  9. Процесс myapp имеет значение nice равное 1. Какие из следующих значений nice повысят его приоритет? (Выберите два.)

    A. –15 B. 5 C. 19 D. 0 E. 2

  10. Какая из следующих команд запустит программу myapp со значением nice –5?

    A. myapp –n –5 B. nice –5 myapp C. renice –5 myapp D. nice –n –5 myapp

  11. Процесс myapp (PID 2345) выполняется в системе. Какая из следующих команд изменит его значение nice на –5 без выгрузки процесса?

    A. myapp –n –5 –p 2345 B. renice –n –5 2345 C. renice –5 2345 D. nice –n –5 2345

  12. Вы хотите запустить программу myapp из командной строки в фоновом режиме. Какая команда это обеспечит?

    A. myapp –b B. myapp & C. myapp –bg D. load myapp into background

  13. Какой сигнал завершения отправляет выполняющемуся процессу нажатие CTRL-C?

    A. SIGHUP B. SIGINT C. SIGKILL D. SIGTERM

  14. Вам нужно завершить зависший процесс. Вы знаете его имя, но не знаете PID. Какие утилиты можно использовать? (Выберите два.)

    A. killall B. kill C. hangup D. SIGKILL E. pkill

  15. Вы хотите запустить команду rsync для синхронизации вашего домашнего каталога с другим сервером в сети. Вы знаете, что выполнение займёт несколько часов, и не хотите оставлять систему с активным сеансом на всё это время. Какие команды позволят оставить rsync работающим после выхода из системы? (Выберите два.)

    A. SIGHUP B. nohup C. stayalive D. kill –NOHUP E. screen

  16. Сейчас 13:00. Вы хотите запланировать автоматический запуск программы myapp завтра в полдень (12:00). Какие из следующих команд at можно использовать? (Выберите два.)

    A. at 12 pm tomorrow B. at tomorrow –1 hour C. at now +1 day D. at today +23 hours E. at now +23 hours

  17. Какая из следующих строк crontab запустит процесс /usr/bin/myappcleanup в 4:15 первого числа каждого месяца?

    A. 15 4 1 * * /usr/bin/myappcleanup B. 15 4 * 1 * /usr/bin/myappcleanup C. 1 4 15 * * /usr/bin/myappcleanup D. 4 1 * * 15 /usr/bin/myappcleanup


Ответы

  1. D. Многозадачная операционная система постоянно переключает процессорное время между загруженными процессами, создавая иллюзию их одновременного выполнения.

  2. A. Поскольку команда была введена из командной строки, был создан пользовательский процесс.

  3. A. Поскольку команда была введена из командной строки, её родительским процессом является процесс bash с PID 3456.

  4. B, E. В некоторых дистрибутивах прародителем всех остальных Linux-процессов является процесс init. В других дистрибутивах вместо него используется systemd. Все прочие процессы восходят к init или systemd в зависимости от дистрибутива.

  5. B. Сценарии init для дистрибутивов, использующих System V init-сценарии, хранятся в /etc/rc.d/init.d.

  6. C. Команда ps –f отображает расширенную информацию о процессах, связанных с текущим сеансом оболочки.

  7. A. Зомби-процесс — это процесс, который завершил выполнение, но родительский процесс не был уведомлён об этом и, следовательно, не освободил PID дочернего процесса.

  8. B. Команда ps –e используется для отображения списка всех выполняющихся процессов в системе.

  9. A, D. Чем меньше значение nice, тем выше приоритет процесса. Поэтому значения nice 0 и –15 повысят приоритет процесса myapp.

  10. D. Команда nice –n –5 myapp запустит myapp со значением nice –5.

  11. C. Команда renice –5 2345 изменит значение nice процесса myapp без его выгрузки.

  12. B. Команда myapp & запустит myapp в фоновом режиме.

  13. B. Сигнал SIGINT отправляет указанному процессу нажатие CTRL-C.

  14. A, E. Утилита killall использует имя процесса в командной строке и может быть использована в данном случае. Также можно воспользоваться параметром –f команды pkill для поиска и завершения зависшего процесса по его имени.

  15. B, E. Команда nohup позволяет загрузить программу таким образом, что она будет игнорировать сигнал SIGHUP, посылаемый при выходе пользователя из системы, — и процесс продолжит работу. Кроме того, можно воспользоваться командой screen для создания окна и его отсоединения, что также позволит процессу продолжать работу.

  16. A, E. Можно ввести at 12 pm tomorrow или at now +23 hours, чтобы демон atd выполнил указанную команду в 12:00 следующего дня.

  17. A. Строка 15 4 1 * * /usr/bin/myappcleanup обеспечит запуск процесса myappcleanup в 4:15 первого числа каждого месяца вне зависимости от дня недели.