Сравнительная характеристика операционных систем семейства UNIX
Сравнительная характеристика операционных систем семейства UNIX
Санкт-Петербургский Государственный
Технологический Институт
(Технический Университет)
Кафедра САПРиУ
Реферат:
“Сравнительная характеристика операционных систем
семейства UNIX”
Студент:
Преподаватель: Бойкова О. Г.
Санкт-Петербург
2004
Операционная система UNIX - это многопользовательская система с
разделением времени. Начинать сеанс работы с ней нужно с сообщения о том,
кто Вы. Это не зависит от того, работаете Вы за терминалом в своем кабинете
или по коммутируемой линии связываетесь с большим узлом общего пользования.
В этом заключается одно из отличий UNIX от DOS, Windows и Macintosh -
операционных систем, в которых понятие "многопользовательский" отсутствует.
UNIX должна знать, кто Вы, чтобы выделять Вас среди десятков, сотен и даже
тысяч других пользователей.
[pic]
UNIX - одна из самых популярных в мире операционных систем благодаря
тому, что ее сопровождает и распространяет большое число компаний.
Первоначально она была создана как многозадачная система для
миникомпьютеров и мэйнфреймов в середине 70-х годов, но с тех пор она
выросла в одну из наиболее распространенных операционных систем, несмотря
на свой временами обескураживающий интерфейс и отсутствие централизованной
стандартизации. Существуют версии UNIX для многих систем, начиная от
персонального компьютера, до суперкомпьютеров, таких как Cray Y-MP.
Все пользователи ОС UNIX явно или неявно работают с файлами. Файловая
система ОС UNIX имеет древовидную структуру. Промежуточными узлами дерева
являются каталоги со ссылками на другие каталоги или файлы, а листья дерева
соответствуют файлам или пустым каталогам. Каждому зарегистрированному
пользователю соответствует некоторый каталог файловой системы, который
называется "домашним" (home) каталогом пользователя. При входе в систему
пользователь получает неограниченный доступ к своему домашнему каталогу и
всем каталогам и файлам, содержащимся в нем. Пользователь может создавать,
удалять и модифицировать каталоги и файлы, содержащиеся в домашнем
каталоге. Потенциально возможен доступ и ко всем другим файлам, однако он
может быть ограничен, если пользователь не имеет достаточных привилегий.
Командные языки, используемые в ОС UNIX, достаточно просты, чтобы новые
пользователи могли быстро начать работать, и достаточно мощны, чтобы можно
было использовать их для написания сложных программ.
ОС UNIX одновременно является операционной средой использования
существующих прикладных программ и средой разработки новых приложений.
Новые программы могут писаться на разных языках (Фортран, Паскаль, Модула,
Ада и др.). Однако стандартным языком программирования в среде ОС UNIX
является язык Си (который в последнее время все больше заменяется на Си++).
Это объясняется тем, что во-первых, сама система UNIX написана на языке Си,
а, во-вторых, язык Си является одним из наиболее качественно
стандартизованных языков.
Операционная система UNIX - это набор программ, который управляет
компьютером, осуществляет связь между вами и компьютером и обеспечивает вас
инструментальными средствами, чтобы помочь вам выполнить вашу работу.
Разработанная, чтобы обеспечить легкость, эффективность и гибкость
программного обеспечения, система UNIX имеет несколько полезных функций:
. основная цель системы - это выполнять широкий спектр заданий и
программ;
. интерактивное окружение, которое позволяет вам связываться напрямую
с компьютером и получать немедленно ответы на ваши запросы и
сообщения;
. многопользовательское окружение, которое позволяет вам разделять
ресурсы компьютера с другими пользователями без уменьшения
производительности. Этот метод называется разделением времени.
Система UNIX взаимодействует с пользователями поочередно, но так
быстро, что кажется, что взаимодействует со всеми пользователями
одновременно;
. многозадачное окружение, которое позволяет вам выполнять более
одного задания в одно и тоже время.
Система UNIX имеет 4 основных компонента:
. ядро - это программа, которая образует ядро операционной системы;
она координирует внутренние функции компьютера (такие как
размещение системных ресурсов). Ядро работает невидимо для вас;
. shell -это программа, которая осуществляет связь между вами и
ядром, интерпретируя и выполняя ваши команды. Так как она читает
ваш ввод и посылает вам сообщения, то описывается как
интерактивная;
. commands -это имена программ, которые компьютер должен выполнить.
Пакеты программ называются инструментальными средствами. Система
UNIX обеспечивает инструментальными средствами для таких заданий
как создание и изменение текста, написание программ, развитие
инструментария программного обеспечения, обмен информацией с
другими посредством компьютера;
. file system - файловая система - это набор всех файлов, возможных
для вашего компьютера. Она помогает вам легко сохранять и
отыскивать информацию.
Отличия операционной системы UNIX от других операционных систем.
Unix состоит из ядра с включенными в него драйверами и из утилит
(внешних по отношению к ядру программ). Если надо изменить конфигурацию
(добавить устройство, изменить порт или прерывание), то ядро пересобирают
(перелинковывают) из обьектных модулей.
В противоположность Unix'у Windows (если не уточняется, какая, то
имеются в виду 3.11, 95 и NT) и OS/2 при загрузке фактически на ходу
прилинковывают драйверы. При этом компактность собранного ядра и повторное
использование общего кода на порядок ниже, чем у Unix. Кроме того, при
неизменной конфигурации системы ядро Unix без переделки (потребуется
изменить только стартовую часть BIOS) может быть записан в ПЗУ и
выполняться _не_загружаясь_ в ОЗУ. Компактность кода особенно важна, т.к.
ядро и драйверы никогда не покидают физическую оперативную память, не
сводятся на диск.
Unix - самая многоплатформенная OS. WindowsNT пытается подражать ему,
но пока это плохо удается - после отказа от MIPS и POWER-PC, W'NT остались
всего на двух платформы - традиционная i*86 и DEC Alpha. Разумеется,
переносимость программ с одной версии Unix на другую ограничена.
Неаккуратно написанная программа, не учитывающая различий в реализациях
Unix, может потребовать серьезной переделки. Но все равно это на много
порядков легче, чем например перенести с OS/2 на NT.
Почему Unix?
Unix используется как в качестве как сервера, так и рабочей станции. В
номинации серверов с ним конкурируют MS WindowsNT, Novell Netware, IBM OS/2
Warp Connect, DEC VMS и операционные системы мэйнфреймов. Каждая система
имеет свою область применения, в которой она лучше других.
WindowsNT - для администраторов, которые предпочитают привычный
интерфейс экономному расходованию ресурсов и высокой производительности.
Netware - для сетей, где нужна высокая производительность файлового и
принтерного сервиса и не столь важны остальные сервисы. Главный недостаток
- на сервере Netware трудно запускать приложения.
OS/2 хороша там, где нужен "легкий" сервер приложений. Ресурсов требует
меньше чем NT, в управлении гибче (хотя в настройке может и сложнее), а
многозадачность очень хорошая. Авторизация и разграничение прав доступа не
реализованы на уровне ОС, что с лихвой окупается реализацией на уровне
приложений-серверов. (Впрочем, зачастую остальные OS делают то же самое).
Многие станции FIDOnet и BBS сделаны на базе OS/2.
VMS - мощный, ничем не уступающий Unix'ам (а во многом и превосходящий
его) сервер приложений, но только для платформ VAX и Alpha фирмы DEC.
Мэйнфреймы - для обслуживания очень большого количества пользователей
(порядка нескольких тысяч). Но работа этих пользователей как правило
организована в виде не клиент-серверного взаимодействия, а в виде хост-
терминального. Терминал же в этой паре скорее не клиент, а сервер (Мир
Internet, N3 за 1996-й год). К преимуществам мэйнфреймов надо отнести более
высокую защищенность и устойчивость к сбоям, а к недостаткам -
соответствующую этим качествам цену.
Unix хорош для квалифицированного (или желающего стать таковым)
администратора, т.к. требует знания принципов функционирования происходящих
в нем процессов. Реальная многозадачность и жесткое разделение памяти
обеспечивают высокую надежность функционирования системы, хотя в
производительности файл- и принт-сервисов Unix'ы уступают Netware.
Недостаточная гибкость предоставления прав доступа пользователей к
файлам по сравнению с WindowsNT затрудняет организацию
_на_уровне_файловой_системы_ группового доступа к данным (точнее, к
файлам), что компенсируется простотой реализации, а значит меньшими
требованиями к аппаратуре. Впрочем, такие приложения, как SQL-сервер решают
проблему группового доступа к данным своими силами.
Практически все протоколы(правила обмена информацией в сети), на
которых основан Internet, были разработаны под Unix, в частности стек
протоколов TCP/IP придуман в университете Berkeley.
Защищенность Unix при правильном администрировании ни в чем не уступает
ни Novell, ни WindowsNT.
Важным свойством Unix, которое приближает его к мэйнфреймам, является
его многотерминальность, много пользователей могут одновременно запускать
программы на одной Unix-машине. Если не требуется использовать графику,
можно обойтись дешевыми текстовыми терминалами (специализированными или на
базе дешевых PC), подключенными по медленным линиям. В этом с ним
конкурирует только VMS. Можно использовать и графические X-терминалы, когда
на одном экране присутствуют окна процессов, выполняющихся на разных
машинах.
В номинации рабочих станций с Unix конкурируют MS Windows*, IBM OS/2,
Macintosh и Acorn RISC-OS.
Unix функционирует как на PC, так и на мощных рабочих станциях с RISC-
процессорами, под Unix написаны действительно мощные САПР и
геоинформационные системы. Своей масштабируемостью Unix из-за его
многоплатформенности на порядок превосходит любую другую операционную
систему.
Как пользователь системы UNIX вы можете посылать сообщения другим
пользователям, работающим в вашей системе или другой системе UNIX, или
принимать информацию, хранящуюся в файлах других пользователей.
Особенностью является то, что вы можете посылать и принимать сообщения,
изменять файлы и организовывать сетевую работу с другими системами UNIX.
Чтобы сделать это, вы должны быть зарегистрированы в системе UNIX, что
предоставляет вам возможность связываться с той системой UNIX, которой вы
хотите послать информацию. Команда, которую вы будете использовать для
посылки информации зависит от того, что вы хотите послать.
Система UNIX обеспечивает мощное и удобное окружение для развития
программирования и программного обеспечения. В дополнение к различным
языкам, которые вы можете использовать, система UNIX обеспечивает
некоторыми дополнительными средствами, чтобы сделать развитие программного
обеспечения легче.
Внешний круг системы UNIX образуют программы и инструментальные средства
системы, разделенные на категории функционально. Эти функции включают:
программное окружение -
несколько программ системы UNIX, устанавливающих дружественное
программное окружение, обеспечивающее интерфейсы между системой и
языками программирования и использование обслуживающих программ;
обработка текстов -
система обеспечивает программы, такие как строковый и экранный
редакторы, для создания и изменения текстов, орфографическую программу
проверки для обнаружения ошибок орфографии, и необязательный форматер
текста для создания высококачественных копий, которые подходят для
публикаций;
организация информации -
система предоставляет много программ, которые позволяют вам создавать,
организовывать и удалять файлы и каталоги;
обслуживающие программы -
инструментальные средства, создающие графику и выполняющие вычисления;
электронная связь -
несколько программ (например, mail) предоставляют вам возможность
передавать информацию другим пользователям и в другие системы UNIX.
ОС UNIX изначально создавался как компактная система для программных
разработок. Практически вся система написана на языке С и, вследствие
этого, проста для понимания и легко переносима на различные аппаратные
платформы. История этой ОС начиналась в 70 годы. В это время она свободно
распространялась в основном в университетской среде и завоевывала
популярность как инструментальная среда. Важной особенностью этой
операционной системы является компактность кода - всего около 12 млн.
строк. После появления в конце 70 миниЭВМ ОС UNIX стала практически
стандартом для этих машин, поскольку обладая всей функциональностью
коммерческих ОС (RSX, RT, VMS и ряд других) могла легко портироваться на
различные платформы без существенных трудозатрат. С появлением в середине
80 годов первых ПК возникли и версии ОС UNIX для платформы Intel. С момента
появления первого 32-разрядного процессора фирмы Intel 80386 и расширения
RISC платформ (MIPS, Alpha, HP-PA, Motorolla начинается новый виток в
развитии этой ОС. Однако настоящий бум на UNIX решения возник благодаря
появлению Internet. Internet - это прежде всего Unix. Всемирная сеть
изначально строилась на технологиях неразрывно связанных с ОС Unix (TCP/IP,
SMTP, GOPHER и др.), и именно она привлекла внимание к этой ОС. На Unix
вскормлены нынешние выпускники университетов - то поколение, которое сейчас
начинает работу в качестве специалистов по ИТ, и будет определять развитие
корпоративных информационных технологий своих предприятий. Каковы же
основные отличительные черты этой замечательной нестареющей ОС?
В отличие от классических операционных систем для персональных компьютеров
(DOS, Windows, OS/2, NetWare), UNIX является многопользовательской
многозадачной операционной системой с разделением времени. Одна и та же
вычислительная система под управлением ОС UNIX может использоваться как
сервер приложений, коммуникационный сервер, сервер печати или файлов, и в
то же время обслуживать запросы большого количества пользователей. В этом
смысле UNIX очень близка к таким известным ОС как MVS, VMS, OS/400, то есть
операционных систем больших машин. Известны конфигурации UNIX систем для
онлайнового обслуживания 10000 пользователей (британская страховая компания
Churchill, 64-х процессорный CRAY CS6400 (SUN UE10000)). Несмотря на
многообразие версий UNIX, архитектура и основные интерфейсы системы
достаточно жестко стандартизованы. Поэтому в большинстве случаев для
администраторов, а тем более пользователей никаких различий в работе с
разными версиями UNIX просто нет. Основной организацией, занимающейся
выработкой стандартов для UNIX, является Open Group, возникшая в результате
слияния X/Open и OSF в 1997 г. Наличие многопользовательского режима работы
является важнейшей отличительной чертой этой ОС. Данный режим позволяет
легко администрировать систему и организовывать работу пользователей через
терминальный интерфейс, чрезвычайно экономичный и надежный. Концептуальная
правильность многопользовательского режима работы косвенно подтверждается и
тем, что после пяти лет разработок Windows NT фирма Microsoft признала
необходимость такого режима и пытается осуществить его в своем продукте
Windows Terminal Server или в продукте фирмы Citrix MetaFrame, хотя
изначально NT строилась исключительно как многозадачная среда без поддержки
многопользовательской работы. Крайне важным аспектом использования ОС UNIX
является то, что практически с самого начала своего существования она
использовалась для организации сетевых вычислений. Все наиболее
распространенные сетевые протоколы (TCP/IP, NFS) возникли и были отработаны
в среде ОС UNIX. Для этой ОС существуют самые эффективные (в смысле
соотношения затрат/производительности) решения для организации файл-
серверных и принтерных служб в гетерогенных средах (Samba), более чем
успешно конкурирующие с решениями на базе Windows NT или NetWare.
С широким распространением с середины 80-х симметричных мультипроцессорных
систем для коммерческих приложений появились версии UNIX, поддерживающие
многопоточные и многопроцессорные режимы работы. Уже в 1989 году появились
устойчивые реализации SMP для SCO UNIX (для процессоров Intel386) и DEC
ULTRIX (MIPS R2000/3000). В операционной системе UNIX традиционно
поддерживается классическая схема мультипрограммирования. Система имеет
возможность параллельного выполнения нескольких пользовательских программ.
Каждому такому выполнению соответствует процесс операционной системы.
Поскольку каждый процесс выполняется в собственной виртуальной памяти,
процессы в системе защищены друг от друга. В компьютерах с архитектурой SMP
несколько процессоров имеют доступ к общей памяти через высокоскоростной
общий интерфейс. Диспетчер процессов, обеспечивающий распределение ресурсов
процессоров между процессами, использует кольцевой режим планирования
(round robin). Основной смысл такого планирования состоит в том, что время
процессора(ов) делится на кванты фиксированного размера, а процессоры,
Страницы: 1, 2, 3, 4
|