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

Перспективы операционных систем и сетей

Показывать лекцию целиком

Презентацию к данной лекции Вы можете скачать здесь.

Введение

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

Операционные системы других крупных фирм

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

  • IBM – в 1960-х – 1970-х гг. гг. разработала OS IBM 360 / 370; затем – ОС для персональных компьютеров OS/2; в настоящее время наиболее современными ОС этой фирмы являются z/OS и z/VM;
  • Apple – с начала 1980-х гг. развивает семейство ОС MacOS, характеризующееся улучшенным графическим пользовательским интерфейсом (см. раздел MacOS );
  • Oracle / Sun – c начала 1980-х гг. фирма Sun развивает ОС Solaris, развитие UNIX (см. раздел Solaris );
  • Hewlett-Packard – развивает собственный диалект UNIX – систему HP/UX (см. раздел HP-UX );
  • Novell – одна из ведущих фирм в области сетевых технологий; развивает семейство сетевых операционных систем: NetWare ; в настоящее время - Open Enterprise Server (сетевая ОС, включающая все сетевые возможности NetWare и возможности распространенного диалекта Linux - openSUSE ).
  • Это далеко не полный перечень коммерческих и исследовательских ОС, включающий сотни наименований.

    Solaris – операционная система разработки фирмы Oracle / Sun

    Она является развитием UNIX (линия Solaris 1.x – развитием диалекта UNIX BSD, линия Solaris 2.x – развитием диалекта UNIX ATT SVR4). Автор имеет 10-летний опыт работы в системе Solaris, которая, по нашему личному опыту, весьма удобна и надежна и имеет удобные инструменты разработки программ. В различных разделах курса мы уже касались многих особенностей Solaris, таких, как поддержка многопоточности. Аппаратные платформы, поддерживаемые ОС Solaris: SPARC, x86, IA-32 и x64. В 1990-х гг. многие фирмы-пользователи предпочитали использовать именно Solaris как серверную ОС, а в качестве серверов – компьютеры SPARC фирмы Sun. Важным преимуществом Solaris является используемое в этой системе семейство оптимизирующих компиляторов Sun Studio (C, C++, Fortran), в разработке которых в 1990-х гг. автор принимал активное участие. В настоящее время компиляторы Sun Studio работают также на ОС Linux. Весьма интересным и мощным инструментом, доступным в системе Solaris, является отладчик распределенных приложений DTrace. Новая файловая система ОС Solaris - ZFS (Zetabyte File System поддерживающая большие объемы файлов и возможность криптования информации в файлах с целью ее защиты. Система Solaris имеет мощную поддержку многопоточности и синхронизации потоков, а также удобную поддержку симметричного мультипроцессирования (SMP-архитектур). Используемые в системе Solaris графические оболочки - Common Desktop Environment (CDE), GNOME, Java Desktop ; в 1990-х гг. использовалась также графическая оболочка OpenWindows.

    Для студентов, аспирантов и преподавателей поддерживается проект OpenSolaris – академический исследовательский проект по ОС на основе открытых исходных кодов Solaris. Его результаты дадут возможность улучшить новые версии коммерческой ОС Solaris.

    MacOS

    Разработчиком MacOS является фирма Apple - законодатель мод в области GUI, начиная с 1980-х гг. Ключевой идеей MacOS с самого начала является разработка и развитие ОС только на основе графического пользовательского интерфейса - "ОС без командной строки". Аппаратная платформа MacOS – всевозможные семейства компьютеров Macintosh фирмы Apple (наиболее популярные среди рабочих станций в США), а также PowerPC – рабочая станция RISC-архитектуры, совместно разработанная Apple, IBM и HP. Диалекты (версии) MacOS различаются по своему подходу к реализации, хотя для пользователя, благодаря удобному графическому интерфейсу, эти различия могут быть незаметны. Класическая MacOS (classic MacOS) - оригинальная разработка фирмы Apple; новая линия MacOS X – развитие ОС MacOS Classic и ОС NeXTSTEP (UNIX-подобной ОС), т.е. она является UNIX-совместимой.

    HP-UX

    Разработчиком ОС HP-UX является компания Hewlett-Packard. Это UNIX-подобная 64-битовая ОС (одна из первых 64-битовых ОС в истории). Ее аппаратная платформа - рабочие станции фирмы HP. В системе HP-UX используется оригинальная .

    Современные тенденции в развитии ОС

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

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

    Поддержка новых сетевых технологий и Web-технологий. Сети и Интернет активно развиваются. Появляются новые стандарты и протоколы – IPv6, HTML 5 (для облачных вычислений) и т.д. Современные ОС развиваются в направлении поддержки всех новых сетевых технологий.

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

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

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

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

    Развитие файловых систем с целью защиты информации и значительного увеличения размера файлов (для мультимедиа). Современные требования обработки мультимедийной информации приводят к тому, что старые файловые системы (например, FAT) оказываются недостаточными для хранения мультимедийных файлов. Например, максимальный размер файла в системе FAT – 4 гигабайта – легко может быть превышен при переписи на компьютер цифровой видеопленки длительностью 10-15 минут. Поэтому разрабатываются новые файловые системы, допускающие хранение очень больших файлов, например, система ZFS в ОС Solaris. Другим требованием является обеспечение конфиденциальности информации, которое приводит к необходимости реализации в файловых системах возможности криптования (которая реализована, например, в файловой системе ZFS).

    ).

    Новые ОС семейства Windows

    Приведем краткий обзор возможностей новых ОС семейства Windows, не нашедших подробного отражения в курсе.

    Windows Vista имеет следующие новые возможности: новый стиль GUI (Windows Aero); встроенный инструментарий .NET Framework 3.0, обеспечивающий исполнение управляемого кода .NET; единую систему поиска информации WinFS; средства управления безопасностью приложений (в частности, запуск инсталляционных приложений только с явного согласия пользователя); подсистемы Windows Presentation Foundation (поддержка современного развитого GUI), Windows Communication Foundation (поддержка современных коммуникационных технологий с помощью сервисов); Windows Workflow Foundation (также называемая CardSpace ) – поддержка аутентификации пользователей, планирования и организации работ.

    Windows Server 2008 – наиболее современная серверная ОС семейства Windows. Она предоставляет: поддержку новой версии Интернет-протокола IPv6; улучшенную поддержку сетей; поддержку параллельного программирования; новый мощный командный процессор Windows PowerShell ; средства виртуализации и эмуляции приложений с помощью технологии Hyper-V.

    Windows 7 - наиболее новая на данный момент (2010 г.) ОС серии Windows. Она предоставляет поддержку нового вида пользовательского интерфейса - multi-touch; средства кэширования Интернет-трафика ( Branch cache ); уникальный набор фоновых рисунков рабочего стола для каждой страны; улучшенную поддержку драйверов устройств; более гибкие настройки безопасности и брандмауэра; развитие GUI-интерфейса Aero, впервые реализованного в Windows Vista.

    Новые тенденции в развитии ОС

    Проект Midori. Midori - проект Microsoft Research, который начат в начале 2000-х гг. под названием Singularity. Midori – исследовательская ОС, реализованная на управляемом коде (managed code) являющемся основой платформы .NET и обеспечивающем полный контроль типов, безопасности и др., что значительно повышает надежность и безопасность кода. Однако до Midori разработчики ОС предпочитали менее надежные, но более эффективные способы реализации ОС на языках C и C++, так что, на наш взгляд, Midori – весьма смелый эксперимент. На управляемом коде в ОС Midori реализованы, в том числе, и ядро ОС, и драйверы устройств. Midori предоставляет эффективную поддержку распараллеливания, что особенно важно при современных тенденциях развития аппаратных платформ. Для повышения безопасности выполнения приложений Midori обеспечивает их защиту на основе исполнения каждого приложения в своей отдельной "песочнице" (sandbox) Одна из основных особенностей Midori – то, что она является Интернет-ориентированной ОС. В будущем не исключен переход развития ОС фирмы Microsoft с платформы Windows на новую платформу Midori.

    Графические оболочки ОС

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

    Удобный графический пользовательский интерфейс.

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

    Поддержка новых тенденций в развитии интерфейсов – multi-touch, Tablet PC и др.

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

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

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

    Поддержка параллельных вычислений

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

  • OpenMP - прагматы для распараллеливания программ для компиляторов с различных языков;
  • MPI (Message Passing Interface) – параллельное выполнение программ, взаимодействующих с помощью передачи сообщений.
  • ОС фирмы Microsoft поддерживают стандарт OpenMP. Имеются также библиотеки MPI.NET, поддерживающие стандарт MPI, а также библиотеки ParallelFx. Фирма Microsoft выпустила специальную версию операционной системы - Windows High Performance Computing (HPC) 2008, поддерживающую параллельное программирование.

    Развитие беспроводных сетей

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

    WiMAX – региональные беспроводные сети на основе технологии Wi-Fi (беспроводной радиосвязи по стандартам IEEE.802.11) производительностью до 1 Гбит / с.

    3G – мобильная связь третьего поколения на основе стандартов CDMA и UMTS (быстродействием до 14 МБит / с); в России "первопроходцем" 3G является компания СкайЛинк; в настоящее время все провайдеры мобильной связи переходят на стандарты 3G .

    4G – новое поколение мобильных сетей связи со скоростью передачи до 1 ГБит / с, обеспечивающих также повышенное качество голосовой связи. Формально стандарт на сети 4G еще не принят, это – дело ближайшего будущего.

    Интересной тенденцией является также использование цифровых телевизионных каналов для выхода в Интернет с помощью специальных устройств set-top boxes.

    Перспективы развития ОС

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

    Тенденция к интеграции ОС (не только на уровне графических оболочек, но и на уровне общего ядра); развитие семейств ОС на основе модулей общего кода.

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

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

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

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

    Дальнейшая интеграция ОС и сетей.

    Перенос ОС и базовых инструментов в среды для облачных вычислений.

    Ключевые термины

    3G – мобильная связь третьего поколения на основе стандартов CDMA и UMTS (быстродействием до 14 МБит / с).

    4G – новое поколение мобильных сетей связи со скоростью передачи до 1 ГБит / с, обеспечивающих также повышенное качество голосовой связи.

    HP-UX – операционная UNIX-совместимая операционная система фирмы Hewlett-Packard.

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

    Midori – исследовательская ОС фирмы Microsoft Research, реализованная на управляемом коде.

    MPI (Message Passing Interface) – стандарт параллельного выполнения программ, взаимодействующих с помощью передачи сообщений.

    OpenMP - механизм и стандарт распараллеливания программ путем указания специальных прагматов для компиляторов.

    Solaris – операционная система фирмы Oracle / Sun.

    Краткие итоги

    Операционные системы, кроме Windows и Linux, подробно рассмотренных в курсе, разрабатываются многими другими крупными фирмами: IBM (z/OS); Apple (MacOS); Oracle / Sun (Solaris); Hewlett-Packard (HP-UX); Novell (NetWareсетевая ОС).

    ОС Solaris – UNIX-подобная система, работающая на платформах SPARC и x86. Ее наиболее важные возможности – семейство оптимизирующих компиляторов Sun Studio; отладчик распределенных приложений DTrace; файловая система ZFS с поддержкой файлов очень большого объема и криптованием информации; развитая поддержка многопоточности и симметричного мультипроцессирования. Используемые графические оболочки: CDE, KDE, GNOME, Java Desktop. Академический проект OpenSolaris обеспечивает доступ к исходному коду Solaris с исследовательскими и учебными целями.

    MacOS – ОС фирмы Apple, работающая на компьютерах Macintosh. Она характеризуется развитым GUI (ОС без командной строки). Ее диалекты – Classic Mac OS (фирмы Apple) и MacOS X – гибрид классической MacOS и ОС типа UNIX.

    HP-UX – UNIX-подобная ОС фирмы Hewlett-Packard. Ее особенность – использование виртуальной файловой системы Vx-Fs (см. ).

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

    Новые ОС семейства Windows – Windows Vista, Windows Server 2008, Windows 7. В лекции приведено краткое описание их новых возможностей в части GUI, поддержки сетей, безопасности и др.

    Проект Midori – проект Microsoft Research по разработке исследовательской ОС на управляемом коде (с повышенной надежностью). На управляемом коде написаны даже ядро и драйверы. Midori – Интернет-ориентированная ОС, которая в будущем может стать основой для развития нового семейства ОС фирмы Microsoft.

    Каждая ОС имеет графическую оболочку, основные возможности которой следующие: Удобный графический пользовательский интерфейс; Возможность выполнить любые системные настройки с помощью GUI; Поддержка новых тенденций в развитии интерфейсов – multi-touch, Tablet PC и др. Имеется тенденция к унификации графических оболочек для различных ОС (CDE, KDE, GNOME). Однако, на наш взгляд, изучение и использование только графических оболочек ОС для системных программистов недостаточно. Необходимы хорошие знания командных языков и конфигурационных файлов.

    Современные ОС поддерживают параллельные вычисления. Например, новые версии Windows поддерживают стандарты параллельных вычислений OpenMP и MPI. Microsoft выпустила специальную ОС для поддержки параллельных вычислений – Windows 2008 HPC.

    Развиваются беспроводные сети: Wi-MAX, 3G, 4G. Также используются цифровые телевизионные каналы как способ подключения к Интернету. Это находит отражение и в ОС.

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

    ОС остаются активно развивающимся направлением, одним из наиболее интересных в области системного программирования.

    Набор для практики

    Вопросы

  • Что такое z/OS?
  • Что такое MacOS?
  • Что такое Solaris?
  • Что такое HP-UX?
  • Что такое NetWare?
  • Каковы основные возможности ОС Solaris?
  • Каковы основные особенности MacOS?
  • Каковы основные особенности HP-UX?
  • Каковы современные тенденции в развитии ОС?
  • Каковы новые ОС семейства Windows и их новые возможности?
  • Что такое Midori?
  • Каковы возможности графических оболочек ОС?
  • Какие стандарты параллельных вычислений поддерживают современные ОС?
  • Какие новые виды беспроводных сетей находят распространение в настоящее время?
  • Каковы перспективы развития ОС?
  • Упражнения

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

  • Обзор возможностей новых ОС семейства Windows (реферат).
  • Обзор возможностей ОС Solaris (реферат).
  • Обзор возможностей MacOS (реферат).
  • Современные тенденции и перспективы развития ОС (реферат).
  • Сравнение возможностей основных современных ОС (Windows, Linux, Solaris, MacOS и др.) и их графических оболочек (курсовая работа).
  • Заключение

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

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

    8 лабораторных работ курса по ОС Windows XP, Windows Vista, Windows Server 2008, Windows 7, Windows Mobile, Windows Azure, Windows Research Kernel, Linux дали Вам основу для приобретения практических навыков и опыта использования этих систем.

    Для дальнейшего изучения рекомендуем публикации из списка литературы.

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

    Желаем Вам активного освоения и продуктивного использования современных операционных систем с помощью представленного курса.

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

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

    Желаем Вам больших профессиональных успехов!

    Вернуться к учебному плану