Архив: Write a C program that computes the letter histogram (a letter frequency analysis tool)
Бюджет
8$
/ 500
руб
в месяц
Создан: 5 лет назад
Закрыт
- Описание
- Лабораторная работа по предмету операционные системы.
Потоки должны создаваться по примеру 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.
- Категория
Похожие проекты
0
2
Необходимо разработать систему, которая: Подключается к API Diagnocat и iDent (через токены доступа). Получает данные о пациенте, результатах диагностики, снимках и назначениях. Автоматически формирует структурированный отчет по шаблону (включая врачей, этапы лечения, стоимость и описание процедур).......
1 месяц назад
0
0
Необходимо связать БД 1C:ERP с БД Outlook, MS Access, Битрикс24. Например при вводе нового сотрудника в 1С:ERP он должен автоматически появляться в вышеперечисленных БД....
1 месяц назад
0
1
Требуется реализация отчёта на кастомизированной 1С:УПП 1. 2, ТЗ и контрольный пример во вложении, 80% кода должно быть покрыто модульными тестами....
2 месяца назад
$7
0
1
Мне нужно копировать мой текст и вставлять в одну группу ВК с открытой стеной для публикации рекламы. Задача скрипта/сервиса/программы - примерно каждые 10 секунд брать мой текст и вставлять в эту группу. Я пробовал через одну программу, которая записывает действия мышки и потом повторяет, но она как-то......
4 месяца назад
0
0
Написать прошивку для A94B114, используя 2 подобные рабочие прошивки. Все файлы есть....
4 месяца назад
$21
0
2
Нужно разархивировать файл архив. ujems, есть распаковщик, но выдает ошибку. Прислать пруфы(скрины)....
6 месяцев назад
0
1
Входные: Имеется скрипт по обработке email писем и добавление их в систему Redmine Проблема: Система обработки этих писем написана некорректная и негибкая Задача: Переписать логику обработки входящих писем, чтобы исключить их потерю при незначительных отклонениях от ожидаемой структуры....
6 месяцев назад
$37
0
1
- В обязанности сотрудника входит поддержание мобильного приложения системы автоматизации бизнеса. - Работа сдельная: задачи выдаются на оценку, далее после согласования передаются на реализацию. - Заключаем договор и NDA (соглашение о неразглашении)....
6 месяцев назад
$71
0
0
Информация о проекте: Проект включает в себя React Native приложение с Expo внутри которого находится webview с сайтом На устройствах с ОС IOS проблема с воспроизведением видео....
6 месяцев назад
0
0
Разрабатываю десктопные программы на языке Java, а так же Java + SQL....
7 месяцев назад
0
0
0
6
1. Чтобы можно было писать описание события (без заголовка) - превью в списке берется N количества букв с начала. (в списке писать дату события и сколько осталось до него) . Выставление даты и времени напоминания и ИНТЕРВАЛА ПОВТОРА ОТ 1 МИНУТЫ! Выставлять количество повторов, далее напоминания прекращаются.......
7 месяцев назад
0
4
Сайт arg2028t. beget. tech/. Нужно сделать вот такой калькулятор. airprint. by/outdoor/wide-format. и еще некоторые доработки....
7 месяцев назад
$214
0
1
0
6
Краткое описание: Мы ищем исполнителя для тестирования функционала мобильного приложения на платформе Android. Задача включает проверку основных функций приложения, таких как работа комнаты, передача видео, звука и чата, а также создание подробной отчетности о найденных ошибках. Требования к исполнителю:......
9 месяцев назад
0
12
$143
0
0
Oпpocы (1008pyб/чaс) Заходитe на сaйт: gonsù....
9 месяцев назад
0
4
Требуется создать скрипт для premiere pro. Данная суть скрипта: в выделеном бине нужно что бы автоматически проставлялся in out ровно по серидине файла так что бы выделенная область была длиной 3 секунды. И требуется кнопка что бы работало через окно expressions. Проблема текущего в том что он не работает......
10 месяцев назад
0
2
Нужно создать приложения под гемблинг/беттинг, на котлин. Приложение должно работать Firebase. Детали вышлю при обсуждение....
10 месяцев назад
$21
0
4
Нужно разархивировать файл archive. ujems, есть распаковщик, но выдает ошибку. Прислать пруфы ....
1 год назад
0
3
Разработать впн сервис ( Приложения на ios и android + сайт для оплаты подписки). Настройка Серверов. Оплата по договоренности. Работаем черед безопасную сделку....
1 год назад
Похожая удалённая работа
- Удаленная работа для веб-программиста
- Удаленная работа для разработчика баз данных
- Удаленная работа для прикладного программиста
- Удаленная работа для системного программиста
- Удаленная работа для разработчика игр
- Удаленная работа для разработчика мобильных приложений
- Удаленная работа для тестировщика ПО
- Удаленная работа для 1С программиста
- Удаленная работа для разработчика встраиваемых систем
- Удаленная работа для разработчика CRM и ERP