Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

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

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

Этот пример, при всем его упрощении, комментирует изрядную сложность структуры ОС. Если имеется желание иметь эффективные версии, то приходится смириться с тем, что структура ОС становится еще сложнее.

Понятие: Простые ОС для мультипрограммных систем.

Комментарий: Чтобы лучше использовать все устройства вычислительной системы (ВС) в системе необходимо одновременно хранить и выполнять многие пользовательские программы. Тогда в эффективной версии ОС ввод, вычисление и печать могут осуществляться так, что всегда в обработке находятся три пользовательские программы:

НЕ нашли? Не то? Что вы ищете?

·  программа печатает,

·  программа вычисляет,

·  программа вводит.

Следовательно, по меньшей мере, три программы должны одновременно находиться в системе и потому храниться в памяти. Для этого память делят на три подобласти: 0, 1 и 2. При этом используется по одному каналу для обработки заказов на ввод и вывод. Фазы чтения, вычисления и печати представляются различными программами, распадаются на отдельные шаги и выполняются одна наряду с другой (то есть параллельно). Конечно, и в этой версии ОС загрузка отдельных устройств остается еще очень плохой, то есть не достигает оптимального их использования. Если выполняются пользовательские программы с сильно различающимися временами для осуществления ввода, счета и вывода, то другие устройства будут простаивать, хотя позднее следующая программа может интенсивно использовать как раз эти устройства.

Поэтому рассмотрим другую простую ОС, которая обеспечивает более полную загрузку устройств. Она допускает большее число заказов в системе, чтобы иметь запас заказов для каждого из устройств. Для этого ОС работает с тремя очередями заказов: очередь свободных областей памяти; очередь областей памяти с программами, готовыми к счету; очередь областей памяти с программами, готовыми к печати.

К подобной ОС, необходимо сделать следующие замечания:

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

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

3.  Программы не получают определенных областей памяти постоянной длины.

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

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

Для мультипрограммных ЭВМ в стратегии расписания должно быть установлено:

·  когда должно быть прервано выполнение программы,

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

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

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

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

Если в системе находится много пользовательских программ, то некоторая часть ОС, управляющая ходом процесса и называемая диспетчером (англ. Scheduler, dispatcher), решает, какая из программ в первую очередь должна быть выбрана для исполнения. Простейшая стратегия заключается в том, что программы для исполнения выбираются в порядке их поступления в систему, и каждая программа выполняется до тех пор, пока не возникнет прерывание (например» вследствие заказа из этой программы на ввод/вывод), и программа продолжает выполняться, как только это становится возможным. Конечно, такой способ действий не всегда отвечает ожиданиям пользователей. Часто скорее ожидается, что программа с коротким временем ее выполнения, которая может быть распознана ОС по заданному при программе требуемом времени на ее выполнение, будет снабжена более высоким приоритетом.

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

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

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

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

Понятие: Пользовательский интерфейс и ОС. Относящиеся к пользователю аспекты ОС.

Комментарий: Для пользователя ОС ряд деталей ее воплощения, как, например, внутренняя структура ОС, не занимают его пристального внимания, если это не оказывает влияния на общение пользователя с ОС.

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

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

·  вычислительную работу для выполнения пользовательских и системных программ;

·  хранение данных и доступ к банкам данных;

·  передачу сообщений другим пользователям и - через сеть - другим ВС;

·  доступ к специальным терминальным (конечным) устройствам (в частности, к устройствам вывода).

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

Понятие: Командный язык. Относящиеся к пользователю аспекты ОС.

Комментарий: Для спецификации запросов к ОС в распоряжении пользователя имеются определенные операции. Эти операции вызываются путем задания указаний для ОС, которые будем называть командами.

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

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

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

Здесь пользователь должен заранее спланировать последовательность команд как программу. Неожиданные эффекты могут поставить под угрозу успешное выполнение оставшихся команд. Возможные ошибки часто имеют катастрофические последствия.

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

Новейшие командные языки в большей степени ориентируются на языки программирования высокого уровня. Они разрешают также задавать “командные процедуры” и гибкую поддержку диалога. Команды пользователя обрабатываются интерпретатором команд. Интерпретатор команд имеет в своем распоряжении список имен команд, которые содержатся в определенном файле, и ссылки на операторы, реализующие эти команды.

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

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

