Архив: Write a C program that computes the letter histogram (a letter frequency analysis tool)

Бюджет 8$ / 500
руб
в месяц
Создан: 4 года назад
Закрыт
Описание
Лабораторная работа по предмету операционные системы.
Потоки должны создаваться по примеру clone.c
Для синхронизации потоков использоваться должен использоваться mutex.
Все блоки кода должны быть с комментариями.

Write a C program that computes the letter histogram (a letter frequency analysis tool) of a large text file in a multi-threaded manner. The program shall have the following usage:
./histogram    
The program shall take the  as input and shall calculate the letter frequency using  threads. The output file shall be written as percentage of occurrence for each letter in the  as text.

The program must work in the following way:

the main process shall create 2 other child processes: a computing process and a writing process.
the computing process shall read the input file (using system calls) and shall provide data chunks of length  (maximum) to the threads.
The computing process shall create a thread for each data chunk but no more than  threads to run in parallel.
Each thread shall receive its workload (the data chunk and its size) and shall calculate the letter frequency for that chunk. After a thread finished its work it will terminate
the computing process shall monitor de activity of the threads. If a thread terminated its workload and there are still unprocessed data chunk then the computing process shall create another thread in order to complete the work
it is recommended that the computing process shall always keep active 
each time a thread finished its workload, the computing process will issue another thread until the whole workload is finished
the threads may or may not be joinable
all the threads shall work on a common memory zone, as output, where the computing will be stored. In this case the usage of at least a mutex is necessary in order to synchronize accesses to the common memory zone. The memory zone must contain the number of occurrence of each letter and also the total number of letters. (design a compatible data structure)
when all the workload is finished, the computing process shall send the results to the writing process. The writing process shall write the result into the output file.
also the computing process shall count the total of threads used to compute the whole workload. This result will be sent to the parent process
the writing process shall announce its start and end through stdout printing also its PID
the parent process shall also announce its start and end through stdout printing also its PID
the parent process shall print to stdout the second result of the computing process: the total number of threads that have been used.
the parent process shall wait for the termination of the 2 child processes
the histogram will include only uppercase and lowercase letters.
Категория

Похожие проекты

safe$22
9 0
требуется готовую онлайн анкету на django по приему на работу перенести в whatsapp, telegram и viber. Нужно чтобы кандидат мог с удобством заполнять анкету с телефона, а все заполненные им данные по всем позициям автоматически загружались в нашу базу данных. В нашей базе будет создаваться резюме кандидата......
safe 
28 0
В наличии массив кадастровых номеров (КН), необходимо путем запроса на ПКК определить примерные географические координаты каждого объекта из массива КН (ОКС, ЗУ), вывести в результирующий файл эти ко-ты и ряд сопутствующих данных по этому КН....
1 год назад
safe 
44 1
Необходимо разработать бек и фронт мини-сервиса таким образом, чтоб его можно было развернуть внутри другого проекта....
safe$1111
23 0
Стоит на Бизнесе для своих нужд на простеньком базовом шаблоне, складываю туда контент потихоньку. Нужно начинать приводить в соответствие что бы публика сразу не убегала, а как то цеплялась, да и продвигать не торопясь. Шаблон где порвался от вставки баннеров подправить, для мобилок может сверстать.......
safe$22
55 0
Парсер для сайта stockx. com на питоне (selenium/pyppeteer). Необходим следующий функционал: 1. На главной странице с поиском по ключевым словам найти первый результат из поиска (ссылку на страницу товара) ....
1 год назад
safe$44
49 0
Трипланарная транспортная задача (отправители - транспорт - получатели) генерация исходных данных трехэтапное решение 1....
safe$1111
48 0
Требуется написать парсер маркетплейса, у которого есть только мобильное приложение (IOS, Android). Есть исходный код Android приложения (Java + Kotlin), реверснутый через JADX. Необходимо парсить данные о товарах, полученные по артикулу. За подробностями тг: @markermann)....
1 год назад
 
38 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
36 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
37 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
31 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
40 1
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
$22
59 1
В Геткурсе нужно сделать интеграцию со Сбербанком для оформления рассрочки/кредита. Основная задача – передача суммы и номера заказа при переходе для оформления рассрочки и возврат сведений при удачном оформлении. Эквайринг от Сбербанка к Геткурсу подключён, а готовой интеграции для рассрочки нет. Если......
1 год назад
 
96 0
Нужно сделать бот перехватчик заказов по фильтру такси Максим!...
1 год назад
$33
75 1
Как можно загрузить готовое фото из галереи, если приложение просит загрузить фото и при этом открывает камеру телефона? Нужно вместо использования реальной камеры смоделировать вход камеры и при этом загрузить фото из галереи....
1 год назад
 
117 3
Очень простой криптообменник в виде веб-сайта. Без смарт-контрактов и т. Все платежи вручную....
Смотреть все