Создание ОС Windows. Структура ОС Windows

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

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

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

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

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

По числу одновременно выполняемых задач выделяют ОС однозадачные (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 относится в первую очередь сравнительно небольшой объем программных приложений, наработанных к настоящему времени.

Операционные системы семействаWindows представляет собой 32-разрядные операционные системы, обеспечивающую многозадачную и многопоточную обработку приложений. Они поддерживает удобный графический пользовательский интерфейс, возможность работы в защищенном режиме, совместимость с программами реального режима и сетевые возможности. В Windows реализована технология поддержки самонастраивающейся аппаратуры Plug and Play, допускаются длинные имена файлов и обеспечиваются повышенные характеристики устойчивости.

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

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

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

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

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



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

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

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

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

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

В 90-е годы практически все ОС, занимающие заметное место на рынке стали сетевыми. ОС получили средства для работы со всеми основными технологиями локальных (Ethernet, Fast Ethernet, Token Ring, FDDI) и глобальных (ISDN, ATM) сетей. Особое внимание в течение последнего десятилетия уделялось корпоративным сетевым операционным системам. Они отличаются способностью хорошо и устойчиво работать в крупных сетях, которые характерны для крупных предприятий, способностью беспроблемно работать, на различных аппаратных платформах. Тройка лидеров в классе корпоративных ОС - это Novell NetWare 4-х и 5.0, Microsoft Windows NT 4.0 и Windows 2000, а также UNIX-системы различных производителей аппаратных платформ.

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

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

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

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

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

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

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

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

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

Выводы

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

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

Прообразом современных операционных систем явились мониторные системы середины 50-х, которые автоматизировали действия оператора по выполнению пакета заданий

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

С середины 70-х началось массовое использование UNIX, уникальной для того времени ОС, которая сравнительно легко переносилась на различные типы компьютеров.

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

В 90-е годы практически все ОС, занимающие заметное место на рынке стали сетевыми. ОС получили средства для работы со всеми основными технологиями локальных (Ethernet, Fast Ethernet, Token Ring, FDDI) и глобальных (ISDN, ATM) сетей.

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

Модуль 3 .

СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА

Лекция 2. Операционная система Windows

Лекция 2. Операционная система Windows. 3

Особенности операционных систем Windows. 3

Преимущества приоритетной многозадачности и многопоточности. 3

Технология Plug-and-Play. 4

Графический пользовательский интерфейс. 5

Концепция Windows XP. 5

Пользовательский интерфейс Windows XP. 7

Основные элементы экранного интерфейса. 7

Меню Пуск. 10

Панель задач. 15

Ярлыки для программ, файлов и папок. 19

Запуск программ.. 20

Начало и завершение работы Windows XP. 20

Окна в системе Windows. 22

Окно приложения и окно документа. 22

Диалоговое окно. 23

Управление окнами. 24

Дополнительные возможности Windows XP. 26

Работа с компакт-дисками. 26

Работа с цифровыми фотографиями. 28

Справочная система Windows XP. 29

Поисковая система Windows XP. 31

Встроенные приложения Windows XP. 34

Программа Калькулятор. 35

Графический редактор Paint 37

Текстовые редакторы Блокнот и WordPad. 39

Проигрыватель Windows Media. 40

Создание слайд-фильма с помощью Windows Movie Maker. 43

Особенности операционных систем Windows

Операционные системы семейства Windows, начиная с версии Windows 95, имеют общие особенности, ключевыми из которых являются:

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

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

· совместимость с существующими приложениями MS-DOS и предыдущих версий Windows, поддержка любого оборудования и драйверов устройств, сетевая совместимость с другими сетевыми операционными системами (далее – ОС).

Рассмотрим основные принципы и технологии Windows более подробно.

Преимущества приоритетной многозадачности и многопоточности

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

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

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

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

В Windows для повышения эффективности системы используется также принцип многопоточности .

Многопоточность - это особый механизм, предусмотренный для 32-разрядных приложений, позволяющий создавать и выполнять несколько потоков в одном приложении. Поток (thread) - часть программы, которой может быть выделено процессорное время и доля ресурсов наряду с другими частями программы для одновременного выполнения. Например, текстовый редактор, состоящий из нескольких потоков, способен существенно увеличить скорость обработки отдельных операций и упростить работу пользователя: один поток может управлять вводом текста с клавиатуры и отображением его на экране дисплея, другой одновременно выполнять какую-то фоновую операцию, например, проверку орфографии, а третий распечатывать документ на принтере.

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

Технология Plug-and-Play

Технология Plug-and-Play («включай и работай»), которая используется в Windows, позволяет без ручной настройки подключать новые устройства к ЭВМ, например, принтер или лазерный проигрыватель. Она ориентирована на поддержку любого типа устройств, включая мониторы, видеоплаты, принтеры, звуковые карты, модемы, приводы CD-ROM, различные контроллеры жестких дисков.

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

Драйверы (driver – шофер, водитель) – системные программы, обеспечивающие работу принтеров, дисководов, дисплеев, клавиатуры и других внешних устройств ЭВМ.

Microsoft предоставляет 32-разрядные драйверы для всех основных устройств Plug-and-Play. Производители специального оборудования сами разрабатывают подобные программы. При установке устройства, которое требует наличия драйвера, отсутствующего в числе поставляемых в составе Windows, будет выдан запрос о необходимости вставить установочную дискету с нужным драйвером для этого устройства. Дополнительные устройства подключаются специальными программами-мастерами , которые либо сами распознают устройство, либо в диалоговом режиме запрашивают дополнительную информацию, благодаря чему процесс подключения устройств упрощается.

по курсу «Системное программное обеспечение»

доцента кафедры ИВТ Гродненского госуниверситета

канд. техн. наук Ливак Елены Николаевны

При подготовке лекции использовалось

«Методическое пособие

по многопользовательским многооперационным системам» (Internet -ресурс)

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

Операционные системы различаются

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

ü особенностями использованных методов проектирования,

ü типами аппаратных платформ,

ü критериями эффективности,

ü особенностями реализации сетевых решений

ü и многими другими свойствами.

Особенности алгоритмов управления ресурсами

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

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

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

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

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

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

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

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

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

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

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

  • однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);
  • многопользовательские (UNIX, Windows NT).

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