·  каков модус системы в настоящее время?

·  какие операции и какие команды являются при этом доступными для использования?

·  какой последовательностью команд я создал это состояние?

·  каких состояний системы и с помощью, каких последовательностей команд я могу достигнуть?

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

Понятие: Управление пользователями.

Комментарий: Если с вычислительной системе (ВС) работают многие пользователи, то управление ими является важной частичной задачей операционной системы (ОС). Каждый пользователь использует свой шифр, разрешающий доступ к системе. Под этим шифром пользователь может давать системе свои задания. Введение специального дополнительного - часто выбираемого пользователем по своему усмотрению - признака, называемого паролем, призвано предотвратить неправомерное использование его шифра. Соответствующая часть ОС устанавливает каждому пользователю рамки использования ресурсов системы, что предполагает ограничения:

·  на потребность процессорного времени,

·  текущие потребности памяти,

·  потребности для тигельного хранения данных,

·  приоритет,

·  специальные правовые отношения.

В рамках управления пользователями ОС регистрирует также фактическое расходование ресурсов системы отдельными пользователями и тем самым создает основу для расчетов оплаты за работу в ВС.

Понятие: Организация данных и управление ими. Файлы и файловая структура.

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

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

В файлах делается различие между их внутренней структурой и их структурой доступа. ОС должна как создавать внутреннюю структуру файла и управлять им, так и реализовать структуру доступа к файлу.

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

(1)  локализацию единиц информации на запоминающих средах,

(2)  передачу информации между различными видами памяти.

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

Системы файлов обычно имеют иерархическую структуру. Часто они имеют древовидную структуру - тогда говорят о файловом дереве. Доступ к какому-либо файлу осуществляется по трассе доступа.

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

В файловой системе имеется два типа файлов:

(1)  файлы, которые содержат простые наборы данных (листья файлового дерева);

(2)  управляющие файлы, называемые директориями (англ. directories), которые служат для управления наборами данных (внутренние узлы дерева).

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

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

В новейших ОС ряд названных команд можно не задавать в явном виде - они неявно вводятся самой ОС и затем выполняются при обработке определенных команд пользователя.

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

Понятие: Надежность и защита ОС.

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

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

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

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

Классическими методами защиты данных среди других являются:

·  механизмы запрета,

·  пароли,

·  блокировка данных (криптографические методы).

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

Понятие: Распределение ресурсов вычислительной системы (ВС).

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

В главнейшие задачи и способы распределения ресурсов ВС входят:

·  выделение процессора;

·  управление оперативной памятью;

·  выделение устройств ввода\вывода;

·  распределение ресурсов в мультипрограммном режиме;

·  выделение ресурсов в режиме диалога.

Понятие: Выделение процессора в распределении ресурсов вычислительной системы (ВС).

Комментарий: Принципиально выделяют следующие стратегии выделения процессора:

-  LIFO: программа с высшим приоритетом, прерванная последней, продолжается первой;

-  FIFO: программа дольше всех ожидающая продолжения выполнения первой продолжает выполняться;

-  смешанные формы FIFO-и LIFO-стратегий.

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

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

·  неограниченное выполнение,

·  выделение времени программам по кругу,

·  концепция прерывания.

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

Понятие: Управление оперативной памятью в распределении ресурсов вычислительной системы (ВС).

Комментарий: Одним из самых дорогих и дефицитных ресурсов ЭВМ является оперативная память. Правда, стоимость элементов, из которых она строится, постоянно снижается, а новейшие технологии, обеспечивающие высокую степень интеграции элементов, позволяют иметь в распоряжении оперативную память все большей емкости. И, тем не менее, четкое выделение памяти для готовых к выполнению программ является решающей предпосылкой для получения ОС с хорошими эксплуатационными свойствами. Сюда входят следующие задачи:

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

·  защита отдельных отрезков памяти от неправомерного доступа к ним из других программ пользователей.

При управлении памятью возникают следующие проблемы:

1)  области памяти, необходимые для разных контекстов процессов, имеют различные размеры, которые к тому же могут, изменятся по ходу выполнения программ;

2)  часто объем оперативной памяти оказывается недостаточным для размещения всех данных в пользовательских программах,

3)  наборы данных, содержательно связанные друг с другом должны быть объединены и организационно.

Обычными методами управления памятью, которые в значительной мере решают эти проблемы, являются:

·  сегментация,

·  страничный обмен.

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

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

Понятие: Выделение устройств ввода/вывода в распределении ресурсов вычислительной системы (ВС).

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

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

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

Понятие: Распределение ресурсов в мультипрограммном режиме в распределении ресурсов вычислительной системы (ВС).

Комментарий: Ресурсы машины в ОС не могут распределяться независимо друг от друга, поскольку отдельные запрашиваемые ресурсы обычно находятся в многообразных отношениях друг к другу.

Пользовательские программы предъявляют к ВС самые различные требования:

·  программы с интенсивным счетом требуют, прежде всего, процессорного времени;

·  программы с большими объемами используемых данных требуют, прежде всего, оперативной и внешней памяти;

·  программы с интенсивным вводом/выводом, прежде всего, запрашивают устройства ввода/вывода;

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

При мультипрограммном режиме перед ОС возникают дополнительные проблемы:

·  замещение при выполнении отдельных программ для разрешения конфликтов при запросах на ресурсы;

·  справедливое распределение ресурсов;

·  минимизация организационных затрат;

·  минимизация времени переключения с задачи на задачу при прерываниях;

·  регулирование прав доступа к наборам данных. В таких случаях могут возникнуть и технические осложнения.

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

·  если в системе будет обрабатываться одновременно слишком много программ пользователей, то взаимное вытеснение программ из памяти может привести почти к застою в работе системы (в обиходе говорят о «повисании» машины или «глюках»);

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

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

Понятие: Выделение ресурсов в режиме диалога в распределении ресурсов вычислительной системы (ВС).

Комментарий: По сравнению с пакетным режимом, диалоговый режим ведет к дополнительным требованиям к ОС и распределению ресурсов. Здесь перед ОС стоит задача обслужить каждого пользователя за минимальное время ожидания ответа. В частности, ОС должна управлять всем потоком ввода/вывода - это касается и передачи информации между памятью и устройствами ввода/вывода.

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

·  полудуплексном: попеременно осуществляется то ввод, то вывод;

·  полностью дуплексном: одновременно может идти и ввод, и вывод.

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

В диалоговом режиме ОС дополнительно к ее классическим функциям решает следующие задачи:

·  объединяет введенные знаки в последовательности знаков и соединяет их в команды;

·  предписывает ввод/вывод отдельным программам пользователей и дисплеям;

·  выдает информацию на экран как эхо ввода и как истинный вывод;

·  управляет данными пользователей

Объединение вводимых с терминала знаков, работа каналов и процессора могут осуществляться многообразными способами, так что короткое время реакции обусловливает большую нагрузку на процессор. Этот недостаток может быть частично устранен подключением к ЭВМ специальных процессоров ввода/вывода.

Понятие: Методы реализации системного программирования при создании ОС.

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

Возможными требованиями к оптимальности являются:

·  надежность,

·  комфортность пользовательского интерфейса,

·  время ответа,

·  владение ситуацией при запросах,

·  легкость модификаций,

·  устойчивость (робастность).

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

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

·  концепция прерываний;

·  концепция блокировки прерываний;

·  синхронизация;

·  сегментация;

·  метод страничного обмена;

·  релокация программ;

·  одновременное использование подпрограмм;

·  управление устройствами ввода/вывода.

Понятие: Концепции прерываний и блокировки прерываний – важнейшие концепции ОС.

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

·  программа использовала выделенное ей процессорное время;

·  программа требует использования устройств или файлов, которых в данный момент нет в ее распоряжении;

·  устройство ввода/вывода сигнализирует процессору, что оно завершило выполнение выданного ему заказа;

·  оператор ЭВМ (или пользователь) принял решение приостановить выполнение программы;

·  встретилась ошибка.

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

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

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

while true do

продвижение счетчика команд; вычисление абсолютного адреса команды; контроль по защите памяти (в случае необходимости тревога по защите памяти);

в случае возникновения прерывания - его обработка; вычисление абсолютных адресов операндов; контроль по защите памяти (в случае необходимости - тревога по защите памяти);

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13