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