Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Недостающие ответы.docx
Скачиваний:
7
Добавлен:
19.03.2015
Размер:
199.18 Кб
Скачать

bilet 18 vopros 1 1. Уровни моделирования. Общая характеристика и особенности. Моделирование на микроуровне. Обобщенная модель и моделирование тепловых систем (краевая задача для уравнения теплопроводности).

bilet 21 vopros 1 1. Численное решение задачи Коши для обыкновенных дифференциальных уравнений. Метод Эйлера. Одношаговые и многошаговые методы.

Численные методы решения задачи Коши для ОДУ первого порядка

Постановка задачи. Найти решение ОДУ первого порядка

на отрезке при условии

При нахождении приближенного решения будем считать, что вычисления проводятся с расчетным шагом , расчетными узлами служат точки промежутка [x0, xn].

Целью является построение таблицы:

т.е. ищутся приближенные значения y в узлах сетки.

Интегрируя уравнение на отрезке , получим

Вполне естественным (но не единственным) путем получения численного решения является замена в нем интеграла какой–либо квадратурной формулой численного интегрирования. Если воспользоваться простейшей формулой левых прямоугольников первого порядка

то получим явную формулу Эйлера:

Порядок расчетов:

Численный метод решения задачи Коши называется одношаговым, если для вычисления решения в точке x0 + h используется информация о решении только в точке x0.

Простейший одношаговый метод численного решения задачи Коши — метод Эйлера. В методе Эйлера величины yi вычисляются по формуле:

yi+1 = yi + h·f(xi, yi):

y' = f(x, y), y(a) = y0 , x ∈ [a, b],

xi = a + ih, h = (b-a)/N, i = 0,1 , 2, ..., N,

y(xi)≈ yi ,

yi+1 = yi + h·f(xi, yi).

Для погрешности метода Эйлера на одном шаге справедлива оценка

а для оценки погрешности решения на всём отрезке [a, b] справедливо

За оценку погрешности вычислений с шагом h/2 принимают величину

Если соединить точки (xi, yi) прямолинейными отрезками, получим ломаную Эйлера — ломаную линию, каждое звено которой с началом в точке (xi, yi) имеет угловой коэффициент, равный f(xi, yi).

Многошаговые методы решения задачи Коши характеризуются тем, что решение в текущем узле зависит от данных не в одном предыдущем узле, как это имеет место в одношаговых методах, а от нескольких предыдущих узлах.

Наиболее распространённым примером таких методов является метод Адамса.

bilet 23 vopros 1 1. Структура процесса проектирования. Стадии проектирования.

Иерархическая структура проектов

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

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

Блочно-иерархический или декомпозиционный подход к описанию объекта и к последующему его проектированию основан на разбиении сложной задачи большой размерности на последовательно и (или) параллельно решаемые группы задач малой размерности, что существенно сокращает требования к используемым вычислительным ресурсам или время решения задач.

Иерархическим уровням описаний (спецификаций) объектов соответствуют иерархические уровни проектирования. Под уровнем проектирования понимается совокупность описаний объекта на этом уровне совместно с постановками задач, методами получения описаний и решения возникающих проектных задач.

Список иерархических уровней в каждом приложении или области может быть специфичным, но для большинства приложений характерно следующее наиболее крупное выделение уровней:

— системный уровень, на котором решают наиболее общие задачи проектирования систем, машин и процессов; результаты проектирования представляют в виде структурных и компоновочных схем, генеральных планов, схем размещения оборудования, диаграмм потоков данных и т.п.;

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

— микроуровень, на котором проектируют отдельные детали и элементы машин и приборов.

В зависимости от последовательности решения задач различных иерархических уровней различают нисходящее, восходящее и смешанное проектирование (стили проектирования). Последовательность решения задач от нижних уровней к верхним характеризует восходящее проектирование, обратная последовательность решения приводит к нисходящему проектированию, в смешанном стиле имеются элементы как восходящего, так и нисходящего проектирования. В большинстве случаев для сложных систем предпочитают нисходящее проектирование. При наличии заранее спроектированных составных элементов (блоков, узлов) можно говорить о смешанном проектировании.

