Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Заочники / KONSPEKT_СРС_OSA.doc
Скачиваний:
33
Добавлен:
12.05.2015
Размер:
715.26 Кб
Скачать

Порождаемые процессы (порожденные)

При разработке приложений используются процедуры и функции. При обращении к процедуре или функции выполнение основного кода прекращается до возврата из функции.

Для ускорения времени выполнения программы существует альтернативный способ выполнения функции – передать управление функцией новому потоку в пределах данного процесса, т. е. основной блок продолжает выполняться, а в новом потоке выполняется процедура или функция. Но при этом возникают проблемы синхронизации.

Второй способ распараллеливания заключается в том, что порождается не новый поток, а новый процесс, который выполняет функцию дополнительно. Преимущество состоит в том, что адресное пространство процесса защищается от всех изменений, не связанных с адресным пространством процесса-родителя.

Таким образом, в базовом процессе должны быть предусмотрены функции считывания из адресного пространства порожденного процесса.

Обмен данными между процессами:

  1. Динамический обмен данными (DDE)

  2. OLE-обмен данными

  3. Использование почтовых ящиков mailslots

  4. Обмен с помощью файлов

Для синхронизации порожденного и родительского процессов используется функция Waitforsingleobjectи заключается в том, что выполнение потока родительского процесса приостанавливается до завершения порожденного процесса. Порожденный процесс запускается обособленно.

Поток

Поток описывает последовательность изменения кода внутри процесса. Всякий раз при инициализации процесса создается первичный поток. Поток живет до тех пор, пока не вызвана функция завершения потока или завершения процесса.

Файлы, проецируемые в память, позволяют резервировать область адресного пространства, отождествляя ее с файловой структурой.

В отличие от виртуальной памяти, память файла, проецируемого в память, всегда выделяется только в пределах оперативной памяти.

Куча

Куча – это так называемая динамически распределяемая память. Удобна при создании большого количества небольших блоков данных.

Динамические списки – классический пример работы с кучей.

Система управления динамической памятью Win32 имеет свои специфические особенности:

  1. Куча всегда локальна для своего процесса

  2. Процессу разрешается создавать несколько куч.

Для DLL-функций собственные кучи не выделяются, они используют кучи, созданные в пределах адресного пространства, в котором они выполняются.

Математические модели объектов и процессов

компьютеризации (предпроектных этапов проектирования)

При появлении нового технического задания, сначала проводится предметно-ориентированный или аналитический анализ прикладной области. Сейчас в основном используется предметно-ориентированный анализ. При этом выделяются информационные объекты, с которыми нам предстоит работать.

После того как мы выделили эти объекты их можно назвать доменами (т.е. крупными объектами).

Мы должны разработать три типа моделей:

Информационную модель для каждого домена предметной области;

Модели состояний для каждого объекта информационной модели;

Модели процессов для каждого состояния модели состояния.

Рассмотрим все типы моделей.

Информационная модель– это некоторая совокупность объектов предметной области. Объект - это такая абстракция множества предметов реального мира, в которой во-первых все предметы этого множества, называемые экземплярами, имеют одни и те же характеристики, и во-вторых все экземпляры подчинены и согласовываться с одним и тем же набором правил и линий поведения. Каждый объект в модели должен быть обеспечен уникальным и значимым именем.

Если информационная модель громоздкая, то во избежание путаницы в документации, все объекты должны быть пронумерованы.

Пример:

Объекты:

Факультет с атрибутами: - название;

- номер офиса;

Студент с атрибутами: - идентификатор;

- имя;

- преподаватель, который с ним работает;

Преподаватель с атрибутами: - идентификатор преподавателя;

- имя;

- номер офиса;

- факультет;

Объект предоставляет собой один типичный, но неопределенный экземпляр чего-то в реальном мире, например, любая электрическая схема. Системный аналитик отличает это понятие от понятия определенного экземпляра.

Идентификация объекта

Объекты идентифицируются путем рассмотрения концептуальных сущностей или предметов связанных с анализируемой проблемой. Некоторые задачи предполагают создание объектов имеющих физический характер. Другие задачи порождают абстрактные объекты, такие как базы данных, пользовательский интерфейс и т.д.

Несмотря на то, что объект может быть получен из чего угодно, большинство объектов, с которыми мы сталкиваемся, относятся к следующим категориям:

Реальные объекты - абстракции фактического существования некоторых объектов в физическом мире.

Роли - абстракции цели или назначения человека, части оборудования или организации.

Инциденты - абстракции чего-то происшедшего или случившегося.

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

Спецификация - используется для представления правил, стандартов или критериев качества.

Описание объектов

Описание объектов - это короткое информативное утверждение, которое позволяет нам установить является ли реальный предмет экземпляром объекта или нет.

Например: Описание объекта снимающего показание: работник, который может прочитать показания прибора и в настоящий момент выполняет это задание.

Атрибуты объекта:

Атрибут - это абстракция одной характеристики, которой обладают все абстрагированные как объект сущности. Каждый атрибут обеспечивается уникальным в пределах объекта именем.

Чтобы обратиться к атрибуту пишут:

<имя объекта>.<имя атрибута>

Значение атрибута

Для каждого экземпляра объекта значение атрибута своё. Диапазон значений атрибута называют доменом атрибута.

Идентификатор- это множество из одного или более атрибутов, значение которых однозначно определяют каждый экземпляр объекта.

Соседние файлы в папке Заочники