До сих пор мы рассматривали операции над процессами изолированно, независимо друг от друга. В действительности же деятельность мультипрограммной операционной системы состоит из цепочек операций, выполняемых над различными процессами, и сопровождается переключением процессора с одногопроцесса на другой.
Давайте для примера упрощенно рассмотрим, как в реальности может протекать операция разблокирования процесса, ожидающего ввода-вывода (см. рис. 2.5). При исполнении процессором некоторого процесса (на рисунке – процесс 1) возникает прерывание от устройства ввода-вывода, сигнализирующее об окончании операций на устройстве. Над выполняющимся процессом производится операция приостановки. Далее операционная система разблокирует процесс, инициировавший запрос на ввод-вывод (на рисунке – процесс 2) и осуществляет запуск приостановленного или нового процесса, выбранного при выполнении планирования (на рисунке был выбран разблокированный процесс). Как мы видим, в результате обработки информации об окончании операции ввода-вывода возможна смена процесса, находящегося в состоянии исполнение.
Рис. 2.5. Выполнение операции разблокирования процесса. Использование термина "код пользователя" не ограничивает общности рисунка только пользовательскими процессами
Для корректного переключения процессора с одного процесса на другой необходимо сохранить контекст исполнявшегося процесса и восстановить контекст процесса, на который будет переключен процессор. Такая процедура сохранения/восстановления работоспособности процессов называется переключением контекста. Время, затраченное на переключение контекста, не используется вычислительной системой для совершения полезной работы и представляет собой накладные расходы, снижающие производительность системы. Оно меняется от машины к машине и обычно колеблется в диапазоне от 1 до 1000 микросекунд. Существенно сократить накладные расходы в современных операционных системах позволяет расширенная модель процессов, включающая в себя понятие threads of execution (нити исполнения или просто нити). Подробнее о нитях исполнения мы будем говорить в лекции 4 – "Кооперация процессов и основные аспекты ее логической организации".
Понятие процесса характеризует некоторую совокупность набора исполняющихся команд, ассоциированных с ним ресурсов и текущего момента его выполнения, находящуюся под управлением операционной системы. В любой момент процесс полностью описывается своим контекстом, состоящим изрегистровой, системной и пользовательской частей. В операционной системе процессы представляются определенной структурой данных – PCB, отражающей содержание регистрового и системного контекстов. Процессы могут находиться в пяти основных состояниях: рождение, готовность, исполнение, ожидание,закончил исполнение. Из состояния в состояние процесс переводится операционной системой в результате выполнения над ним операций. Операционная система может выполнять над процессами следующие операции: создание процесса, завершение процесса, приостановка процесса, запуск процесса,блокирование процесса, разблокирование процесса, изменение приоритета процесса. Между операциями содержимое PCB не изменяется. Деятельность мультипрограммной операционной системы состоит из цепочек перечисленных операций, выполняемых над различными процессами, и сопровождается процедурами сохранения/восстановления работоспособности процессов, т. е. переключением контекста. Переключение контекста не имеет отношения к полезной работе, выполняемой процессами, и время, затраченное на него, сокращает полезное время работы процессора.
Объемная модель – будь то серия условно объемных графических зарисовок объемов, поисковый либо же крупный макет, или же 3d-модель, выбранная как основа для манипуляций в САПР – так вот, объемная модель является эффективным средством проектирования, поскольку в любом виде несет в себе зерно комплексного подхода, единовременно отражая достаточно большое число аспектов, отслеживаемых при комплексном проектировании. Свои преимущества есть у каждого из перечисленных выше методов – как-то эскизная непринужденность и легкость вхождения внимания для перспективных набросков, наглядность и вещественность макетов, быстрая варьируемость и параллельное отслеживание испытываемых изменений на лету для компьютерных средств, - но главное в них одно. Все они позволяют нам оперировать объемными моделями (так или иначе – ведь даже перспективный набросок на плоскости отражает объем).
Объемная модель может быть частью работы на стадии поиска параметров проектируемого объекта. Поисковые макеты в современном проектировании, как правило, или режут из пенопласта, или исполняют из картона либо бумаги. (Компьютерный аналог – упрощенные трехмерные модели, специализированные редакторы наподобие Sketch-Up). Современная, поисковая модель имеет свою специфику — она невелика по размеру, проста в изготовлении и преследует единственную цель — определить общий композиционный и пластический рисунок объекта. Иной подход наблюдается на стадии детальной разработки проекта. Здесь объемная модель выступает как основное рабочее средство совершенствования композиции сооружения. На макете, выполненном в большом масштабе (на 3d-модели, выполненной в финальных размерах и с высокой степенью проработки), окончательно дорабатывается то, что лишь в общих контурах было найдено в поисковой модели, уточняется пластический образ сооружения, его конструкция и характер отделки. Кроме того, объемная модель является полезным средством проверки качества авторских решений, испытания правильности избранной архитектурной концепции. На этой стадии макет должен быть достаточно крупным, его размеры колеблются в зависимости от габаритов сооружения и выполняются в масштабах от 1:50 до 1:500—1:1000. Чем крупнее макет, чем подробнее проработана 3d-модель, тем в большей степени она информирует зрителя о характере сооружения, помогает определить точки восприятия объекта внутри и снаружи и т.п. Макет обстоятельно исследуется, его снимают на фото и видеопленку снаружи и внутри с применением объективов, позволяющих фотографировать внутреннее пространство объемной модели с наиболее характерных точек и ракурсов. Подобное исследование модели весьма удобно с применением электронной вычислительной техники, позволяющей достаточно просто устраивать своего рода «проход через объект». Эти материалы вместе с объемной моделью являются частью демонстрационной экспозиции, которая, благодаря своей наглядности, наилучшим образом раскрывает заказчику, потребителю суть проектируемого объекта.
Совершенно новый характер объемное моделирование приобретает на стадии строительства. В мировую практику все шире внедряются методы пространственного моделирования особо важных фрагментов здания. В некоторых случаях эти модели играют имитационную роль, служат для проверки авторской идеи и моделируют в натуральную величину объект либо же его фрагменты из подсобных материалов (фанерных щитов, ажурных металлических конструкций, пластика и т.д.). В большинстве же случаев объемные модели служат для выбора наиболее удачных сочетаний отделочных материалов. В случае с электронно-автоматизированными средствами проектировании речь будет идти о пробном, но качественном и достаточно подробном рендере, позволяющем произвести подбор материалов оперативно и в сравнительно короткие сроки. Объемная модель в этом случае превращается в прямое реальное отражение идеи, в натуральную величину, если речь идет о макете, со всеми присущими натуре чертами и качествами.