Skip to content

simonvorobjev/multithread_hasher_cpp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

signature

Требуется написать консольную программу на C++ для генерации сигнатуры указанного файла. Сигнатура генерируется следующим образом: исходный файл делится на блоки равной (фиксированной) длины (если размер файла не кратен размеру блока, последний фрагмент может быть меньше или дополнен нулями до размера полного блока). Для каждого блока вычисляется значение hash функции и дописывается в выходной файл-сигнатуру. Интерфейс: командная строка, в которой указаны:  Путь до входного файла  Путь до выходной файла  Размер блока (по умолчанию, 1 Мб) Обязательные требования:  Следует максимально оптимизировать скорость работы утилиты с учетом работы в многопроцессорной среде  Нужно реализовать обработку ошибок на основе эксепшенов  При работе с ресурсами нужно использовать умные указатели  Архитектуру приложения необходимо выполнить в парадигме объектно-ориентированного программирования. Также при выполнении задания следует избегать подходов функционального и мета программирования Допущения:  Размер входного файла может быть много больше размера доступной физической памяти (> 4 Гб)  Разрешается использовать boost  В качестве хэш функции можно использовать любую хэш функцию (MD5, CRC и т.д.)

About

test task for c++ multithreading

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages