Требования предъявляемые к современным операционным системам

Требования предъявляемые к современным операционным системам

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

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

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

Рассмотрим более подробно некоторые из этих требований.

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

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

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

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

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

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

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

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

Во-вторых, следует учесть, в какое физическое окружение программа должна быть перенесена. Различная аппаратура требует различных решений при создании ОС. Например, ОС, построенная на 32-битовых адресах, не может быть перенесена на машину с 16-битовыми адресами (разве что с огромными трудностями).

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

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

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

  • Переносимый язык высокого уровня. Большинство переносимых ОС написано на языке С (стандарт ANSI X3.159-1989). Разработчики выбирают С потому, что он стандартизован, и потому, что С-компиляторы широко доступны. Ассемблер используется только для тех частей системы, которые должны непосредственно взаимодействовать с аппаратурой (например, обработчик прерываний) или для частей, которые требуют максимальной скорости (например, целочисленная арифметика повышенной точности). Однако непереносимый код должен быть тщательно изолирован внутри тех компонентов, где он используется.
  • Изоляция процессора. Некоторые низкоуровневые части ОС должны иметь доступ к процессорно-зависимым структурам данных и регистрам. Однако код, который делает это, должен содержаться в небольших модулях, которые могут быть заменены аналогичными модулями для других процессоров.
  • Изоляция платформы. Зависимость от платформы заключается в различиях между рабочими станциями разных производителей, построенными на одном и том же процессоре (например, MIPS R4000). Должен быть введен программный уровень, абстрагирующий аппаратуру (кэши, контроллеры прерываний ввода-вывода и т. п.) вместе со слоем низкоуровневых программ таким образом, чтобы высокоуровневый код не нуждался в изменении при переносе с одной платформы на другую.

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

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

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

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

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

Гораздо сложнее достичь двоичной совместимости между процессорами, основанными на разных архитектурах. Для того, чтобы один компьютер выполнял программы другого (например, DOS-программу на Mac), этот компьютер должен работать с машинными командами, которые ему изначально непонятны. Например, процессор типа 680×0 на Mac должен исполнять двоичный код, предназначенный для процессора 80×86 в PC. Процессор 80×86 имеет свои собственные дешифратор команд, регистры и внутреннюю архитектуру. Процессор 680×0 не понимает двоичный код 80×86, поэтому он должен выбрать каждую команду, декодировать ее, чтобы определить, для чего она предназначена, а затем выполнить эквивалентную подпрограмму, написанную для 680×0. Так как к тому же у 680×0 нет в точности таких же регистров, флагов и внутреннего арифметико-логического устройства, как в 80×86, он должен имитировать все эти элементы с использованием своих регистров или памяти. И он должен тщательно воспроизводить результаты каждой команды, что требует специально написанных подпрограмм для 680×0, гарантирующих, что состояние эмулируемых регистров и флагов после выполнения каждой команды будет в точности таким же, как и на реальном 80×86.

Это простая, но очень медленная работа, так как микрокод внутри процессора 80×86 исполняется на значительно более быстродействующем уровне, чем эмулирующие его внешние команды 680×0. За время выполнения одной команды 80×86 на 680×0, реальный 80×86 может выполнить десятки команд. Следовательно, если процессор, производящий эмуляцию, не настолько быстр, чтобы компенсировать все потери при эмуляции, то программы, исполняющиеся под эмуляцией, будут очень медленными.

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

Соответствие стандартам POSIX также является средством обеспечения совместимости программных и пользовательских интерфейсов. Во второй половине 80-х правительственные агентства США начали разрабатывать POSIX как стандарты на поставляемое оборудование при заключении правительственных контрактов в компьютерной области. POSIX — это «интерфейс переносимой ОС, базирующейся на UNIX». POSIX — собрание международных стандартов интерфейсов ОС в стиле UNIX. Использование стандарта POSIX (IEEE стандарт 1003.1 — 1988) позволяет создавать программы стиле UNIX, которые могут легко переноситься из одной системы в другую.

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

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

Основы стандартов в области безопасности были заложены «Критериями оценки надежных компьютерных систем«. Этот документ, изданный в США в 1983 году национальным центром компьютерной безопасности (NCSC — National Computer Security Center), часто называют Оранжевой Книгой.

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

Иерархия уровней безопасности, приведенная в Оранжевой Книге, помечает низший уровень безопасности как D, а высший — как А.

  • В класс D попадают системы, оценка которых выявила их несоответствие требованиям всех других классов.
  • Основными свойствами, характерными для С-систем, являются: наличие подсистемы учета событий, связанных с безопасностью, и избирательный контроль доступа. Уровень С делится на 2 подуровня: уровень С1, обеспечивающий защиту данных от ошибок пользователей, но не от действий злоумышленников, и более строгий уровень С2. На уровне С2 должны присутствовать средства секретного входа, обеспечивающие идентификацию пользователей путем ввода уникального имени и пароля перед тем, как им будет разрешен доступ к системе. Избирательный контроль доступа, требуемый на этом уровне позволяет владельцу ресурса определить, кто имеет доступ к ресурсу и что он может с ним делать. Владелец делает это путем предоставляемых прав доступа пользователю или группе пользователей. Средства учета и наблюдения (auditing) — обеспечивают возможность обнаружить и зафиксировать важные события, связанные с безопасностью, или любые попытки создать, получить доступ или удалить системные ресурсы. Защита памяти — заключается в том, что память инициализируется перед тем, как повторно используется. На этом уровне система не защищена от ошибок пользователя, но поведение его может быть проконтролировано по записям в журнале, оставленным средствами наблюдения и аудитинга.
  • Системы уровня В основаны на помеченных данных и распределении пользователей по категориям, то есть реализуют мандатный контроль доступа. Каждому пользователю присваивается рейтинг защиты, и он может получать доступ к данным только в соответствии с этим рейтингом. Этот уровень в отличие от уровня С защищает систему от ошибочного поведения пользователя.
  • Уровень А является самым высоким уровнем безопасности, он требует в дополнение ко всем требованиям уровня В выполнения формального, математически обоснованного доказательства соответствия системы требованиям безопасности.

Различные коммерческие структуры (например, банки) особо выделяют необходимость учетной службы, аналогичной той, что предлагают государственные рекомендации С2. Любая деятельность, связанная с безопасностью, может быть отслежена и тем самым учтена. Это как раз то, что требует С2 и то, что обычно нужно банкам. Однако, коммерческие пользователи, как правило, не хотят расплачиваться производительностью за повышенный уровень безопасности. А-уровень безопасности занимает своими управляющими механизмами до 90% процессорного времени. Более безопасные системы не только снижают эффективность, но и существенно ограничивают число доступных прикладных пакетов, которые соответствующим образом могут выполняться в подобной системе. Например для ОС Solaris (версия UNIX) есть несколько тысяч приложений, а для ее аналога В-уровня — только сотня.

Архитектура, назначение и функции операционных систем

1.6. Классификация операционных систем

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

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

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

Поддержка многозадачности (многопрограммности). По числу одновременно выполняемых задач ОС делятся на 2 класса: однопрограммные (однозадачные) – например, MS-DOS, MSX, и многопрограммные (многозадачные) – например, ОС ЕС ЭВМ, OS/360, OS/2, UNIX, Windows разных версий.

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

Поддержка многопользовательского режима. По числу одновременно работающих пользователей ОС делятся: на однопользовательские (MS-DOS, Windows 3х, ранние версии OS/2) и многопользовательские (UNIX, Windows NT/2000/2003/XP/Vista).

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

Виды многопрограммной работы. Специфику ОС во многом определяет способ распределения времени между несколькими одновременно существующими в системе процессами (или потоками). По этому признаку можно выделить 2 группы алгоритмов: не вытесняющая многопрограммность (Windows3.x, NetWare) и вытесняющая многопрограммность (Windows 2000/2003/XP, OS/2, Unix).

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

Многопроцессорная обработка. Важное свойство ОС – отсутствие или наличие средств поддержки многопроцессорной обработки. По этому признаку можно выделить ОС без поддержки мультипроцессирования (Windows 3.x, Windows 95) и с поддержкой мультипроцессирования (Solaris, OS/2, UNIX, Windows NT/2000/2003/XP).

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

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

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

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

1.7. Эффективность и требования, предъявляемые к ОС

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

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

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

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

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

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

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

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

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

Производители могут предлагать свои ОС в различных, различающихся ценой и производительностью, конфигурациях. Например, Microsoft продает [10]:

Требования к современным ОС

Требования функциональной полноты предписывают построение ОС при совпадении функциональных компонентов

Делятся на категории:

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

· Переносимость — возможность переноса ПО с одной ОС в другую.

Ø Исходных кодов

Ø Двоичных кодов

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

· Безопасность (аутентификация, авторизация и т.д.)

· Производительность. ОС должна обладать такой высокой производительностью, насколько это возможно при заданной комплектации.

К современным операционным системам предъявляется 2 вида требований – «требования функциональной полноты» и эксплуатационные.

Операционная система должна поддерживать (требования функциональной полноты):

1) мультипрограммную обработку (многозадачность),

2) виртуальную память,

3) свопинг (возможность выгрузки страниц оперативной памяти на жесткий диск и подкачивать их обратно в оперативную память при необходимости),

4) многооконный графический интерфейс,

5) предоставлять возможность работы в сети.

Эксплуатационные требования:

1) расширяемость (возможность добавлять дополнительные модули и функции),

2) переносимость (средства эмуляции),

3) совместимость (операционная система новой версии должна предоставлять возможность пользоваться старыми программами),

4) надежность и отказоустойчивость,

Чтобы операционная система удовлетворяла требованиям безопасности, он как минимум должна иметь:

1)средства аутентификации (определение легальности пользователей),

2)средства авторизации (предоставление легальному пользователю дифференцированных прав доступа к ресурсам),

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

185.238.139.36 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock!
и обновите страницу (F5)

очень нужно

Требования к современным операционным системам

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

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

Рис. 2.7. Гибридная сеть

ваний, к операционным системам предъявляются не менее важные

рыночные требования. К этим требованиям относятся:

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

Операционные системы, их назначение и разновидности

ОПЕРАЦИОННЫЕ СИСТЕМЫ, ИХ НАЗНАЧЕНИЕ И РАЗНОВИДНОСТИ

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

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

К современным операционным системам предъявляются следующие требования:

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

По числу одновременно выполняемых задач выделяют ОС однозадачные (MS DOS, ранние версии PC DOS) и многозадачные (OS/2, UNIX, Windows).

Однозадачные ОС предоставляют пользователю виртуальную машину и включают средства управления файлами, периферийными устройствами и средства общения с пользователем. Многозадачные ОС дополнительно управляют разделением между задачами совместно используемых ресурсов. Многозадачность бывает невытесняющая (NetWare, Windows3/95/98) и вытесняющая (Windows NT, OS/2, UNIX). В первом случае активный процесс по окончании сам передает управление ОС для выбора из очереди другого процесса. Во втором — решение о переключении процессора с одного процесса на другой принимает ОС.

По числу одновременно работающих пользователей ОС делятся на однопользовательские (MS DOS, Windows Зх, ранние версии OS/2) и многопользовательские (UNIX, WINDOWS NT). В многопользовательских системах присутствуют средства защиты информации пользователей от несанкционированного доступа.

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

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

В настоящий момент около 90% компьютеров используют ОС Windows. Более широкий класс ОС ориентирован для использования на серверах. К этому классу ОС относятся семейство UNIX, разработки фирмы Microsoft (MS DOS и Windows), сетевые продукты Novell и корпорации IBM.

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

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

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

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

ОС MS DOS широко использовалась для персональных компьютеров, построенных на базе процессоров Intel 8088-80486.

В настоящее время MS DOS для управления персональными компьютерами практически не применяется. Однако ее не следует считать полностью исчерпавшей свои возможности и потерявшей актуальность. Низкие требования к аппаратным ресурсам оставляют DOS перспективной для практического использования. Так, в 1997 г. компания СаШега начала работы по адаптации DR DOS (аналог MS DOS) к рынку встроенных ОС мелких высокоточных устройств, присоединяемых к Интернету и интранет-сетям. К этим устройствам относятся кассовые аппараты, факсы, персональные цифровые ассистенты, электронные записные книжки и др.