При нисходящем проектировании присутствует неопределенность и нечеткость исходных данных (так как еще не спроектированы компоненты). При восходящем проектировании имеется неопределённость и нечеткость исходных требований (поскольку техническое задание имеется на всю проектируемую систему, а не на ее части). Это обуславливает необходимость прогнозирования недостающих данных с последующим их уточнением, т.е. последовательного приближения к окончательному решению (итерационность проектирования).

Наряду с декомпозицией описаний объектов на иерархические уровни применяют разделение представлений о проектируемых объектах на аспекты.

Аспект описания (страта) — описание системы или ее части с некоторой заранее оговоренной точки зрения, определяемой функциональными, физическими или иного типа отношениями между свойствами и элементами системы.

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

— функциональный,

— информационный,

— структурный,

— поведенческий (процессный).

Функциональное описание характеризует функции системы; его чаще всего представляют в виде функциональных схем.

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

Структурное описание характеризует морфологию (строение) системы. В этом описании указываются составные части системы и соединения между ними. Это описание может быть представлено структурными схемами, а также различного рода конструкторской документацией.

Поведенческое описание характеризует процессы функционирования (алгоритмы работы) системы и (или) технологические процессы создания системы.

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

Стадии процесса проектирования

Стадии процесса проектирования – это наиболее крупные части процесса проектирования после разделения его во времени. Близким к определению стадии, но менее четко оговоренным понятием, является понятие этапа проектирования.

Стадии можно объединить в две группы:

I. Внешнее проектирование.

Эта группа обычно включает только одну стадию:

1. Разработка ТЗ на проектирование.

II. Внутреннее проектирование.

В эту группу входят непосредственно этапы проектирования данного объекта:

  1. Разработка технического предложения (стадия НИР, предпроектные исследования).

  2. Стадия эскизного проекта (стадия ОКР).

  3. Стадия технического проекта.

  4. Стадия рабочего проекта.

  5. Испытание опытных образцов или опытных партий.

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

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

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

Таким образом, проектирование сводится к выполнению некоторой последовательности проектных процедур и проектных операций. Такая последовательность называется маршрутом проектирования.

Bilet 28 vopros 2 2. Задачи ос по управлению файлами и устройствами.

Подсистема ввода-вывода (Input-Output Subsystem) мультипрограммной ОС при обмене данными с внешними устройствами компьютера должна решать ряд общих задач, из которых наиболее важными являются следующие:

  • организация параллельной работы устройств ввода-вывода и процессора;

  • согласование скоростей обмена и кэширование данных;

  • разделение устройств и данных между процессами;

  • обеспечение удобного логического интерфейса между устройствами и остальной частью системы;

  • поддержка широкого спектра драйверов с возможностью простого включения в систему нового драйвера;

  • динамическая загрузка и выгрузка драйверов;

  • поддержка нескольких файловых систем;

  • поддержка синхронных и асинхронных операций ввода-вывода.

Организация параллельной работы устройств ввода-вывода и процессора

Организация параллельной работы устройства ввода-вывода и процессора. Каждое устройство ввода-вывода – диск, принтер, терминал – имеет блок управления (контроллер устройства). Контроллер взаимодействует с драйвером – системным программным модулем, предназначенным для управления устройством. Под управлением контроллера устройство может работать некоторое время автономно от команд ОС. Подсистема ввода-вывода должна обеспечить работу – запуск и приостановку разнообразных драйверов, обеспечив приемлемое время реакции каждого драйвера на независимые события контроллера. С другой стороны, необходимо минимизировать загрузку процессора задачами ввода-вывода, оставив как можно больше процессорного времени на выполнение пользовательских потоков.

Данная задача является классической задачей планирования систем реального времени и обычно решается на основе многоуровневой приоритетной схемы обслуживания по прерываниям. Для обеспечения приемлемого уровня реакции все драйверы (или части драйверов) распределяются по нескольким приоритетным уровням в соответствии с требованиями ко времени реакции и временем использования процессора. Для реализации приоритетной схемы обычно задействуется общий диспетчер прерываний ОС.

