Смекни!
smekni.com

Создание офисной сети под управлением Windows Serwer 2003 (стр. 5 из 14)

UNIX способствовала широкому распространениюрегулярных выражений, которые были впервые реализованы в текстовом редактореedдля UNIX. Возможности, предоставляемые UNIX-программам, стали основой стандартных интерфейсов операционных систем (POSIX).

Широко используемый в системном программировании языкСи, созданный изначально для разработки UNIX, превзошёл UNIX по популярности. Язык Си был первым «веротерпимым» языком, который не пытался навязатьпрограммистутот или иной стиль программирования. Си был первым высокоуровневым языком, предоставляющим доступ ко всем возможностямпроцессора, таким какссылки,таблицы,битовые сдвиги,приращенияи т. п. С другой стороны, свобода языка Си приводила к ошибкампереполнения буферав таких функциях стандартной библиотеки Си, какgetsиscanf. Результатом стали многие печально известные уязвимости, например, та, что эксплуатировалась в знаменитомчерве Морриса.

Первые разработчики UNIX способствовали внедрению принципов модульного программирования иповторного использованияв инженерную практику.

UNIX предоставлял возможность использования протоколовTCP/IPна сравнительно недорогих компьютерах, что привело к быстрому ростуИнтернета. Это, в свою очередь, способствовало быстрому обнаружению нескольких крупных уязвимостей в системе безопасности, архитектуре и системных утилитах UNIX.

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

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

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

· Файловая система древовидная, чувствительная к регистру символов в именах, очень слабые ограничения на длину имён и пути.

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

· Командная строка находится в адресном пространстве запускаемого процесса, а не извлекается системным вызовом из процесса интерпретатора команд (как это происходит, например, вRSX-11).

· Понятие «переменных окружения».

· Запуск процессов вызовом fork(), то есть возможность клонирования текущего процесса со всем состоянием.

· Понятия stdin/stdout/stderr.

· Ввод/вывод только через дескрипторы файлов.

· Традиционно крайне слабая поддержка асинхронного ввода/вывода, по сравнению с VMS и Windows NT.

· Интерпретатор команд есть обыкновенное приложение, общающееся с ядром обыкновенными системными вызовами (вRSX-11иVMSинтерпретатор команд выполнялся как специальное приложение, специальным образом размещенное в памяти, пользующееся специальными системными вызовами, поддерживались также системные вызовы, дающие возможность приложению обращаться к своему родительскому интерпретатору команд).

· Команда командной строки есть не более чем имя файла программы, не требуется специальная регистрация и специальная разработка программ как команд (что являлось обычной практикой вRSX-11,RT-11).

· Не принят подход с программой, задающей пользователю вопросы о режимах своей работы, вместо этого используются параметры командной строки (вVMS,RSX-11,RT-11программы работали также с командной строкой, но при её отсутствии выдавали запрос на ввод команд).

· Пространство имён устройств на диске в каталоге /dev, поддающееся управлению администратором, в отличие от подхода Windows, где это пространство имен размещается в памяти ядра, и администрирование этого пространства (например, задание прав доступа) крайне затруднено из-за отсутствия его постоянного хранения на дисках (строится каждый раз при загрузке).

· Широкое использование текстовых файлов для хранения настроек, в отличие от двоичной базы данных настроек, как, например, в Windows.

· Широкое использование утилит обработки текста для выполнения повседневных задач под управлением скриптов.

· «Раскрутка» ОС после загрузки ядра путём исполнения скриптов стандартным интерпретатором команд.

· Широкое использование конвейеров (pipe).

· Все процессы, кроме init, равны между собой, не бывает «специальных процессов».

· Адресное пространство делится на глобальное для всех процессов ядро и на локальную для процесса части, нет «групповой» части адресного пространства, как вVMSи Windows NT, как и возможности загрузки туда кода и его исполнения там.

· Использование двух уровней привилегий процессора вместо четырёх вVMS.

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

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

· Концепция сигнала уникальна для UNIX, и крайне сложна в переносе на другие ОС, такие, как Windows.

Стандарты

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

С этой целью ещё в1980была создана пользовательская группа/usr/group. Самые первые стандарты были разработаны в 1984—1985 гг.

Одним из самых первых стандартов стала спецификация System V Interface Definition (SVID), выпущенная UNIX System Laboratories (USL) одновременно сUNIX System VRelease 4. Этот документ, однако, не стал официальным.

Наряду с версиями UNIXSystem Vсуществовало направление UNIXBSD. Для того, чтобы обеспечить совместимостьSystem VиBSD, были созданы рабочие группыPOSIX(PortableOperatingSystemInterface for UNIX). Существует много стандартов POSIX, однако наиболее известным является стандартPOSIX1003.1-1988, определяющийпрограммный интерфейс приложений(API, Application Programming Interface). Он используется не только в UNIX, но и в других операционных системах. В1990он был принят институтомIEEEкак IEEE 1003.1-1990, а позднее — ISO/IEC 9945.

В настоящее время наиболее важными являются следующие стандарты:

· POSIX 1003.2-1992, определяющий поведение утилит, в том числе командного интерпретатора;

· POSIX 1003.1b-1993, дополняющий POSIX 1003.1-1988, — определяет поддержку систем реального времени;

· POSIX 1003.1c-1995, дополняющий POSIX 1003.1-1988, — определяет нити (threads), известные также как pthreads.

Все стандарты POSIX объединены в документе IEEE 1003.

В начале 1990-х годовThe Open Groupпредложила другой, похожий на POSIX стандарт —Common API Specification, или Spec 1170. Стандарт приобрёл большую популярность, чем POSIX, поскольку был доступен бесплатно, в то время как IEEE требовало немалую плату за доступ к своему стандарту.

В1998 годубыли начаты работы по объединению данных стандартов. Благодаря этому в настоящее время данные стандарты почти идентичны. Совместный стандарт называется Single UNIX Specification Version 3 и доступен бесплатно в интернете.[4]

В целях совместимости, несколько создателей UNIX-систем предложили использоватьELF — формат системSVR4для двоичных и объектныхфайлов. Единый формат полностью обеспечивает соответствие двоичных файлов в рамках одной компьютерной архитектуры.

Структура каталогов некоторых систем, в частности,GNU/Linux, определена в стандартеFilesystem Hierarchy Standard. Однако, во многих отношениях этот тип стандарта является спорным, и он, даже внутри сообщества GNU/Linux, далеко не универсален.

1.2.2 OC NetWare

Novell была одной из первых компаний, которые начали создавать ЛВС.

Она производила как аппаратные средства, так и программные, однако в последнее время фирма Novell сконцентрировала усилия на программных средствах ЛВС.

Далее приводятся некоторые характеристики программных продуктов NetWare:

· В среде NetWare способно работать большее количество приложений, чем в любой другой ЛВС.

· ОС NetWare способна поддерживать рабочие станции, управляемые DOS, DOS и Windows, OS/2, UNIX, Windows NT, Mac System 7 и другими ОС.

· ЛВС NetWare может работать с большим количеством различных типов сетевых адаптеров, чем любая другая операционная система. Для достижения поставленных целей вы можете выбрать аппаратные средства от множества разных поставщиков. С NetWare можно использовать ARCnet, EtherNet, Token Ring или практически любой другой тип сетевого адаптера.

· ЛВС NetWare может разрастаться до огромных размеров.

· ЛВС NetWare надежно работает.

· Средства защиты данных, предоставляемые NetWare, более чем достаточны для большинства ЛВС.

· NetWare допускает использование более, чем 200 типов сетевых адаптеров, более чем 100 типов дисковых подсистем для хранения данных, устройств дублирования данных и файловых серверов.

Фирма Novell имеет контракты о поддержке ОС NetWare с наиболее крупными и мощными из независимых организаций, таких как Bell Atlantic, DEC, Hewlett-Packard, Intel, Prime, Unisys и Xerox. Рассмотрим подробнее структуру данной ОС.

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

Имеется три версии ОС NetWare. Версия 2.2 может работать на компьютере 80286 (или более поздних моделях), используемом в качестве файлового сервера. При покупке ОС необходимо приобретать лицензию на число пользователей (5, 10, 50, 100). Версии ОС NetWare 3.12 и более новая 4.0 ориентированы на 32 разрядные шинные архитектуры и процессоры 80386, 80486 или Pentium. Есть также варианты сетевой ОС NetWare, предназначенные для работы под управлением многозадачных, многопользовательских операционных систем OS/2 и UNIX. Версию 3.12 ОС NetWare можно приобрести для 20, 100 или 250 пользователей, а версия 4.0 имеет возможность поддержки до 1000 пользователей.

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

Защита данных в ОС NetWare

Система защиты данных в ЛВС NetWare включает в себя следующие меры: