Пакетные процессы характеризуются 6 классификационными признаками.
1. По генеалогии (родословию). В любой ОС существующий процесс может требовать порождения других процессов. Такой процесс называют порождающим, а процесс, создаваемый по требованию – порождаемым или порожденным. Порожденный процесс на ИСП может стать и порождающим.
2. По результативности. Здесь ключевые признаки: результат и путь его получения. Важно иметь возможность: воспроизводить результаты процессов, а также сравнивать процессы по их трассам. При этом сравниваться могут: программы (одна или разные), данные (одинаковые), процессоры (один или разные), трассы (одна или разные), результат (одинаковый). С целью сравнения и выделяют 4 вида процессов:
эквивалентные – имеют одинаковый конечный результат обработки одних и тех же исходных данных по одной или разным программам на одном или разных процессорах. Трассы в общем случае не совпадают;
тождественные – эквивалентные, одна программа, но трассы не совпадают;
равные – тождественные и трассы совпадают;
различные - все остальные.
3. По временным соотношениям ИСП (динамическому признаку) выделяют процессы:
последовательные – их ИСП не пересекаются во времени (рис.2.2,а);
параллельные – они существуют одновременно на рассматриваемом интервале времени Δt1 (рис.2.2,б);
комбинированные – если имеются два процесса, и на рассматриваемом интервале времени Δt2 есть хоть одна точка a, когда они оба существуют одновременно, и точка b, когда существует только один процесс (рис.2.2,в).
Рис.2.2. ИСП последовательных, параллельных и комбинированных
4. По отношению к процессору различают процессы внутренние (развиваются на нем) и внешние (развиваются вне него).
5. По отношению к ОС различают процессы системные – при их развитии исполняется программа ОС, и пользовательские – исполняется прикладная программа.
6. По связности выделяют процессы:
взаимосвязанные – между ними поддерживаются с помощью системы управления процессами связи какого-либо рода (функциональные, временные, управляющие, информационные);
изолированные – связей нет или есть «слабые», неявные связи;
информационно-независимые – два взаимосвязанных процесса при развитии используют совместно некоторые ресурсы, но информацией не обмениваются. Их связь может быть функциональная или временная;
взаимодействующие – есть информационные связи, но их схемы и механизмы могут различаться в зависимости от
Ø временных соотношений (последовательные, параллельные, комбинированные);
Ø способа связи (явный – обмен сообщениями, неявный – с помощью разделяемых структур данных);
конкурирующие – есть связь и конкуренция по ресурсам.
12. Чем различаются эквивалентные, тождественные и равные процессы?
эквивалентные – имеют одинаковый конечный результат обработки одних и тех же исходных данных по одной или разным программам на одном или разных процессорах. Трассы в общем случае не совпадают;
тождественные – эквивалентные, одна программа, но трассы не совпадают;
равные – тождественные и трассы совпадают;
различные - все остальные.
13. Чем различаются последовательные, параллельные и комбинированные процессы?
· последовательные – их ИСП не пересекаются во времени (рис.2.2,а);
· параллельные – они существуют одновременно на рассматриваемом интервале времени Δt1 (рис.2.2,б);
· комбинированные – если имеются два процесса, и на рассматриваемом интервале времени Δt2 есть хоть одна точка a, когда они оба существуют одновременно, и точка b, когда существует только один процесс (рис.2.2,в).
Рис.2.2. ИСП последовательных, параллельных и комбинированных
29.Поясните суть принципов построения ОС: частотного, модульности, функциональной избирательности. (стр. 31-32; п.1, п.2, п.3)
1. Частотный принцип. В алгоритмах и массивах ОС выделяют действия и данные по частоте использования. Для частых действий обеспечиваются условия их быстрого выполнения:
· программы частых действий постоянно находятся в ОП и активно поддерживаются специальными средствами;
· частые операции стараются делать более короткими;
· к часто используемым данным обеспечивается наиболее быстрый доступ.
2. Принцип модульности отражает развитие технологии разработки ПО «снизу-вверх». Части ОС обосабливаются в отдельные модули. Модуль – функциональный элемент ОС, имеющий законченное оформление и унифицированные средства сопряжения с другими. Модули затем объединяются в обобщенные модули, группы обобщенных модулей так же – в один и так далее. Легко заменять данный модуль новым. При построении модулей учитывают характер их будущего использования, выделяя разновидности:
· однократные – модули, которые могут испортить себя после окончания работы и не восстанавливаются;
· многократные – восстанавливаются;
· реентерабельные – параллельно используемые одновременно несколькими программами при их исполнении.
3. Принцип функциональной избирательности – логическое продолжение рассмотренных принципов. В ОС выделяется некоторая часть важных модулей, которые должны быть всегда «под рукой» для эффективной организации вычислительного процесса. Эта основа ОС называется ядром. При формировании состава ядра требуется выполнить два противоречивых требования:
· включить в ядро все наиболее часто используемые системные модули;
· объем ОП, занимаемый ядром, должен быть минимальным.
30.Поясните суть принципов построения ОС: генерации, функциональной избыточности, защиты, умолчания. (стр 33-34; п.4, п.5, п.6, п.8)
1. Принцип генерации. ОС создается и представляется так, чтобы можно было настраивать (генерировать) ее, исходя из конкретной конфигурации компьютера и круга решаемых проблем. Эта процедура проводится достаточно редко и на долгий период эксплуатации. Процесс генерации реализует программа-генератор (setup, install), она может использовать специальный язык или панели ввода для описания требуемых возможностей, конфигурации компьютера, необходимых компонент ОС. Для генерации используется дистрибутивный комплект (Distribution Kit) на дискетах или CD, в результате на жестком диске получается сгенерированная (рабочая) версия ОС.
2. Принцип функциональной избыточности предполагает наличие в составе ОС альтернативных однотипных компонент (мониторов, драйверов, загрузчиков и т.д.).
3. Принцип защиты определяет необходимость разработки мер, ограждающих программы и данные пользователей от искажений или нежелательных влияний друг на друга, пользователей на ОС и наоборот. Программы должны быть гарантированно защищены как при своем выполнении, так и при хранении. Примеры способов защиты: двухконтекстная работа процессора (привилегированный режим для системных программ ОС и непривилегированный – для приложений), контекстная защита, парольная защита.
4. Принцип умолчания используется для облегчения организации связей с системой при генерации и работе ОС. ОС хранит базовые описания процессов, модулей, ресурсов, условий выполнения программ и т.п. Значения этих данных считаются заданными по умолчанию, если администратор или пользователь забыл указать или сознательно не указал их.
31.Поясните суть принципов построения ОС: перемещаемости, независимости программ ОТ УВВ, открытости, наращиваемости.(стр 33-34; п.7, п.9, п.10, п.11)
1. Принцип перемещаемости. Исполнение модуля не должно зависеть от места его расположения в ОП. Для этого в модулях используются относительные адреса операндов, а ОС должна иметь средства настройки текста модуля по месту его выполнения. Настройка может производиться перед выполнением или во время выполнения, и заключается в определении фактических адресов операндов в ОП для всех команд модуля. Настройка зависит от используемого способа адресации и алгоритма распределения ОП для данной ОС.
2. Принцип независимости программ от внешних устройств позволяет одинаково управлять УВВ независимо от их конкретных физических характеристик.
3. Принцип открытости (прозрачности). Открытая ОС доступна для анализа пользователями и специалистами. Тем больше приложений можно разработать для такой открытой и понятной среды.
4. Принцип наращиваемости (развития). Наращиваемая (модифицируемая, развиваемая) ОС позволяет не только использовать возможности генерации, но и вводить в ее состав новые модули, совершенствовать существующие.
32.Что означают требования, предъявляемые к ОС: надежность и отказоустойчивость, безопасность, расширяемость.(стр 35-36; п.2, п.3, п.5)
1. Надежность и отказоустойчивость. ОС должна быть защищена как от внутренних, так и внешних ошибок, сбоев и отказов. Ее действия всегда должны быть предсказуемыми, а приложения не должны иметь возможности наносить вред ОС. Надежность и отказоустойчивость ОС, прежде всего, определяются архитектурными решениями, положенными в ее основу, а также качеством ее реализации (отлаженностью кода). Кроме того, важно знать, обеспечивает ли ОС программную поддержку аппаратных средств обеспечения отказоустойчивости, таких, например, как дисковые массивы RAID или источники бесперебойного питания UPS.
2. Безопасность. Современная ОС (особенно сетевая) должна защищать данные и другие ресурсы ВС от несанкционированного доступа. Чтобы ОС обладала свойством безопасности, в ее среде, как минимум, должны обеспечиваться: аутентификация (определение легальности пользователей); авторизация (предоставление легальным пользователям дифференцированных прав доступа к ресурсам); аудит (фиксация всех «подозрительных» для безопасности системы событий).
3. Расширяемость. Несмотря на то, что аппаратура компьютера устаревает очень быстро, полезная жизнь ОС, как в случае с UNIX, может быть долгой. Поэтому лучшие ОС обычно эволюционируют, и эти изменения более значимы и долговременны, чем быстротечные изменения аппаратуры. Эволюция ОС обычно заключается в приобретении ими новых свойств, например, поддержке новых типов УВВ, новых информационных или сетевых технологий. Если код ОС написан так, что дополнения и изменения могут вноситься без нарушения целостности системы, то такую ОС называют расширяемой. Расширяемость достигается за счет модульной структуры ОС, когда программы строятся из набора отдельных модулей, взаимодействующих только через функциональный интерфейс.
33.Что означают требования, предъявляемые к ОС: производительность, переносимость, совместимость.(стр 35-36; п.1, п.6, п.4)
1. Производительность. ОС должна обладать настолько высоким быстродействием и временем реакции, насколько это позволяет аппаратная платформа. На производительность ОС влияют ее архитектура, многообразие функций, качество программного кода ОС, сбалансированность аппаратного комплекса компьютера, возможность исполнения ОС на высокопроизводительной (многопроцессорной) платформе и другие.
2. Совместимость. Существует несколько «долгоживущих» популярных ОС (например, семейства UNIX и Linux, Windows 2000/ME/XP/2003 Server), для которых разработана широкая номенклатура приложений (офисных и других). Поэтому пользователю, по какой-либо причине переходящему с одной ОС на другую, необходима возможность запуска своих любимых приложений в среде новой для него ОС. Если ОС имеет средства выполнения приложений, написанных для других ОС, то считается, что она обладает совместимостью с этими ОС. Следует различать совместимость на уровне двоичных кодов и совместимость на уровне исходных текстов. Понятие совместимости включает и поддержку ГИП других ОС.
3. Переносимость (многоплатформенность). В идеале код ОС должен легко переноситься на разные типы процессоров и разные аппаратные платформы (отличающиеся не только типом процессора, но и способом организации всей аппаратуры компьютера). Переносимые ОС имеют несколько вариантов реализации для разных платформ.