- •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:

