Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 23 additions & 6 deletions lab/vtsh/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,26 @@

## Часть 3. Анализ системы и мониторинг

Разработайте параметризируемую программу-нагрузчик, которая будет однопоточно нагружать подсистему ввода-вывода (IO). Она должна принимать на вход следующие параметры:

- `rw: read/write` - режим нагрузки: чтение или запись;
- `block_size: <number>` - размер блока в байтах, с которым производится чтение/запись;
- `block_count: <number>` - количество блоков;
- `file: <path string>` - имя файла, с которым происходит работа;
- `range: <number>-<number>` - границы в пределах файла, в которые должны
осуществляться запись/чтение, значение по умолчанию, 0-0, означает, что доступен
весь файл;
- `direct: on/off` - открывать файл с опцией O_DIRECT (в обход кэшей ОС) или нет;
- `type: sequence/random` - режим выбора следующего блока для записи/чтения
последовательно или случайно;

Разработайте комплекс программ-нагрузчиков согласно выданному варианту.
Каждый нагрузчик должен, как минимум, принимать параметр, который определяет
количество повторений для алгоритма, указанного в задании. Варианты программ
рассчитаны так, чтобы нагружать вычислительную подсистему (CPU) и подсистему
ввода-вывода (IO) или одновременно - это необходимо учитывать при их реализации.
Разработанные программы еобходимо скомпилировать без дополнительных опций
оптимизации компилятора.
Каждый нагрузчик должен принимать параметр, который определяет
количество повторений для алгоритма, указанного в задании, а также другие
вспомогательные параметры. Варианты программ рассчитаны так, чтобы по-разному
нагружать вычислительную подсистему (CPU) и подсистему ввода-вывода (IO) - это
необходимо учитывать при их реализации. Разработанные программы еобходимо
скомпилировать без дополнительных опций оптимизации компилятора.

Проведите исследование поведения ОС во время исполнения разработанных
программ-нагрузчиков по следующему плану:
Expand Down Expand Up @@ -69,6 +82,10 @@
изменились исследуемые показатели? На сколько сократилось реальное время
исполнения программы нагрузчика? Почему?

В процессе защиты вашей работы преподаватель будет просить вас запустить
программу-нагрузчик с различными комбинациями параметров и просить объяснить
результат.

## Требования к реализации

1. Программа (комплекс программ) должна быть реализован на языке C.
Expand Down
Loading