!!! Следует заметить, что не всякая многозадачная система является многопользовательской, и не всякая однопользовательская ОС является однозадачной.

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

  • невытесняющая многозадачность (NetWare, Windows 3.x);
  • вытесняющая многозадачность (Windows NT, OS/2, UNIX).

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

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

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

ОС подразделяются на поддерживающие и неподдерживающие многонитевость.

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

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

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

Мультипроцессирование приводит к усложнению всех алгоритмов управления ресурсами.

В современных ОС введены функций поддержки многопроцессорной обработки данных. Такие функции имеются в операционных системах Solaris 2.x фирмы Sun, Open Server 3.x компании Santa Crus Operations, OS/2 фирмы IBM, Windows NT фирмы Microsoft и NetWare 4.1 фирмы Novell.

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

Асимметричная ОС целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам.

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

Замечание. Мы рассмотрели характеристики ОС, связанные с управлением только одним типом ресурсов - процессором.

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

ЗАДАНИЕ. Самостоятельно попытаться классифицировать ОС по особенностям реализации подсистем управления другими ресурсами.

Особенности аппаратных платформ

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

По типу аппаратуры различают операционные системы

· персональных компьютеров,

· мини-компьютеров,

· мейнфреймов,

· кластеров

· и сетей ЭВМ.

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

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

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

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

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

Критерии эффективности ОС

Мультипрограммирование применяется для повышения эффективности вычислительной системы.

Эффективность же может пониматься как

§ общая пропускная способность вычислительной системы;

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

§ реактивность системы – то есть способность системы выдерживать заранее заданные (возможно, очень короткие) интервалы времени между запуском программы и получением результата.

В зависимости от выбранного критерия эффективности операционные системы делятся на:

§ системы пакетной обработки (например, OC EC),

  • системы разделения времени (UNIX, VMS),
  • системы реального времени (QNX, RT/11).

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

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

Схема функционирования систем пакетной обработки данных :

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

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

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

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

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

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

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

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

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

Каждой задаче выделяется только квант процессорного времени,

Þ ни одна задача не занимает процессор надолго, и время ответа оказывается приемлемым.

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

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

1)на выполнение принимается каждая запущенная пользователем задача, а не та, которая "выгодна" системе,

2)увеличивается время работы, так как выполняется более частое переключение процессора с задачи на задачу.

Таким образом, критерием эффективности систем разделения времени является не максимальная пропускная способность, а удобство и эффективность работы пользователя.

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

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

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

Это время называется временем реакции системы, а соответствующее свойство системы - реактивностью.

Для этих систем мультипрограммная смесь представляет собой фиксированный набор заранее разработанных программ, а выбор программы на выполнение осуществляется исходя из текущего состояния объекта или в соответствии с расписанием плановых работ.

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

Особенности архитектуры ОС

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

К базовым концепциям относятся:

· способы построения ядра ОС;

· построение на базе ООПодхода;

· наличие нескольких прикладных сред;

· распределенная организация ОС.

По способам построения ядра ОС подразделяются на

  • монолитные (Windows , Linux – можем сами собрать ядро, включив в него модули и драйверы, которые считаем целесообразным включить);
  • микроядерные (QNX ).

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

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

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

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

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

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

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

Многие современные операционные системы поддерживают одновременно прикладные среды MS-DOS, Windows, UNIX (POSIX), OS/2 или хотя бы некоторого подмножества из этого популярного набора. Концепция множественных прикладных сред наиболее просто реализуется в ОС на базе микроядра.

Распределенная организация операционной системы позволяет упростить работу пользователей и программистов в сетевых средах.

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

mob_info