Skip to content

Ko4eBHuK/OS_lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OS_lab

Размер области памяти:			A=197 Мб;
Начальный адрес:				B=0x513F4598;
Создать с помощью этого:		C=mmap;
Количество потоков: 			D=35;
Размер файлов для записи:		E=26;
Тип обращения к диску:			F=block;
Размер блока I/O:				G=51;
Последовательность I/O блоков:	H=random;
Число потоков для I из файлов:	I=26;
Подсчитать характеристику:		J=avg;
Примитив синхронизации			K=sema;

Разработать программу на языке С, которая осуществляет следующие действия

Создает область памяти размером A мегабайт, начинающихся с адреса B (если возможно) 
при помощи C=(malloc, mmap) заполненную случайными числами /dev/urandom в D потоков. 
Используя системные средства мониторинга определите адрес начала в адресном пространстве 
процесса и характеристики выделенных участков памяти. Замеры виртуальной/физической памяти необходимо снять:

До аллокации
После аллокации
После заполнения участка данными
После деаллокации

Записывает область памяти в файлы одинакового размера E мегабайт с использованием 
F=(блочного, некешируемого) обращения к диску. Размер блока ввода-вывода G байт. 
Преподаватель выдает в качестве задания последовательность записи/чтения блоков 
H=(последовательный, заданный  или случайный)

Генерацию данных и запись осуществлять в бесконечном цикле.

В отдельных I потоках осуществлять чтение данных из файлов и подсчитывать агрегированные
характеристики данных - J=(сумму, среднее значение, максимальное, минимальное значение).

Чтение и запись данных в/из файла должна быть защищена примитивами синхронизации K=(futex, cv, sem, flock).

По заданию преподавателя изменить приоритеты потоков и описать изменения в характеристиках программы. 

Для запуска программы возможно использовать операционную систему Windows 10 или Debian/Ubuntu в виртуальном окружении.

Измерить значения затраченного процессорного времени на выполнение программы и на операции ввода-вывода используя системные утилиты.

Отследить трассу системных вызовов.

Используя stap построить графики системных характеристик.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors