|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Обзор операционных систем
Для сравнения операционных систем нужны критерии оценки их качества. Критерии оценки таких сложных программ, как ОС, многочисленны, взаимосвязаны и зачастую противоречивы: улучшение одних вызывает ухудшение других, необходимы компромиссы. Главным критерием, как и для любого товара, является соотношение цена/качество. В данном случае качество определяется возможностью и эффективностью использования операционной системы для решения нужных задач, например, выполнения прикладных программ (приложений). Цена зависит от необходимых для ОС ресурсов: типа и производительности процессора, объема требуемой оперативной и дисковой памяти и т. п., стоимости самой ОС и, наконец, затрат на ее эксплуатацию. Эти показатели, в свою очередь, зависят от многих дополнительных критериев, в том числе: - от количества приложений, разработанных для данной ОС; - от совместимости ОС с существующими приложениями и аппаратурой; - от функциональной полноты ОС - набора выполняемых ею функций; - от имеющихся сетевых средств и др. Важную роль играет архитектура ОС. Под архитектурой системы понимается ее точное описание с точки зрения пользователя. Классический пример - архитектура часов: циферблат, стрелки и головка завода. Архитектура ЭВМ - это ее описание с точки зрения программиста: способы адресации, форматы команд и данных, система команд и т. д. Одна и та же архитектура может иметь разную реализацию, т. е. внутренний механизм, например, механические, электрические или башенные часы. Архитектура ОС включает ее пользовательский и программный интерфейс и определяет, в частности: - простоту и удобство работы пользователей; - производительность операционной системы; - надежность и защищенность ОС; - наличие и эффективность реализации многозадачности; - возможности для разработчиков приложений в виде API - интерфейса прикладного программирования (хорошие возможности для разработчиков оборачиваются и удобствами их пользователей). Производительность ОС оценивается временем прохождения заданий в системах пакетной обработки; временем ответа для диалоговых систем; временем реакции на события в системах реального времени; пропускной способностью - числом заданий, выполняемых в единицу времени; загрузкой ресурсов - долей времени, когда ресурс в работе, например, долей процессорного времени, отнимаемого у прикладных программ на накладные расходы ОС; сравнением производительности однотипных прикладных программ в разных ОС и другими показателями. Надежность и защищенность ОС включает ее устойчивость к ошибкам самой ОС, прикладных программ и пользователей; защиту от несанкционированного доступа процесса к данным и программам ОС и других процессов; обеспечение целостности и секретности информации; регулирование прав доступа к системе; защиту вычислительной системы от злоумышленников, технических аварий и стихийных бедствий; экологическую безопасность системы и т. п. Повышение защищенности ухудшает производительность ОС и ее совместимость с программами и устройствами. Это - достаточно общая закономерность. Так, например, для улучшения защиты квартир люди ставят дополнительные замки и двери, но это замедляет вход и выход. В качестве примера кратко рассмотрим характеристики нескольких распространенных операционных систем, в основном для персональных ЭВМ.
UNIX UNIX - это семейство мобильных многозадачных, многопользовательских, мультитерминальных ОС, реализованных практически на всех типах ЭВМ. В наибольшей степени удовлетворяет требованиям к открытым системам. В середине 60-х в Bell Laboratories фирмы AT&T проводились исследования и разработка одной из первых ОС – Multix. Эта ОС обогатила мировое сообщество системных программистов массой ценных идей, многие из них актуальны по сей день. Основным недостатком системы была ее чрезмерная сложность. От этой разработки через некоторое время получила начало ОС UNIX. Первоначально система была написана на языке ассемблера. Затем для написания этого ПО был разработан язык В, который оперировал машинными словами, от него перешли к абстракции машинных слов. Параллельно велась разработка языка программирования, пригодного для написания ОС, который сейчас мы знаем как язык Си. В 1973 г. ОС UNIX была переписана на язык Си. UNIX разработана коллективом из трех человек (Кен Томпсон, Деннис Ритчи, Брайан Керниган из фирмы Bell Telephon Laboratories - Bell Labs) вместе с языком C, который создавался для разработки этой мобильной ОС. Около 90% UNIX написаны на языке C, и для переноса UNIX на новую ЭВМ достаточно переписать 10% - машинно-зависимую часть, написанную на языке ассемблера. В то время это была самая маленькая ОС в мире: всего 10 тысяч строк исходного текста. Особенностью этой системы являлось то, что это была первая системная программа, написанная с использованием языка, отличного от машинного языка. Небольшой размер коллектива обеспечил концептуальное единство, что явилось важным фактором исключительного успеха обеих разработок: UNIX и языка C. Другая причина успеха в том, что оба проекта делались для себя, и поэтому разработчики точно знали, что им требуется. UNIX создавалась ими первоначально как инструментальная система для поддержки собственных разработок программного обеспечения, а потом уже стала универсальной ОС. Широкое распространение ОС UNIX получила с 1974 г., особенно в университетах, т.к. поставлялась бесплатно с исходными кодами на Си. Университеты внесли значительный вклад в улучшение системы. По дешевой лицензии фирмы Bell Labs с предоставлением исходных текстов UNIX созданы многочисленные некоммерческие и коммерческие версии разных фирм и университетов: 1. UNIX System V (AT&T, затем UNIX System Laboratories, c 1994 подразделение фирмы Novell, затем Santa Cruz Operation), 2. семейство BSD UNIX (Калифорнийский университет в Беркли, BSDI, FreeBSD, NetBSD, OpenBSD), 3. SCO UNIX (Santa Cruz Operation), 4. Novell UnixWare (Novell), 5. Interactive UNIX и Solaris (Sun Microsystems), 6. OSF/1 (Open System Foundation), 7. AIX (для рабочих станций IBM), 8. HP-UX (Hewlett-Packard), 9. Xenix (Microsoft 1980 г.) и другие. Это привело к неполной совместимости версий и потребовало больших усилий по стандартизации UNIX, результатом которых стало появление стандартов интерфейсов операционных систем и создание концепции открытых систем. В середине 80-х появились два конкурирующих стандарта: на основе версии AT&T и на основе версии BSD. В 1990 г. появились стандарты языка C и его библиотеки; стандарты POSIX: командный язык, интерфейс ОС с языками высокого уровня, интерфейс ОС с прикладными программами и др. Интересным явлением стало возникшее вокруг UNIX лицензионно чистое свободно распространяемое в исходных текстах ПО (бесплатно или за символическую сумму), в частности, широко известный проект GNU - "GNU is Not Unix" (Free Software Foundation - FSF, Ричард Столлман): ОС Hurd - разработанная в 1995 году UNIX-совместимая микроядерная ОС на основе свободно распространяемого микроядра Mach университета Карнеги-Меллон; ОС Free BSD - свободно распространяемая ОС семейства UNIX; ОС Linux - наиболее популярная в мире "молодежная" не совсем микроядерная, но очень удачно спроектированная ОС (Торнвальд Линн, университет Хельсинки) и многое другое. ОС Linux имеет макроядро, а ОС Free BSD – микроядро. У ОС Linux нет единого координатора, а у Free BSD есть координатор – университет в Беркли (Калифорния). ОС Linux бесплатная и в то же время стандартизованная система. Распространяется бесплатно по генеральной открытой лицензии GNU в рамках Фонда бесплатного программного обеспечения. Достоинства ОС Linux – универсальность и многоплатформенность: от настольного ПК до сверхмощных многопроцессорных серверов, стабильность и быстродействие, возможность эмуляции других ОС, наличие всех важнейших программных пакетов, поддержка национальных клавиатур, поддержка множества файловых систем, поддержка динамических библиотек, реализован весь спектр клиентов и услуг Интернет: FTP, telnet, SMTP, NNTP, POP3. Практически все протоколы (правила обмена в сети), на которых основан Internet были разработаны под Unix, в частности стек протоколов TCP/IP. Независимо от версий общими и привлекательными для ОС UNIX чертами являются: 1. хорошее соотношение цена/производительность; 2. простой и мощный командный язык; 3. многопользовательский режим со средствами защиты данных от несанкционированного доступа; 4. мультипрограммная обработка в режиме разделения времени, основанная на вытесняющей многозадачности, поддерживает широкий набор приложений и распределенную обработку; 5. переносимость системы за счет написания основной части на стандартизованном языке ВУ Си; 6. огромное количество мобильных прикладных программ и мобильность пользователей (они могут работать на всех ЭВМ с системой UNIX, а она имеется на всех типах ЭВМ); 7. разнообразные средства взаимодействия процессов, в том числе через сеть; 8. использование механизмов виртуальной памяти; 9. реальная многозадачность и полностью защищенная модель памяти обеспечивают высокую надежность функционирования; 10. унификация операций ввода/вывода на основе расширенного понятия «файл»; 11. независимая от устройств иерархическая файловая система, образующая единое дерево каталогов независимо от количества физических устройств, используемых для размещения файлов; Корнем дерева является так называемый корневой каталог. Узлами, отличными от листьев дерева, являются каталоги. Листьями могут быть файлы или пустые каталоги. 12. кэширование диска для уменьшения среднего времени доступа. 13. идейная простота и концептуальное единство, а также легкость освоения.
ОС UNIX имеет 4 основные компоненты: § ядро – контролирует доступ к компьютеру, распределяет ресурсы компьютера, управляет памятью, обслуживает файловую систему; § shell – это программа, которая осуществляет связь с ядром, интерпретирует и выполняет команды пользователя; § commands – внешний круг системы содержит программы и инструментальные средства, которые необходимы для работы с текстом, графикой, для написания программ, обмена информацией с другими пользователями и др. § файловая система – это набор всех файлов. Ядро считается монолитным, но можно выделить 3 основные подсистемы: § управление процессами, § управление файлами, § управление операциями ввода-вывода. Происходит пересмотр ядра UNIX, до тех пор считавшегося стандартным: OSF/1 (OSF) - микроядерная реализация интерфейса UNIX на основе микроядра Mach; похожая реализация UNIX в BSD 4.4. ОС UNIX предназначена для мультитерминальной работы. Пользователь должен зарегистрироваться в системе, обычно это делает администратор системы. Каждому зарегистрированному пользователю соответствует некоторый каталог файловой системы, который называется домашним. При входе в систему пользователь получает неограниченный доступ к своему домашнему каталогу. Возможен доступ и ко всем другим файлам, но он может быть ограничен. Администратор системы также является зарегистрированным пользователем со специальным ID и называется суперпользователем. Он имеет неограниченные права на доступ к любому файлу и на выполнение любой программы и возможность полного контроля над системой. UNIX отвечает требованиям технологии «клиент-сервер». Система многопользовательская: каждый пользователь на виртуальном компьютере со своим процессом, оперативной памятью, устройствами и файлами. Текущее состояние виртуального компьютера называется образом. Процесс – это выполнение образа. Может использоваться как в качестве сервера, так и рабочей станции. Функционирует как на персональных компьютерах, так и на мощных рабочих станциях с RISC-процессорами. Под ОС UNIX написаны мощные САПР и геоинформационные системы. Для ОС UNIX характерны многие нововведения, заимствованные другими ОС - средства межпроцессных взаимодействий для реального времени и сетей: именованные программные каналы, очереди сообщений, разделяемые сегменты и семафоры, программные гнезда (socket), потоки данных (stream), вызов удаленных процедур RPC (Remote Procedure Call), "легковесные" процессы - потоки управления (нити - thread) на общей виртуальной памяти. RPC предполагает автоматическое преобразование форматов данных при взаимодействии процессов. Традиционный способ взаимодействия пользователя с системой основан на использовании командного языка. Несколько старомодный командный интерфейс UNIX стал оборотной стороной стандартизации. Другой причиной сохранения такого интерфейса явилось некоторое пренебрежение разработчиков к этому вопросу, поскольку система предназначалась прежде всего для профессиональных программистов. Командные языки достаточно просты и мощны. Команда состоит из имени запускаемой программы и аргументов. В одной командной строке может быть несколько команд. Команды могут выполняться последовательно (;), асинхронно (&), синхронно (|, вывод первой команды подается на вход второй). Для современной ОС UNIX характерно повышение уровня интерфейса пользователя: оконные системы X Window, SunWindows, NeWS и др. Графическая среда X Window является стандартным оконным интерфейсом для OC UNIX. Для Linux наиболее популярные графические среды - Gnome (GNU Network Object Model Environment) и KDE (K Desktop Environment). ОС UNIX была реализована для беспрецедентно большого числа архитектур больших и малых ЭВМ, включая персональные, т.е. самая многоплатформенная ОС, и является самой распространенной и популярной в мире операционной системой, а ее идеи использованы во многих современных ОС. OS/2 OS/2 представляет собой разрабатываемую с 1987 г. операционную систему фирмы IBM для ее персональных компьютеров (первоначально для компьютеров PS/2) с участием до 1989 г. фирмы Microsoft, впоследствии создававшей конкурирующую систему Windows. В 1994 г. появилась имевшая большой успех OS/2 Warp (созданная раньше чем конкурирующая с ней и близкая по характеристикам Windows 95) - 32-разрядная, многозадачная, многопотоковая ОС с дружественным объектно-ориентированным интерфейсом пользователя, виртуальной памятью, динамической компоновкой программ, удачная диспетчеризация задач. Она поддерживала среду выполнения программ DOS и Windows 3.1x, совместимую с DOS и Windows файловую систему и имела широкие сетевые возможности. Это была первая реально работающая многозадачная однопользовательская ОС, полностью использующая 32-разрядную адресацию и защищенный режим процессоров Intel 386/486. В мире насчитывалось около 10 млн. официальных копий OS/2. Из-за задержек Windows 95 возник бум OS/2-приложений, как было для Windows в 1992 г. Была одной из самых лучших ОС. Например, однопроцессорная машина под управлением OS/2 Warp Server была производительнее двухпроцессорной под управлением Windows NT. Но ОС OS/2 не смогла стать самой распространенной, основная причина – законы бизнеса, а не качество самой системы. OS/2 удобна для прикладных программ с быстрой графикой, подключения к локальной сети, организации взаимодействия процессов. Поддерживает стандарт открытого объектного документооборота Open Doc, использует модель объектов SOM. С появлением Windows 95 популярность OS/2 упала. Она больше ориентирована на профессиональных программистов и конкурировала с Windows NT за ответственные корпоративные и сетевые приложения. Например, в США на основе OS/2 были построены 49% банковских систем, банкоматов и программное обеспечение военно-морского флота, она использовалась для обслуживания зимних олимпийских игр 1998 г. в Нагано. Сегодняшняя OS/2 мощная многозадачная ОС, автоматическая инсталляция, возможность выбора оптимальной конфигурации, наличие пакета приложений, аналогичных MS Office, высокая производительность, надежность, но спрос невысок. Несовместима с программами производства Microsoft. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.011 сек.) |