Синхронизация процессов и потоков в ОС Windows

Страницы работы

Содержание работы

ЗАДАНИЯ

к  лабораторной работе  №  2  

 «Синхронизация процессов и потоков в ОС Windows »

  1. Создайте программу, которая выполняет скалярное умножение двух векторов. Значения каждого вектора хранятся в отдельном файле, созданном с помощью текстового редактора. Программа должна прочитать  значения вектора из первого файла и присвоить их элементам вектора, затем в отдельном потоке прочитать значения вектора из второго файла.  Для синхронизации операций чтения используйте семафоры.
  1. Создайте программу, которая с помощью события синхронизирует операции записи и чтения данных из файла. Программа должна в основном потоке создать файл и записать в него данные. Чтение данных из созданного файла должно выполняться в отдельном потоке. Для синхронизации операций доступа к файлу должно использоваться событие.
  1.  Создайте программу, которая использует мьютекс для доступа к глобальной переменной – счетчику и инкремента значений этой переменной. Доступ к переменной должен производиться из разных потоков (количество потоков 3).
  1. Разработайте программу, которая выполняет перемножение двух матриц. Значения элементов каждой матрицы сохраняются в отдельном файле, создаваемом с помощью текстового редактора. Программа должна прочитать значения каждой матрицы в отдельных потоках, для синхронизации готовности данных к перемножению используйте события.
  1. Создайте программу, которая в основном потоке формирует массив значений аргумента функции и записывает их в файл, в отдельном потоке читает значения аргумента из файла и вычисляет массив значений функции f(x) = exp (x). Для синхронизации используйте событие.
  1. Создайте программу, которая выполняет запись данных из двух отдельных потоков в один файл. Для синхронизации доступа к файлу используйте мьютекс.
  1. Создайте программу, которая выполняет чтение данных из одного файла в двух потоках. Для синхронизации доступа к файлу используйте семафор.
  1. Создайте программу, которая выводит на экран символьную информацию. Далее программа должна в отдельном потоке 3 раза заменить символ в определенной позиции на другой, используя мьютекс как объект синхронизации.
  1. * Разработайте программу, которая выполняет сложение двух матриц. Значения элементов каждой матрицы сохраняются в отдельном файле, создаваемом с помощью текстового редактора. Программа должна прочитать значения каждой матрицы в отдельных потоках, для синхронизации готовности данных к сложению используйте мьютекс.
  1. Создайте программу, которая демонстрирует работу двух потоков с глобальным массивом. В основном потоке случайным образом генерируется массив из 100 элементов, затем в дополнительном потоке вычисляется среднее значение сгенерированной последовательности. Операцию создания (генерирования) массива и вычисления среднего значения повторить 10 раз. Для синхронизации доступа к массиву использовать событие.

Похожие материалы

Информация о работе