Операционные системы Windows — это семейство операционных систем, включающих: Windows 3.1, Windows for Workgroups 3.11, Windows 9X, Windows NT, Windows 2000, Windows ME (первые две обычно называют операционными оболочками, поскольку ОС DOS для них устанавливалась отдельно). Windows 95 характеризуется простотой инсталляции, невысокими уровнями защиты данных и устойчивости к сбоям приложений. Windows 95 обладает интуитивно понятным интерфейсом, поддерживает, технологию plug-and-play, содержит встроенные средства для сетевой работы.

Windows 98 является развитием Windows 95. Эта версия тесно интегрирована с Web-броузером Internet Explorer и содержит большое количество драйверов к старым и новым устройствам. Пользователи отмечают упрощенный процесс инсталляции ОС, пониженные по сравнению с NT требования к мощности процессора, объему памяти и дисковому пространству. Одной из разновидностей Windows является ОС Windows СЕ. Эта линия ОС предназначена для использования на портативных компьютерах. Windows СЕ представляет собой 32-разрядную объектно-ориентированную многозадачную ОС, имеет встроенные функции энергосбережения. Версия Windows СЕ 3.0 (2000) приближается по своим возможностям к системам реального времени. Основная часть этой компактной ОС записана в перепрограммируемое ПЗУ портативных компьютеров. Windows NT 5.0 или Windows 2000 — полностью 32-разрядная ОС с приоритетной многозадачностью, улучшенной реализацией работы с памятью и изначально проектировалась со средствами обеспечения надежности, защиты и управления. Windows 2000 выпускается в четырех вариантах: Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server и Windows 2000 DataCenter Server. Эти версии отличаются количеством входящих в поставку служб и программ, степенью поддержки аппаратного обеспечения.

Операционная система OS/2 (Operating system/2) является однопользовательской многозадачной ОС, односторонне (MS DOS —> OS/2) программно совместимой с MS DOS и предназначенной для работы с МП 80386 и выше (ПК IBM PC и PS/2). OS/2 может одновременно выполнять до 16 программ (каждая из них в своем сегменте памяти), но среди них только одну, подготовленную для MS DOS.

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

Требования к современным операционным системам

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

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

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

3. Совместимость. Существует несколько «долгоживущих» популярных опера­ционных систем (разновидности UNIX, MS-DOS, Windows, Windows NT, OS/2). Поэтому пользователям при переходе с одной системы на другую, очень при­влекательна возможность запуска в новой среде привычно­го приложения. Совместимость ОС — наличие средств для выполнения прикладных про­грамм, написанных для других ОС. Есть совместимость на уровне двоичных кодов, исходных текстов, поддержки пользовательских интер­фейсов других ОС.

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

5. Безопасность. Современная ОС должна защищать данные и другие ресурсы вычислительной системы от несанкционированного доступа. Для этого, она должна как минимум иметь средства: аутентификации — определения легальности пользователей; автори­зации — предоставления легальным пользователям дифференцированных прав доступа к ресурсам; аудита — фиксации всех «подозрительных» для безопас­ности системы событий. Особенно важно это для сетей, где к задаче контроля доступа добавляется задача защиты передаваемых дан­ных.

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

ТЕМА 4. ТЕХНОЛОГИЯ РАБОТЫ С ЭЛЕКТРОННЫМИ ТАБЛИЦАМИ. ОСНОВЫ ПРАВОВОЙ СТАТИСТИКИ

ЛЕКЦИЯ: ОСНОВЫ ПРАВОВОЙ СТАТИСТИКИ

1. Понятие и содержание статистического исследования

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

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

В статистическом исследовании социальных явлений можно выделить четыре следующие стадии:

1) статистическое наблюдение;

2) систематизация (классификация) собранного материала и

вычисление обобщающих показателей;

3) выявление тенденций, и взаимосвязей в совокупности собранных фактов.

Смотрите так же:  Заявление на получение 20 тысяч из материнского капитала бланк