Недавно мне дали задание в классе операционных систем, в котором объясняется, что мы должны использовать функции Map () и Reduce () [в C] для сортировки и подсчета частоты слов в текстовом файле.Это довольно произвольный и упрощенный пример, который я видел в ходе небольшого исследования, но мне трудно понять, что это требование использования потоков POSIX в программе.Означает ли это, что алгоритмы псевдокода для функций Map () и Reduce (), которые плавают вокруг, по своей природе не используют pthreads или несколько процессов Linux?Например ...
function map(String name, String document):
// name: document name
// document: document contents
for each word w in document:
emit (w, 1)
function reduce(String word, Iterator partialCounts):
// word: a word
// partialCounts: a list of aggregated partial counts
sum = 0
for each pc in partialCounts:
sum += pc
emit (word, sum)
Я пытался найти этот ответ в другом месте, но безуспешно;Любой совет приветствуется!
(я не ищу код для проекта, просто лучшее объяснение)