2.3 Операционная система
Операционная система - это программа, которая загружается при включении компьютера. Она производит диалог с пользователем, осуществляет управление компьютером, его ресурсами (оперативной памятью, местом на дисках и т.д.), запускает другие (прикладные) программы на выполнение. Операционная система обеспечивает пользователю и прикладным программам удобный способ обращения( интерфейс ) с устройствами компьютера.
Основная причина необходимости операционной системы состоит в том, что элементарные операции для работы с внутренними устройствами и управление ресурсами компьютера — это операции очень низкого уровня, поэтому действия, которые необходимы пользователю и прикладным программам, состоят из нескольких сотен или тысяч таких элементарных операций. Операционная система скрывает от пользователя эти сложные и ненужные подробности и предоставляет ему удобный интерфейс для работы. Она выполняет также различные вспомогательные действия, например копирование или печать файлов не детализируя данный процесс.
Большинство современных персональных компьютеров IBM PC, как правило, работают под управлением операционной системы MS DOS фирмы Microsoft Corporation или ее варианты PC DOS, распространяемого фирмой IBM, либо же под управлением появившейся в 1988 году совместимой с MS DOS операционной системы DR DOS фирмы Digital Research/5, с.58/.
В нашей стране наибольшее распространение получила операционная система MS DOS, которая и установлена у большинства компьютеров. Известны ранние версии операционных систем (v1.0; v3.30; v5.0), но на более мощных компьютерах с несколькими мегабайтами оперативной памяти используются версии 6.0 и 6.22 операционной системы MS DOS. Эти версии имеют средства для эффективного использования оперативной памяти сверх 640 Кбайт, позволяет работать с логическими дисками больших объемов ( 1 Гбайт и более), переносить DOS и драйверы устройств в расширенную память, освобождая место для прикладных программ и т.д.
3. Объектно-ориентированный анализ задачи
3.1 Описание задачи в ключевых абстракциях предметной области
При решении задачи я воспользовался многими плюсами структурного программирования и для удобства разработки включил классы. Так как проект разрабатывается под MS DOS, невелик по объёму и не получит дальнейшего развития не имеет смысла делать программу полностью объектной: с помощью подпрограмм структурного программирования можно решить данную задачу быстрее и проще. Проектирование классов производилось с учетом потребностей данной программы в объектах. При анализе задачи в ключевых абстракциях я выделил: пользователь, данные, база для хранения данных. При этом пользователь взаимодействует с базой, обмениваясь с ней данными. Значит нам нужен класс данных. Объекты этого класса будут хранится в ОЗУ компьютера при работе программы (что позволяет организовать к ним быстрый доступ), или на диске при работе других приложений или выключенном ПК. Особенности программы удобнее реализовать с помощью структурного программирования, поэтому иерархии классов в программе нет.
3.2 Описание интерфейса классов
Класс DataF несёт ответственность за получение и хранение в своих полях данных, введённых пользователем. Этот класс имеет следующий интерфейс:
class DataF
{
public:
Далее следует описание полей структуры хранящей данные.
Потом объявление функции char GetPole(char *str,int nb,int rzc), которая выполняет работу по занесению данных введённых пользователем в соответствующие члены-данные класса.
В качестве параметров функция принимает указатель на заполняемое поле структуры, количество символов отведённых под это поле и режим работы: новая запись (rzc==0), либо корректировка (rzc==1).
Следующая функция-член класса: void NewZap(int rzc) организует диалог с пользователем и вызывает функцию GetPole(char*,int,int) передавая ей нужные параметры.
В качестве параметров функция NewZap(int) принимает два целых, указывающих на режим работы (как и предыдущая функция).
4. Описание программы
Программа не очень велика, поэтому для удобства чтения и отладки она выполнена в одном модуле. Ряд переменных имеет глобальный характер: это связано с тем, что они используются несколькими подпрограммами и передача их другим способом вызвала бы дополнительны трудности при реализации и привела бы к более запутанному коду.
Программа, после загрузки в память, запрашивает имя пользователя (оно используется для занесения в поля записи). Потом происходит считывание данных из файла в массив объектов (LoadZap()).
Функция DrawMain(int regim) прорисовывает элементы управления выделяя текущий (для этого используется параметр regim).
Перемещаясь по элементам управления с помощью клавиатуры или мыши, пользователь может выбрать один режимов работы. В этом случае вызывается функция EnterHandle(int regim), которая определяет какой из режимов выбран и вызывает соответствующие подпрограммы.
При реализации просмотра, корректировки и удаления используется одна и таже функция View() которая возвращает номер выбранной записи, это заметно облегчило разработку и сделало код более ясным и читабельным.
Перед завершением программа вновь связывается с файлом данных и вносит в него произведенные пользователем изменения и дополнения.
Программа включает в себя инициализацию мыши, сделанную на Assembler. Для работы с мышью используются функции:
MouseStatus(int *x, int *y, int *button); -- проверяет нажатие клавиши мыши.
ShowMouse(); -- показывает курсор мыши.
HideMouse(); -- прячет курсор мыши.
... По теореме 9.3 в силу результатов шагов 3 и 8. (Шаг 10). Имеет место свойство (9.4) по теореме 9.5 в силу результатов шагов 1 и 9. Литература к лекции 9. 9.1. С.А. Абрамов. Элементы программирования. - М.: Наука, 1982. С. 85-94. 9.2. М. Зелковец, А. Шоу, Дж. Гэннон. Принципы разработки программного обеспечения. - М.: Мир, 1982. С. 98-105. Лекция 10. ТЕСТИРОВАНИЕ И ОТЛАДКА ПРОГРАММНОГО ...
... повышают уровень требований к массовой алгоритмической культуре. Практически все диалоговые системы являются программируемыми. Методика конструирования программ легко переносится на другие процедурные языки программирования, в том числе и объектно-ориентированные.[2] В соответствии с технологией конструирования программ построена программа тестового редактора. Я разделил ее на этапы: Создание ...
... . И хотя, используя недокументированные возможности и определённые ухищрения, всё это можно реализовать и на VB; пользоваться этими трюками гораздо сложнее, чем, например, на Delphi. 4. ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ ЗАДАЧ С ИСПОЛЬЗОВАНИЕМ ЯЗЫКА ПРОГРАММИРОВАНИЯ DELPHI 4.1 Задача 1. Примитивный калькулятор 1. Войдите в среду Delphi, дважды щелкнув мышью на пиктограмму Delphi или через меню “ ...
... последовать разработка ПС по установленным требованиям в рамках какого-либо другого подхода (например, водопадного). · Формальные преобразования. Этот подход включает разработку формальных спецификаций ПС и превращение их в программы путем корректных преобразований. На этом подходе базируется компьютерная технология (CASE-технология) разработки ПС. · Сборочное программирование. Этот подход ...
0 комментариев