- •33 Курсовая на тему создание базы данных «Операционная система»
- •Введение
- •Основные аспекты современных систем управления базами данных
- •Базы данных
- •Реляционная модель данных
- •Реляционная база данных
- •Система управления базами данных
- •Структура базы данных
- •Механизм запросов и язык sql
- •Нормализация отношений
- •Информационные связи между таблицами
- •Постановка задачи
- •Основные сущности операционной системы
- •Процессы и потоки
- •Ресурсы
- •Выборки:, реализующие суть работы
- •Интерфейс пользователя
- •Основные сведения об интерфейсе пользователя
- •Главная форма базы данных «Операционная система»
- •Формы результатов задания
- •Просмотр и редактирования форм задания основных данных
- •Запросы субд
- •Запросы для выполнения задания 1.
- •Запросы для выполнения задания 2.
- •Запросы для выполнения задания 3.
- •Вспомогательные запросы к заданию 3.
- •Основной запрос для Задания 3.
- •Запросы для выполнения задания 4.
- •Вспомогательные запросы к заданию 4.
- •Основной запрос Задания 4
- •Заключение
Интерфейс пользователя
Основные сведения об интерфейсе пользователя
Хотя основные средства создания таблиц, их наполнения и выполнения запланированных выборок реализованы в виде запросов на языке SQL, которые можно вызывать и редактировать непосредственно в запросах, однако для удобства пользователя дополнительно предусмотрен интерфейс в виде стандартных окон (форм) операционной системы.
Для удобства создана Главная форма приложения, через которую осуществляется работа со всеми элементами задания.
Главная форма базы данных «Операционная система»
В начале работы вызывается Главная форма, в которой предусмотрены все основные кнопки для вызова форм, реализующих задачи разработанной базы данных
Рисунок 1. Интерфейс Главной формы – вызов необходимых пунктов нажатием соответствующих кнопок.
На Главной форме отражено задание и введена панель Вкладок с тремя переключателями вкладок.
Отдельные вкладки панели содержат кнопки выполнения самих заданий (пункты 1-4), кнопки редактирования основных данных и кнопки редактирования служебных таблиц.
Рисунок 2. Функции Главной формы
Рисунок 3. Дополнительные функции Главной формы
Формы результатов задания
Первая вкладка содержит кнопки вызова форм с результатами выполнения заданий 1-4, а также кнопку дополнительного задания – вывод формы с сортировкой программ (владельцев процессов) по общей стоимости запрашиваемых ресурсов (подпункт. фрагмент задания 4).
Редактировать (изменять) данные в формах результатов задания – запрещено программно, т.к. эти результаты вычисляются в ходе выполнения запросов.
Перед вызовом форм с результатами задания можно установить тип формы с результатами – ленточная или простая (в столбец). Для чего необходимо включить – выключить переключатель вида результата.
Рисунок 4. Переключение между способом отображения форм
Например, результат выполнения Задания 1 при разных положениях выключателя вида формы результатов:
Рисунок 5. Примеры выполнения заданий
Просмотр и редактирования форм задания основных данных
Рисунок 6. Формы ввода данных
В этом режиме пользователь может редактировать и просматривать данные по запущенным процессам операционной системы, по запрошенным процессами ресурсов, перечень владельцев процессов (перечень запущенных программ), и перечень имеющихся в операционной системе ресурсов.
Примеры форм редактирования приведены ниже.
Редактирование служебных (справочных таблиц)
Редактирование служебных таблиц – функция разработчика СУБД, и для пользователя должна быть недоступна. Здесь она приведена для иллюстрации разработанных в задании служебных таблиц.
Служебных таблиц две. В одной дается соответствие классов и значений приоритета процессов, и справочной к ней является таблица названий классов процессов.
Рисунок 7. Формы редактирования служебных данных
Структура СУБД
Структура таблиц
Все данные СУБД хранятся в Таблицах. В задании разработано 7 таблиц (основных и вспомогательных).
Вспомогательные (справочные) таблицы:
- ClassOfProcess – содержит названия классов для процессов.
- ProcessClassFromPrioritet – содержит соответствие между приоритетом процесса и названием класса процесса.
- ResourseTypeRelease – содержит «привычные» названия отведенных для процесса или находящихся в очереди для отведения ресурса.
Информационные таблицы – тестовые данные для задания
- Resurses – таблица имеющихся в операционной системе ресурсов. Содержит тестовые данные для примера. Включает название ресурса, его объем в операционной системе и цену единицы ресурса.
- OwnerProcessID – содержит названия выполняющихся программ, владельцев процессов.
- Processes – содержит список запущенных в ОС процессов. Включает поля с названием процесса, его приоритетом и названием владельца процесса.
- ResourseQuereis – содержит данные о том, какие ресурсы затребованы процессами, объеме затребованных ресурсов и информацию о том, выделен ресурс процессу операционной системой или запрос на ресурс находится в очереди.
Информация по связанным полям заносится на основе связи таблиц и подстановок (выбором пользователем нужного значения из списка). Например, информация о владельце процесса выбирается из списка владельцев.
Или, информация о приоритете процесса выбирается из списка, включающего как значение приоритета. Так и название класса процесса:
Схема данных СУБД
Для обеспечения целостности данных, корректного выполнения запросов и подстановок между таблицами существуют связи, описываемые в схеме данных.
В данной работе все связи имеют тип «один ко многим». Связь типа «один к одному» здесь не использована, так каждая таблица имеет небольшое количество полей и разбивать таблицы на ряд связанных по типу «один к одному» нет смысла.
Согласно заданию, между процессами и ресурсами должна быть связь типа «многие ко многим», т.к. один процесс может использовать несколько ресурсов, а один ресурс может использоваться несколькими процессами. Эта связь реализована через таблицу ResourseQuereis, к которой установлены связи «один ко многим» от таблицы Processes и Resurses: