Открытость и безопасность операционных систем.
Принцип открытости
? Открытая операционная система доступна для анализа как пользователям, так и системным специалистам, обслуживающим вычислительную систему. Необходимо, чтобы можно было легко внести дополнения и изменения, если это потребуется, не нарушая целостности системы.
? Этот принцип иногда трактуют как расширяемость системы.
? К открытым операционным системам прежде всего следует отнести UNIX-системы.
Принцип обеспечения безопасности вычислений
? Правила безопасности определяют свойства:
- защита ресурсов одного пользователя от других,
- установление квот по ресурсам для предотвращения захвата одним пользователем всех системных ресурсов. ? Для обеспечения защиты информации от несанкционированного доступа чаще всего используется механизм учетных записей. Он предполагает проведение аутентификации и aвторизации пользователя.
? Во многих современных операционных системах гарантируется степень безопасности данных, соответствующая уровню С2 в системе стандартов США.
? Основы стандартов в области безопасности были заложены «Критериями оценки надежных компьютерных систем» (Оранжевая Книга).
? Иерархия уровней безопасности, приведенная в Оранжевой Книге, помечает низший уровень безопасности как D, а высший – как А:
? В класс D попадают системы, оценка которых выявила их несоответствие требованиям всех других классов.
? Основные свойства С-систем: наличие подсистемы учета событий, связанных с безопасностью, и избирательный контроль доступа.
? Системы уровня В основаны на помеченных данных и распределении пользователей по категориям, то есть реализуют мандатный контроль доступа.
? Уровень А требует в дополнение ко всем требованиям уровня В выполнения доказательства соответствия системы требованиям безопасности.
Семейство операционных систем UNIX
Проект системы UNIX (Uniplex Information and Computing Services) был создан сотрудниками лаборатории Bell Labsфирмы AT&T К.Томпсоном и Д. Ритчи более 20 лет назад. Разработанная ими ОС была реализована на ассемблере. Изначально сотрудник Bell LabsБ. Керниган назвал эту систему «UNICS». Однако скоро ее стали называть сокращенно «UNIX».
В 1973 г. Д. Ритчи разработал язык программирования высокого уровня С (Си), и скоро ОС UNIX заново переписали на этом языке. После публикации Д. Ритчи и К. Томпсона в 1974 г. в журнале САСМсистему UNIX стали применять повсеместно.
Главной проблемой ОС семейства UNIX является несовместимость различных версий. Попытки стандартизации версий UNIX закончились неудачей, так как наибольшее распространение получили две несовместимые версии этой системы: линия фирмыАТ&Т –UNIX System V и линия университета Berkeley –UNIX BSD. Многие фирмы, основываясь на этих версиях, разработали свои варианты UNIX: SunO• и Solaris фирмы Sun Microsystems,AIX фирмы IBM,UnixWare фирмы Novellи др.
Одна из последних версий UNIX System V Release 4 собрала в себе лучшие черты линий UNIX System V и UNIX BSD, но данная разновидность системы является незавершенной, так как в ней отсутствуют системные утилиты, необходимые для успешного использования ОС.
Общими чертами для любой ОС UNIX считаются:
1) многопользовательский режим со способом защиты данных от несанкционированного доступа;
2) реализация мультипрограммной обработки в режиме разделения времени, которая основана на применении алгоритмов вытесняющей многозадачности; повышение уровня мультипрограммирования;
3) унификация операций ввода-вывода на базе расширенного использования понятия «файл»;
4) иерархическая файловая система, которая образует единое дерево каталогов независимо от числа физических устройств, используемых для размещения файлов;
5) переносимость системы, которая осуществляется за счет написания ее основной части на языке С;
6) разнообразные средства взаимодействия процессов, например через сеть;
7) кэширование диска с целью уменьшения среднего времени доступа к файлам.
Операционная система Linux и FreeBSD
Все операционные системы, которые базируются на Linux-ядре, можно отнести к категории, т.н. UNIX-подобных "OS". Наиболее правильное называние для таких систем, будет -GNU\Linux. По отдельности, всевозможные виды "ОС", созданных на базовой основе Linux-ядра, имеют общепринятое название - дистрибутив. Общее количество современных дистрибутивов Линукс, исчисляется трехзначным числом, по одной из формулировок, это более ста видов, по другой, около шестисот, точно ответить трудно. Не смотря на то, что все дистрибутивы - это есть Linux, всем им назначаются свои индивидуальные имена. Например, к GNU\Linux-дистрибутивам относятся: PCLinuxOS; Mandriva; Debian; Fedora; Ubuntu; CentOS и т.д., список просто огромнейший. Кроме того, каждый такой дистрибутив имеет собственный цикл развития, а соответственно, им присваиваются номера версий, по мере их усовершенствования, например: CentOS 5.0; CentOS 5.5; CentOS 6.0 и т.д.
Далее, для более полного представления, приведена небольшая схема, дающая понимание для всей структуры развития и возникновения GNU\Linux, а ниже, некоторые разъяснения, соответствующие размещенному порядку в схеме, из которых складывается весь аспект, сопутствующий этому развитию.
OS UNIX |
Почему так часто мы встречаем это название UNIX? Что вообще такое UNIX и почему разговаривая о Linux, всегда упоминают UNIX? Дело в том, что именно UNIX является родоначальником unix-подобных операционных систем в целом и благодаря ему был создан, как бы основной метод разработок и функциональности этих "OS". На сегодняшний день, абсолютных UNIX-систем не существует, хотя когда-то, она была уникальная и единственная. Все системы, которые ныне имеют хоть какое-то отношение к UNIX, принято называть Unix-подобными, в том числе и Линукс, о котором мы собственно и ведем весь наш разговор.
Истоки зарождения UNIX, датируются далеким тысяча девятьсот шестьдесят девятым годом, а место всех происходящих событий, штатовская фирма Bell Laboratories. Пару лет спустя, преследуя цель, сделать операционную систему не зависящей от компьютерной архитектуры, два сотрудника, входящих в общую группу программистов этого проекта, изобретают язык программирования "Си", на котором и в нынешнее время разрабатываются основополагающие разделы большего числа всех операционных систем. Примерно в течении последующих пяти лет, ведется интенсивная работа и к середине данного десятилетия UNIX получает весьма объемную среду распространения. Конечно же, это не домашние компьютеры, которых в то время просто еще не было в природе, а различные компании, университеты, организации. Кстати, в то время, UNIX распространялся совершенно бесплатно, но и в то же время, появилась первая коммерческая версия UNIX.
Следующий ряд событий, происходящих в восьмидесятых годах, трагическим образом повлиял на UNIX и главной негативной причиной последовавшим последствиям, как раз и являлся процесс коммертизацииUNIX'a. Возможность заработать большие деньги, продавая свою операционную систему, подвластна великому соблазну, поэтому огромнейшее количество, к тому моменту, фирм, занимающихся разработкой собственныхUNIX и продавая их, естественно применяли тактику закрытости исходного кода своих разработок. Таким образом, стало образовываться большое количество различных UNIX'сов, с таки же большим количеством различий между ними, а это привело к тому, что программы, предназначенные для одного UNIX'a, не могли работать на другом UNIX'e. Другими словами, такой хаос и перетягивание одеяла каждого на свою сторону, привело к полной несовместимости всех UNIX'сов между собой, что в свою очередь отрицательно сказалось на глобальном развитие UNIX в целом. Необходимо было срочно что-то менять. Решением возникших проблем, могло быть введение стандартизированных правил, что и было потом сделано, но было упущено время и ситуация зашла слишком далеко. Закрытость и недоступность исходного кода, практически свела на "нет" все усилия по исправлению возникшей неурядицы, а заключительным и плачевным финалом стал тот факт, что UNIX не смог двигаться вперед и развиваться в новом уже направлении, освоения персональных компьютеров.
GNU |
Итак, некий Ричард Столлман, в начале восьмидесятых годов, являясь сотрудником некого института, озадачился следующей возникшей проблемой, которая не появилась вдруг внезапно, а нарастала постепенно и в конце концов, его терпение лопнуло. Суть создавшейся ситуации заключалась в том, что некая лицензия некого программного обеспечения, запрещала ему производить обмен исходными кодами программ в радиусе своего же института, сотрудником коего он же и являлся. Такое положение дел, на его личный взгляд, показалось ему не справедливым и видимо не добившись никаких изменений, он вынужден был расстаться со своей работой или ему просто помогли уйти, сейчас никто точно ответить не может, да и это не важно.
Будучи человеком одаренным и не лишенным возможности мыслить гениально, в тысяча девятьсот восемьдесят третьем году, он основывает собственный проект GNU, приоритетным направлением которого, является создание операционной системы, доступной любому желающему, в любой точке своего местонахождения. Надо сказать, что идея тут же нашла одобрение и поддержку очень многих людей.
Кроме всего прочего, наряду с этим, Ричард создает собственный редактор, который реально упрощал трудоемкую работу программистов при написании программ. В последствие, он же организовывает специальный фонд на благотворительных началах, который занимался рекламированием и распространением бесплатного программного обеспечения. Но главной задачей этого фонда, было все-таки, сбор хоть каких-нибудь средств, для дальнейшего развития проекта GNU. Вплоть до начала девяностых годов, в масштабах этого проекта, было предпринято не мало телодвижений, сопутствующим результатом которых, стало воплощение в реальность разного программного обеспечения в довольно приличных объемах. Но как бы там ни было, видимо дела шли все-таки не так, как хотелось бы и в девяностом году, ядро GNU все еще не было полнофункциональным и законченным.
MINIX |
Во второй половине восьмидесятых, некий Эндрю Таненбаум изобретает Unix-подобную систему, довольно маленьких размеров, с целью обучения студентов и дает ей название Minix. Теперь, его ученики имели наглядное учебное пособие, благодаря которому могли наглядно изучать методы функционирования "ОС" и всю ее составляющую часть. Что бы дать каждому желающему бесприпятственно заниматься изучением исходных кодов, данная"ОС" была лицензирована с возможностью свободного перемещения, распространения, изменения и т.д. Огромное количество студенческого состава, прошли через эту систему, постигая процесс изучения по внутренней структуре "ОС" основываясь именно на Minix. Таким образом, эта "операционка" тоже оставила свой значительный след в истории, связанной с появлением Linux.
LINUX |
В тысяча девятьсот девяносто первом году программист Линус Торвальдс, давно вынашивая идею по созданию собственной системы, внезапно обращает свое внимание на вышеупомянутый Minix. В целом, система производит на него вполне благоприятные впечатления, однако полной удовлетворенности нет, т.к. она не соответствовала всем потребностям, которые должны были присутствовать в полноценной операционной системе, с точки зрения самого Линус Торвальдса. Вполне возможно, что именно Minixсподвигнул Торвальдса на решительные действия и уже буквально к середине года образовывается первый зародыш еще очень сырого ядра, которое по истечении определенного времени, получило и свое название в честь его создателя - Linux. Это был свободный продукт с открытым кодом, не подверженный каким-либо ограничениям. Результат такого подхода, обеспечил очень быстрое развитие системы, она молниеносно начала свое распространение и видоизменение.
Развитие GNU/LINUX |
Как было описано выше, в начале девяностых годов, проект GNU испытывал определенные трудности в области законченности своего системного ядра. Вот тут-то, для быстрого решения проблемы, ядро Linux, как нельзя кстати, оказалось в нужном месте и в нужное время. Что в итоге произошло дальше, уже не трудно догадаться самостоятельно. Время от времени этот "скелет" обрастал все новыми и новыми кусками "мяса", благодаря "пластическому" вмешательству все того же Столлмана (из GNU) и в конечном итоге превратился в полноценную cъедобную "свинятину". Далее, события начали развиваться еще куда более стремительней.GNU\Linux - моментально приобрел востребованность и уже его дальнейшей разработкой начали заниматься программисты-энтузиасты со всего мира, поддерживая связь при помощи Интернета. Ну, а там уже, пошло, поехало. Конечно же, новорожденные Linux(сы) по-началу, были довольно сложны для понимания, установки и настройки, но к сему моменту, ситуация изменена в "корне". Современные дистрибутивы, настолько стали дружелюбными по отношению к обычному пользователю, что позволяют установить себя, даже самому неподготовленному юзеру (в зависимости от выбора дистрибутива).
FreeBSD свободно-распространяемая "ОС", древний предокAT&T (Unix) в ветке BSD, зародившаяся и созданная в 1993 году в Соединенных Штатах Америки (Калифорнийский Университет г. Беркли). Существовавшая, на тот момент386BSD-система, благодаря ее пользователям, стала очень быстро набирать обороты и путем применения патчей, достаточно активно видоизменятся. Скорость роста общего патчевого пакета стремительно росла, что нечего не оставалось делать, как отделиться от 386BSD и образовать самостоятельную FreeBSD-операционную систему. Под самый "занавес", все того же 1993 года, рождается официальный "первенец", версии FreeBSD 1.0, а уже полгода спустя, т.е. в мае месяце (1994), появляется весьма удачное продолжение в виде выхода версииFreeBSD 1.1. В настоящий момент актуальной является FreeBSD 8.2 (FreeBSD 9.0-beta, тоже есть).
В отличие от Linux, в котором используется модульное ядро, FreeBSDиспользует монолит, т.е. это цельная "ОС". Другими словами, если разработкой ядра Linux занимаются одни люди, программным обеспечением другие люди, а сборкой дистрибутивов совсем другие люди, то в проектеFreeBSD, всем этим, занимается одна команда, которая, кстати на данный момент, насчитывает около 4000 чел. Именно такой подход, обеспечивает исключительную стабильность и надежность, чем собственно и объясняется популярность этой "ОС" среди определенного контингента пользователей. Кроме вышеупомянутой стабильности, FreeBSD отличается еще своей лицензией, на основе которой, можно использовать код FreeBSD, как в свободном программном обеспечении, так и в проприетарном.
Установить систему можно разными способами начиная с CD/DVD, а также используя сетевые возможности FTP; NFS. Дополнительное программное обеспечение насчитывает больше чем двадцать тысяч единиц, устанавливаемое с задействованием портов (в Linux-это репозитории, вFreeBSD-это порты). Спектр поддержки приложений разнообразен, "desktop", сервера, устройства, встраиваемое окружение. Учитывая, что BSD-программ, все-таки меньше, чем в Linux, то были предприняты меры по обеспечению максимальной совместимости с Linux, позволяющей работать с Linux-программным обеспечением, на системах BSD, причем, скоростные характеристики при использовании Linux-программ, если и уступают оригинальному BSD-обеспечению, то очень незначительно, практически это незаметно. Стоит заметить, что обратная интеграция не возможна, т.е. программы от FreeBSD на Linux работать не будут.
· Учитывая, что данная ось имеет внушительную, по количеству сотрудников, команду и ровное, стабильное развитие, система является достойным конкурентом в среде свободно-распространяемых операционных систем. Тем не менее, все BSD-системы, включая и FreeBSD, значительно менее известны, чем, скажем Linux, поэтому пока, FreeBSD можно смело относить к разряду специфических "ОС", особенно в качестве системы для домашнего пользования. Для тех, кто делает свои первые шаги в мире "UNIX"(unix-подобного), на мой взгляд, это не идеальное решение, не смотря на то, что по всем описаниям и заверениям, система легка в установке и проста в использовании. Думаю, что новичкам, следует лучше обратить внимание наLinux (это сугубо личное мнение).
12.Операционная система QNX.
QNX (произносится как "кью-эн-экс") — POSIX-совместимая операционная система реального времени, предназначенная преимущественно для встраиваемых систем. Считается одной из лучших реализаций концепции микроядерных операционных систем.
Как микроядерная операционная система, QNX основана на идее работы основной части своих компонентов, как небольших задач, называемых сервисами. Это отличает её от традиционных монолитных ядер, в которых ядро операционной системы — одна большая программа, состоящая из большого количества «частей», каждая со своими особенностями. Использование микроядра в QNX позволяет пользователям (разработчикам) отключить любую ненужную им функциональность, не изменяя ядро. Вместо этого можно просто не запускать определённый процесс.
Система достаточно небольшая, чтобы в минимальной комплектации уместиться на одну дискету, вместе с этим она считается очень быстрой и должным образом «законченной» (практически не содержащей ошибок).
QNX Neutrino, выпущенная в 2001 году, перенесена на многие платформы, и сейчас способна работать практически на любом современном процессоре, используемом на рынке встраиваемых систем. Среди этих платформ присутствуют семейства x86, MIPS, PowerPC, а также специализированные семейства процессоров, такие, как SH-4, ARM, StrongARM и xScale.
Система платная, при этом для некоммерческого использования и для обучения она предлагается бесплатно.
Наиболее ярким примером применения QNX является работа с кредитными карточками VISA во всех региональных офисах Северной Америки
Кроме применения QNX в области управления, она также успешно используется и для научных исследований: моделирования процессов, отслеживания хода экспериментов.
Cisco Systems использует оптимизированную версию микроядра QNX Neutrino в программном обеспечении IOS XR. Программный пакет IOS XR предназначен для управления коммутаторами Cisco CRS-1, обеспечивает непрерывный режим работы и поддерживает развитые функции управления терабитными коммутаторами с распределённой архитектурой.
13/
Общее представление OS/2 Warp:
Семейство ОС OS/2 Warp, созданных фирмой IBM, является одним из самых лучших ОС для ПК по очень большому числу параметров. Эти ОС появились раньше своих основных конкурентных систем, но тем не менее они не смогли стать самыми распространенными. Основная причина сложившейся ситуации заключает-ся в отсутствии широкой рекламы и системы продвижения этого продукта на рынок, хотя качество ОС было достаточно высоким.
Сегодня уже практически мало кто знает о системах OS/2. В то же время следует отметить, что фирмы, которые в свое время освоили эту систему и создали для нее соответствующее ПО, до сих пор не переходят на ныне чрезвычайно популярные ОС Windows NТ, поскольку последние требуют существенно больше системных ресурсов и при этом функциони-руют медленнее.
Warp – дословно «основа».
—————————————————————
Характеристики OS/2 Warp 4.0:
1.) вытесняющая многозадачность (preemp-tive multitasking) и поддержка DOS- и Windows-приложений;
2.) интуитивно понятный и действительно удобный объектный пользовательский интерфейс;
3.) поддержка стандарта открытого объект-ного документооборота OpenDoc;
4.) поддержка стандарта OpenGL;
5.) поддержка и встроенная разработка на языке Java;
6.) поддержка шрифтов Тrue Туре (TTF);
7.) управление голосом без предваритель-ной подготовки (технология Voice Туре);
8.) полная поддержка глобальных сетей Интернет и технологии Интранет, доступ в CompuServe (американская почтовая служба);
9.) средства построения одноранговых сетей и клиентские части для IBM LAN Server, Windows, Lantastic, Novell Netware 4.1, в том числе поддержка службы каталогов;
10.) наличие системы удаленного доступа через модемные соединения;
11.) Mobile File System для поддержки мобильных пользователей;
12.) стандарт автораспознавания аппарат-ных устройств Plug-and-Play;
13.) набор офисных приложений;
14.) полная MultiMedia-поддержка, включаю-щая систему работы с видеокамерой, расширенную систему помощи WагрGuidе.
Причем наиболее заманчивы: удобная и надежная среда при работе с базами данных, возможность работы в сетях, орга- низованной как клиентское рабочее место при взаимодействии с большими системами.
—————————————————————
Чрезвычайно важным для пользователей является тот факт, что компания IBM для всех версий своей ОС регулярно выпускает пакеты (во много раз чаще, нежели microsort) обновления (FixPak). Эти пакеты исправляют обнаруженные ошибки, а также вносят новые функции.
Ядро OS/2 предоставляет многие базовые сервисные функции API, обеспечивает под-держку файловой системы, управление памятью и имеет диспетчер аппаратных прерываний.
В ядре виртуальных DOS -машин (VDM-ядре) осуществляется эмуляция DOS и про-цессора 8086, а также управление VDM. Драйверы виртуальных устройств обеспе-чивают уровень аппаратной абстракции.
Драйверы физических устройств напрямую взаимодействуют с аппаратурой.
—————————————————————
Модуль реализации механизмов виртуаль-ной памяти в ядре OS/2 поддерживает большие, постраничные, разбросанные ад-
ресные пространства, составленные из объектов памяти.
Каждый объект памяти управляется так называемым «пейджером» – задачей вне ядра, обеспечивающей резервное хранение страниц объекта памяти.
Адресные пространства управляются отображением или размещением объектов памяти внутри них. Ядро управляет защитой памяти и ее распределением на основе объектов памяти абстрактным образом вне зависимости от каких-либо конкретных аппаратных средств трансляции процесс-сорных адресов.
—————————————————————
Ядро управляет средами исполнения для программ, обеспечивающих выполнение множественных заданий и потоков. Каждое задание имеет свое собственное адресное пространство или отображение. Оно назначает объекты памяти, которые задание отобразило на диапазон адресов внутри адресного пространства. Задание также является блоком размещения ресурсов и защиты, при этом заданиям придаются возможности и права доступа к средствам межпроцессного взаимодействия системы. Для поддержки параллельного исполнения с другой программой в пределах одного адресного пространства ядро отделяет среду исполнения от действительно идущего потока инструкций.
—————————————————————
Система межпроцессного взаимодействия обеспечивает базовый механизм, позволяю-щий потокам работать в различных зада-ниях для связи друг с другом. Система межпроцессного взаимодействия поддержи-вает надежную доставку сообщений на порты. Порты представляют собой защищенные каналы между заданиями.Каждому заданию, использующему порт, приписывается набор прав на этот порт. Права могут быть различными для разных заданий. Только одно задание может получать данные по какому-либо порту.
—————————————————————
Особенности интерфейса OS/2 Warp:
В OS/2 Warp в качестве стандартной графической оболочки используется среда WPS (Workplace Shell), организованная более логично и удобно, чем известный Windows интерфейс. Оболочка Workplace Shell основана на мощной системно-объектной модели SOM IBM-технологии, специально разработанной для решения таких проблем, как жесткая привязка объектов к их клиентам и необходимость использования одного и того же языка программирования.