Курсовая работа: Подсистема управления процессами
Однако процессы не висят в памяти компьютера просто так. Специально для управления процессами создан класс ProcManager. При создании процесса он и вся информация о нем заносится в массив, и в соответствии с номером ячейки, в которую записывается процесс, ему дается идентификатор, по которому к нему можно обратиться в процессе работы. Также в классе ProcManager реализовано графическое представление в памяти. Каждый важный элемент процесса выведен в специальную таблицу на форме, и при изменении одного из них вызывается событие, которое меняет запись в таблице в режиме реального времени, поэтому мы может наблюдать как красиво надпись "работает" бегает от одного процесса к другому.
2. Руководство пользователя по работе с программой
2.1 Общие сведения и назначение программы
Программа написана в среде VisualStudio 2008 на языке C# и представляет собой менеджер управления процессами, построенный на современных средствах управления, с интуитивно понятным графическим интерфейсом. Программа является полностью автономной и не требует установки другого программного обеспечения. Вся справочная информация хранится в настоящем Руководстве и Техническом Проекте. В случае сбоев в работе программы необходимо обратиться к Автору для их устранения. В основной части руководства будут описаны возможности программы, описание основных характеристик и особенностей программы.
2.2 Графический интерфейс
После открытия программы пользователю предоставляется графический интерфейс.
рис 1.: главное окно программы после запуска
Область "Процесс" позволяет выбрать тот процесс, который нам необходимо запустить. Имеет три пункта: Числа Фибоначчи, Случайные числа и Рекурсивный синус.
Область "Приоритет" позволяет установить приоритет запускаемому процессу. Имеет 5 пунктов: Низкий, Ниже среднего, Средний, Выше среднего, Высокий.
Кнопка запуск служит для запуска процесса с выбранными параметрами.
Таблица в центральной части окна отображает состояние каждого из запущенных процессов. После добавления каждого процесса в нее автоматически добавляется одна строка. Имеет 5 полей:
1) Номер процесса – показывает порядковый номер процесса
2) Тип процесса – показывает действие, с которое выполняет данный процесс
3) Состояние процесса – показывает работает ли процесс в данный момент или нет. Также показывает, если процесс является остановленным, завершенным или только что возобновленным.
4) Приоритет процесса – показывает приоритет процесса, который был присвоен ему при создании.
5) Процент процессорного времени – отображает процент используемого процессорного времени.
В правой части окна программы расположено поле, в которое записывается результат выполнения работающего процесса в реальном времени.
В нижней части окна программы расположены элементы управления для работы с уже запущенными процессами.
Кнопка "Остановить" - останавливает выбранный процесс с возможностью его последующего перезапуска.
Кнопка "Возобновить" - вновь запускает остановленный процесс.
Кнопка "Завершить" - останавливает выбранный процесс без возможности его завершения.
Так же программа имеет стандартную строку состояния, с помощью которого можно свернуть, развернуть или закрыть рабочее окно программы.
2.3 Работа с программой
Запуск процессов выполняется с помощью кнопки "Запустить", однако перед этим следует установить параметры процесса.
Случайное число – процесс генерирует случайное число в интервале от одного до ста и выводит его в поле вывода.
Числа Фибоначчи – генерирует последовательность Фибоначчи, начиная с первого члена, и выводит их в поле вывода. Как только значение чисел последовательности превосходит тысячу – значения сбрасываются до первых членов.
Рекурсивный синус – генерирует значение синуса X. Первоначально X равен 1, позже ему присваиваются посчитанные значения sin(x). Значения, округленные до третьего знака выводятся в поле вывода.
Приоритет процесса показывает, насколько велики шансы процесса начать работу, если предыдущий процесс завершил работу. Например, если запустить три процесса с одинаковыми приоритетам, то количество раз, которое они будут работать, будет примерно одинаковым, а если запустить два процесса с высоким приоритетом и один процесс с низким, то процесс с низким приоритетом будет выполняться, примерно, один из шестнадцати раз. Однако, архитектура программы предусматривает то, что если количество запущенных процессов больше чем один, то один и тот же процесс не может быть выполнен более одного раза подряд.
После запуска нескольких процессов окно программы примет следующий вид:
рис 2: работа программы.
Процесс, который находится в рабочем состоянии, обозначен подписью работает, и именно результаты выполнения его работы в данный момент выводятся в поле вывода.