Согласование скоростей обмена и кэширование данных

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

Разделение устройств и данных между процессами

Разделение устройств и данных между процессами. Устройства ввода-вывода могут предоставляться процессам в монопольном и разделяемом режимах. Задача ОС обеспечить контроль доступа к данным ресурсам системы путем проверки прав пользователя, от имени которых выполняется процесс. Операционная система имеет возможность контролировать доступ не только к устройству в целом, но и к отдельным порциям данных. При разделении устройства между процессами возникает необходимость в разграничении порции данных от двух процессов. Для хранения очереди заданий применяется спул-файл, который синхронизирует скорости работы устройства и оперативной памяти.

Обеспечение удобного логического интерфейса между устройствами и остальной частью системы

Обеспечение удобного логического интерфейса между устройствами и остальной частью системы. Разнообразие устройств ввода-вывода делает актуальной задачу создания экранирующего интерфейса между периферийными устройствами и приложениями. Современные ОС поддерживают файловую модель работы устройств, при котором устройства представляются набором байт, с которыми работают посредством унифицированных системных вызовов (read, write). Для детализации конкретных свойств используются специфические модели устройств конкретного типа – графическая подсистема, принтер, сетевые адаптеры и т.д.

Поддержка широкого спектра драйверов и простота включения нового драйвера в систему

Поддержка широкого спектра драйверов с возможностью простого включения в систему нового драйвера. Достоинством подсистемы ввода-вывода операционной системы является разнообразие устройств, поддерживаемых данной ОС. Для создания драйверов необходимо наличие удобного и открытого интерфейса между драйверами и другими компонентами ОС. Драйвер взаимодействует, с одной стороны, с модулями ядра ОС (модулями подсистемы ввода-вывода, модулями системных вызовов, модулями подсистем управления процессами и памятью и т. д.), а с другой стороны — с контроллерами внешних устройств. Поэтому существуют два типа интерфейсов: интерфейс «драйвер-ядро» (Driver Kernel Interface, DKI) и интерфейс «драйвер-устройство» {Driver Device Interface, DDF). Интерфейс «драйвер-ядро» должен быть стандартизован в любом случае, а интерфейс «драйвер-устройство» имеет смысл стандартизировать тогда, когда подсистема ввода-вывода не разрешает драйверу непосредственно взаимодействовать с аппаратурой контроллера, а выполняет эти операции самостоятельно. Экранирование драйвера от аппаратуры является весьма полезной функцией, так как драйвер в этом случае становится независимым от аппаратной платформы.

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

Динамическая загрузка и выгрузка драйверов

Динамическая загрузка и выгрузка драйверов. Другой проблемой работы с устройствами ввода-вывода является проблема включения драйвера в состав работающей ОС – динамическая загрузка/выгрузка драйверов. Способность системы автоматически загружать и выгружать из оперативной памяти требуемый драйвер повышает универсальность ОС. Альтернативой динамической загрузке драйверов при изменении текущей конфигурации внешних устройств является повторная компиляция кода ядра с требуемым набором драйверов. Пример – некоторые версии UNIX.

Поддержка нескольких файловых систем

Диски представляют особый род периферийных устройств, так как именно на них хранится большая часть как пользовательских, так и системных данных. Данные на дисках организуются в файловые системы, и свойства файловой системы во многом определяют свойства самой ОС — ее отказоустойчивость, быстродействие, максимальный объем хранимых данных. Популярность файловой системы часто приводит к ее миграции из «родной» ОС в другие операционные. Ввиду этого поддержка нескольких популярных файловых систем для подсистемы ввода-вывода также важна, как и поддержка широкого спектра периферийных устройств. Важно также, чтобы архитектура подсистемы ввода-вывода позволяла достаточно просто включать в ее состав новые типы файловых систем, без необходимости переписывания кода. Обычно в операционной системе имеется специальный слой программного обеспечения, отвечающий за решение данной задачи.