Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Анализ программных реализаций. Практикум
.pdf
51
7 Тестовые задания
Раздел 1 – способность проводить анализ программного кода с целью
поиска потенциальных уязвимостей и недокументированных возможностей.
1) Какие стратегии оптимизации могут быть применены на основе
результатов профилирования?
a. Использование более эффективных алгоритмов
b. Оптимизация кода
c. Устранение узких мест
d. Все вышеперечисленные варианты
2) Что такое профилирование синхронизации?
a. Измерение времени, затрачиваемого на синхронизацию потоков
b. Измерение использования памяти при синхронизации
c. Измерение потребления энергии при синхронизации
d. Подсчет потоков синхронизации
3) Что такое горячие точки (hotspots) при профилировании?
a. Участки кода, которые выполняются медленнее всего
b. Участки кода, которые потребляют больше памяти
c. Участки кода, которые часто вызываются
d. Все вышеперечисленные варианты
4) Какое утверждение о горячих точках профилирования верно?
a. Это части кода, которые занимают мало времени выполнения
b. Это части кода, которые занимают большую часть времени
выполнения

52
c. Это части кода, которые не влияют на производительность
приложения
d. Это части кода, которые не могут быть профилированы
5) Какое утверждение о профилировании в режиме реального времени
верно?
a. Позволяет анализировать производительность приложения на лету
b. Позволяет анализировать потребление ресурсов приложением на
лету
c. Позволяет анализировать использование памяти приложением на
лету
d. Все вышеперечисленные варианты
6) Какое утверждение о профилировании производительности на уровне
операций верно?
a. Позволяет анализировать время выполнения каждой операции в
приложении
b. Позволяет анализировать использование памяти каждой операцией в
приложении
c. Позволяет анализировать энергопотребление каждой операции в
приложении
d. Позволяет посчитать количество операций
7) Что такое сравнительное профилирование?
a. Сравнение производительности различных версий приложения
b. Сравнение потребления энергии различных версий приложения
c. Сравнение использования памяти различных версий приложения
d. Все вышеперечисленные варианты

53
8) Какие данные можно получить с помощью профилирования в реальном
времени?
a. Использование CPU приложением
b. Потребление энергии приложением
c. Использование памяти приложением
d. Все вышеперечисленные варианты
9) Что такое профилирование событий?
a. Измерение производительности приложения на основе событий
b. Измерение потребления энергии приложением на основе событий
c. Измерение использования памяти приложением на основе событий
d. Анализ событий с помощью замеров их количества
10) Что такое профилирование памяти?
a. Измерение использования CPU приложением
b. Измерение потребления энергии приложением
c. Измерение использования памяти приложением
d. Измерение использования ресурсов приложением
11) Какие проблемы производительности можно выявить с помощью
профилирования приложений?
a. Замедленная работа функций
b. Чрезмерное потребление памяти
c. Утечки ресурсов
d. Все вышеперечисленные варианты
12) Что такое утечка памяти в контексте профилирования приложений?
a. Потеря данных из памяти
b. Переполнение стека вызовов

54
c. Некорректное использование памяти, при котором ресурсы не
освобождаются
d. Использование большого объема оперативной памяти
13) Какие данные можно получить с помощью профилирования
производительности?
a. Использование памяти
b. Время выполнения функций
c. Загрузка процессора
d. Все вышеперечисленные варианты
14) Какие типы профилирования приложений существуют?
a. Временное профилирование, профилирование памяти,
профилирование сети
b. Профилирование производительности, профилирование
безопасности, профилирование интерфейса
c. Профилирование алгоритмов, профилирование структур данных,
профилирование UI
d. Все вышеперечисленные варианты
15) Что такое профилирование приложений?
a. Измерение производительности приложения
b. Исследование безопасности приложения
c. Анализ пользовательского интерфейса приложения
d. Оценка функциональности приложения
16) Что такое обратный инжиниринг программы?
a. Процесс разработки программного обеспечения с нуля
b. Процесс анализа и восстановления исходного кода программы из
скомпилированного исполняемого файла

55
c. Процесс оптимизации программы для увеличения ее
производительности
d. Процесс тестирования программы на наличие ошибок
17) Что такое обфускация программы?
a. Процесс анализа программы на наличие уязвимостей
b. Процесс изменения программного кода с целью затруднения его
понимания и анализа
c. Процесс оптимизации программы для увеличения ее
производительности
d. Процесс разработки программного обеспечения с нуля
18) Какие цели может преследовать обратный инжиниринг программы? (2
ответа)
a. Восстановление исходного кода программы
b. Поиск уязвимостей и ошибок в программе
c. Изменение программного кода
d. Оптимизация исполняемого файла программы
19) Какой метод обратного инжиниринга применяется для изменения
программного кода с целью затруднения его понимания и анализа?
a. Обфускация
b. Профилирование
c. Дизассемблирование
d. Компиляция
20) Какой инструмент используется для анализа утечек памяти в
программе?
a. Memory analyzer
b. Profiler

