Варианты заданий для выполнения расчетно-графической работы по дисциплине «Операционные системы», страница 2

       объекта  и  при необходимости отключает (или включает) гидрогенератор 4,

       если суммарной мощности оставшихся генераторов достаточно для

       энергоснабжения объектов.

           На главной форме визуально должны отображаться текущие мощности

      потребления всех объектов, а также состояние всех генераторов (включен -

      отключен).

12.   Написать программу визуального отображения состояния каждого

        выключателя  из группы, состоящей из 8 выключателей. Состояние

        каждого выключателя задается пользователем в отдельном процессе

        и периодически записывается в текстовый файл данных.  Разработать

        формат записи данных и способ передачи данных в программу визуального

        отображения.

13.   Смоделировать работу светофора пешеходного перехода через дорогу.

        Светофор должен останавливать движение автомобилей, если число

        пешеходов, желающих пересечь дорогу,  не менее  трех человек. После

        приостановки движение транспорта возобновляется через 20 секунд и не

        может быть  приостановлено повторно ранее, чем через минуту.

        Количество пешеходов моделируется отдельным потоком  по случайному

        закону в диапазоне (0  -  4)  с  периодом  10 Сек. Если число ожидающих

        превысило 3 человека, то моделирование приостанавливается до

        выполнения перехода через дорогу, после чего число ожидающих пешеходов

        обнуляется с возобновлением моделирования их числа.

        Если пешеходов  нет, то движение транспорта не прерывается.

14.  Написать игровую программу «Угадай число». Вторичный поток программы

       генерирует случайное целое число в диапазоне 1 - 100 и предлагает угадать

       его. Играющий в поле  ввода первичного потока вводит  вариант числа, после

       чего вторичный поток анализирует его и либо сообщает об успешной

       попытке,   либо предлагает ее повторить, сообщая при этом, больше или

       меньше задуманного введенное играющим число.

       Число попыток должно отображаться на экране. Максимальное число

       попыток задается игроком перед  началом игры в диапазоне  7 - 10.

       Способ синхронизации потоков выбрать самостоятельно.

15. Написать программу перемножения двух квадратных матриц размерности

      2х2.  Ввод исходных данных и вывод результата - в первичном потоке

      процесса, собственно перемножение - в другом потоке. Способ обмена

      информацией между потоками и синхронизирующий объект выбрать 

      самостоятельно.

16.  Реализовать  обмен  данными между двумя процессами через текстовый         

       файл. Первый процесс генерирует случайное вещественное число в диапазоне

       (0 - 2*pi)  радиан,  второй процесс вычисляет синус этого аргумента, после

       чего первый процесс сохраняет оба параметра в другом текстовом файле в

       виде  таблицы из двух колонок (аргумент - функция), добавляя каждый раз

       очередную строку.

       Заполнить 10 строк таблицы. 

17.  Реализовать  программу, которая ежесекундно пытается запустить  новый 

       дочерний процесс, формируя при этом случайное целое число секунд (в

       диапазоне 3 -  10), и  по истечении  данного отрезка времени закрывает

       данный процесс.   Запускаемый процесс представляет собой окно, в заголовке

       которого  отображается порядковый номер процесса, а в самом

       окне - счетчик секунд, оставшихся до завершения процесса.

       Количество одновременно существующих дочерних процессов - не более трех.

18. Для некоторого  процесса создать вторичный поток, который 

      каждые 10 секунд  выдает  сигнал первичному  потоку.  Вид сигнала,

      способ  его  передачи и визуального отображения на экране выбрать

       самостоятельно.

19.  При включении  стиральной машины в режим отжима изменяется число

       оборотов барабана от нуля до некоторого максимального значения

       (3000 об/мин) за 10 секунд. Написать программу моделирования изменения

       числа оборотов по линейному закону. Вторичный поток программы должен

       отслеживать текущее значение и ограничивать его  на заданном уровне,

       который можно   выбирать дискретно:  800,1000, 1500, 2000 об/мин.

       Объект синхронизации потоков выбрать самостоятельно.

20.  В девятиэтажном жилом доме четыре подъезда, в каждом работает лифт.

       После пуска кабина лифта перемещается с этажа на этаж за 4 секунды.       

       Написать программу визуального отображения состояния кабины

       каждого  лифта (стоит или движется), если управление каждым лифтом

       производится оператором в отдельном дочернем процессе.   В окне дочернего

       процесса необходимо предусмотреть числовые поля как для номера этажа, на

       котором остановилась кабина, так и для номера этажа, куда она должна

       переместиться после нажатия кнопки «ПУСК».   Способ  кодирования и

       передачи данных родительскому процессу, а также способ синхронизации

       выбрать самостоятельно.

                                              РЕКОМЕНДУЕМАЯ   ЛИТЕРАТУРА

  1. Таненбаум Э. Современные операционные системы. 2-е изд.: Пер. с англ. - СПб.: Питер, 2002. - 1040 с.
  1. Назаров С.В. Операционные среды, системы и оболочки. Основы структурной и       функциональной организации. Учеб. пособие. - М: КУДИЦ-ПРЕСС, 2007, - 504 с.
  1. Рихтер  Д.   Windows  для  профессионалов:  создание эффективных Win32-приложений с учетом специфики 64-разрядной версии Windows/ Пер. с англ. - 4-е изд. СПб: Питер;  М.: Издательский отдел "Русская редакция ", 2004. - 749 с.
  1. Румянцев П.В. Азбука программирования в Win 32 API. 2-е изд. - М.: Радио и связь, Горячая линия. - Телеком, 1999.
  1. Румянцев П.В. Работа с файлами в Win 32 API. 2-е изд. - М.: Радио и связь, Горячая линия. - Телеком, 2002. - 216 с.
  1. Козлов А.В. Программирование для Интернет в C++ Builder 5. – М.: ЗАО «Издательство БИНОМ», 2001 г.- 512 с.
  1. Архангельский А.Я., Тагин М.А. Приемы программирования в C++ Builder. Механизмы Windows, сети. – М.: ООО «Бином-Пресс», 2004 г. – 656 с.

   --------------------------------------------------------------------------------------------------------                   

                      Задания составил доцент каф. ССОД НГТУ:

                                                                 Родников Валерий Валентинович

                       Консультации  по дисциплине:

                                                                 четверг, 15 - 18 ч., VII-516   или    VII-601.