Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.03.2017, 19:33   #1
Girei
Пользователь
 
Аватар для Girei
 
Регистрация: 22.10.2013
Сообщений: 72
По умолчанию Многопоточное хэширование sha256

Есть файл очень большого размера (32Гб). Файл разбивается на блоки заданной длины (вводится с клавы). Для каждого блока нужно посчитать хэш-сумму и вывести.
Как быть, если блоки, на которые разделен файл больше доступной оперативы? Задача вообще имеет решение в стандартных средствах языка?
Стандартный алгоритм sha256 хэширования на C# не может в многопоточность, есть ли смысл писать многопоточную реализацию для него?
Есть ли способ взять часть файла, НЕ используя его отображение в памяти?
Когда мы открываем любой файл (текстовый, например), всё происходит так: винда вызывает процесс, открывающий его -> процесс подгружает файл в оперативу -> действия с файлом -> файл закрываем -> оператива освобождается. я правильно описал механизм?
Girei вне форума Ответить с цитированием
Старый 02.03.2017, 22:08   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от Girei Посмотреть сообщение
я правильно описал механизм?
нет, так происходит только при полном чтении в файл.
стандартный SHA256 отлично умеет работать с потоком.(Stream=>FileStream)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 02.03.2017, 23:00   #3
Girei
Пользователь
 
Аватар для Girei
 
Регистрация: 22.10.2013
Сообщений: 72
По умолчанию

Где я могу узнать про то, как работа с файлами происходит на уровне памяти?
Не очень понял последнюю сентенцию
Girei вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
хэширование pepperoni Помощь студентам 0 06.05.2015 16:27
sha256 f.hump Безопасность, Шифрование 4 13.01.2014 22:45
Хэширование, паскаль (Нафаня) Фриланс 3 19.05.2013 16:22
Delphi 7 sha256 -Jack- Общие вопросы Delphi 7 21.06.2012 03:30
Хэширование СветОК Помощь студентам 1 01.06.2012 18:11