56
c. Disassembler
d. Debugger
21) Какой инструмент используется для определения зависимостей между
различными компонентами программы?
a. Dependency analyzer
b. Profiler
c. Disassembler
d. Debugger
22) Какой инструмент используется для анализа уязвимостей и ошибок в
программе?
a. Vulnerability scanner
b. Profiler
c. Disassembler
d. Debugger
23) Какой метод обратного инжиниринга применяется для определения
структуры и функциональности программы?
a. Дизассемблирование
b. Профилирование
c. Обфускация
d. Компиляция
24) Что такое инструмент анализа уязвимостей?
a. Инструмент для определения зависимостей между различными
компонентами программы
b. Инструмент для анализа управления памятью и выявления ошибок в
программе
c. Инструмент для анализа утечек памяти в программе

57
d. Инструмент для поиска уязвимостей и ошибок в программе
25) Что такое инструмент анализа зависимостей?
a. Инструмент для анализа времени выполнения программы и
определения ее характеристик
b. Инструмент для определения зависимостей между различными
компонентами программы
c. Инструмент для анализа управления памятью и выявления ошибок в
программе
d. Инструмент для анализа утечек памяти в программе
26) Какой метод обратного инжиниринга применяется для оптимизации
исполняемого файла программы?
a. Обфускация
b. Профилирование
c. Дизассемблирование
d. Компиляция
27) Какой язык программы получается после выполнения
дизассемблирования
a. C#
b. Python
c. Assembler
d. Машинный код
28) Для чего может использоваться обфускация?
a. Для усложнения взлома программ с закрытым исходным кодом
b. Для сокрытия интеграции вредоносного кода в безопасных
программах
c. Для сокрытия кода программы, несущей коммерческую ценность

58
d. Все вышеперечисленное
29) Профилирование может выполнятся
a. Для всего кода
b. Для фрагментов кода
c. Для одного проекта
d. Все вышеперечисленное
30) Профилирование можно выполнять для языков
a. Python
b. C#
c. Java
d. Все вышеперечисленное
Раздел 2 – способность к освоению современных сред разработки
программного обеспечения и новых образцов программных средств защиты в
распределенных компьютерных системах.
1) Что такое протокол передачи данных?
a. Способ организации и структурирования данных
b. Набор правил и соглашений для обмена данными между
устройствами
c. Программа для передачи данных по сети
d. Устройство, обеспечивающее передачу данных через сеть
2) Какой протокол используется для отправки и получения электронной
почты?
a. HTTP
b. FTP

59
c. SMTP
d. DNS
3) Что такое IP-адрес?
a. Уникальный идентификатор компьютера или устройства в сети
b. Название домена в сети
c. Уникальный номер порта для сетевого соединения
d. Программа для обработки сетевых запросов
4) Что такое фаервол?
a. Программа для защиты компьютера от вредоносных программ
b. Устройство для фильтрации и контроля сетевого трафика
c. Метод шифрования данных при передаче по сети
d. Протокол для безопасной передачи данных
5) Какая техника шифрования обеспечивает безопасность при передаче
данных?
a. SSL/TLS
b. FTP
c. HTTP
d. SMTP
6) Что такое VPN?
a. Программа для управления сетевыми устройствами
b. Устройство для подключения к сети Интернет
c. Технология, обеспечивающая безопасное соединение через
неприватные сети
d. Программа для создания виртуальной сети на компьютере

60
7) Какой протокол используется для удаленного управления
компьютером?
a. FTP
b. SSH
c. SMTP
d. HTTP
8) Какая техника обеспечивает защиту информации от
несанкционированного доступа?
a. Аутентификация
b. Авторизация
c. Шифрование
d. Все вышеперечисленные
9) Что такое DOS-атака?
a. Атака на компьютер с целью получения информации
b. Атака на компьютер с целью удаленного управления
c. Атака на компьютер с целью отказа в обслуживании
d. Атака на компьютер с целью внедрения вредоносного кода
10) Что такое брандмауэр?
a. Программа для защиты от вирусов
b. Устройство для управления сетевым трафиком
c. Программа для удаленного управления компьютером
d. Метод шифрования данных при передаче по сети
11) Какой протокол используется для запроса веб-страницы?
a. HTTP
b. FTP
c. SMTP
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
