Рефераты

Сравнительная характеристика операционных систем семейства 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). Основной смысл такого планирования состоит в том, что время

процессора(ов) делится на кванты фиксированного размера, а процессоры,

готовые к выполнению, выстраиваются в кольцевую очередь. Очевидно, что чем

больше процессоров в системе, тем меньше процессов остается в очереди на

исполнение, поскольку они распределяются на любые свободные в данный момент

ЦПУ. Кроме того, в ОС UNIX был внедрен механизм легковесных процессов

(light-weight processes) или нитей управления. Фактически, нити - это

процессы, исполняющиеся в одной и той же виртуальной памяти обычного

(обладающего виртуальной памятью) процесса. Механизм нитей позволяет еще

больше поднять эффективность работы SMP систем, так как позволяет

распараллеливать выполнение даже в рамках одного процесса. Синхронизация

выполнения нитей достигается при помощи механизма замков (lock).

Многопоточность помогает решить и другую проблему - обеспечение работы в

режиме реального времени.

ОС UNIX является одной из самых распространенных операционных систем в

мире. Версии этой ОС существуют практически для всех аппаратных платформ:

от персональных компьютеров до векторных суперЭВМ и MPP систем. UNIX давно

стала стандартной ОС для мощных профессиональных рабочих станций, систем

SMP, кластеров. Начиная с 1992 года после появления первых 64-х разрядных

процессоров Alpha 21064 и MIPS R4000 появились 64-х разрядные версии UNIX.

Важность поддержки 64-х разрядной обработки данных и адресации для

современных приложений очевидна. Это и поддержка технологии сверхбольших

моделей организации памяти (VLMR), используемой в современных СУБД баз

данных, и увеличение производительности вычислительных систем, и

эффективная работа со сверхбольшими файловыми системами. Сейчас большая

часть операционных систем семейства UNIX является 64-х разрядными, в

отличие от Windows NT, остающейся по-прежнему 32-х разрядной и существующей

только на двух платформах - Intel и DEC Alpha, хотя изначально эта ОС

задумывалась как многоплатформенная. Даже такому гиганту как Microsoft

оказалось не под силу поддерживать свою операционную систему на всех

платформах.

Надежность системы UNIX в значительной степени определяется ее открытостью

и достаточно долгим сроком жизни. Открытость системы и наличие большого

количества независимых компаний, проводящих разработки этой ОС, позволяют

создавать нормальную конкурентную среду, в которой быстро и качественно

реализуются новые механизмы, компоненты и исправления. Кроме того,

постоянное развитие UNIX стимулируется наличием некоммерческих версий этой

операционной системы. Все это разительно отличается от идеологии развития

Windows NT, разработкой которой монопольно занимается одна компания со

всеми вытекающими отсюда последствиями. Большинство слабых сторон Windows

NT в конечном счете проистекают из философии компании: "Windows повсюду" и

к настоящему времени явно устаревшей концепции наличия на каждом ПК

локального контекста прикладной задачи (м следовательно ОС Windows). Однако

из-за достаточно высокой (на момент появления цены и относительно низкого

быстродействия, в частности графической подсистемы) Microsoft пришлось

сделать ряд шагов направленных на повышени быстродействия Windows NT путем

встраивания графической подсистемы в ядро ОС. Это привело к принципиальному

снижению стабильности системы. В настоящий момент именно графические службы

и драйверы NT вместе образуют слабейшее звено системы, .поскольку им

доступны критически важные области системной памяти. И на клиенте, и на

сервере работа Windows NT всецело зависит от качества графических

драйверов, в основном производимых третьими фирмами и использующих их

программ. Не смотря на это, как показывает практика сравнение выполнения

графических приложений для NT и UNIX исключая случаи низкого разрешения

экрана практически всегда оказывается не в пользу NT. В Unix система X11 и

драйверы дисплея изолированы от ядра системы, и благодаря этому Unix

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

графических драйверов не влияют на его работу.

К важным свойствам ОС UNIX относятся ряд специальных черт, позволяющих

автоматически переконфигурировать системы после выхода из строя отдельных

компонент, дублировать наиболее критические компоненты систем, производить

автоматическую перезагрузку системы в случае ее краха (LAR функции).

Большинство версий Unix поддерживают загружаемые модули устройств, т. е.

позволяют загрузить систему, а после этого "ходу" переконфигурировать

поддержку оборудования и программ или BTLD драйверы (присоединяемые к ядру

во время загрузки). После завершения работы с устройством соответствующий

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

использоованием современных технологий журналирования типа Veritas.

Традиционное мнение о сложности установки и администрирования UNIX, о

недружественном интерфейсе и высокой стоимости решений на ее основе это

типичный миф, который так любим фирмой Microsoft. Такое же мнение можно

встретить и у людей, которые никогда всерьез не занимались реальным

администрированием компьютерных систем и не знакомы с ОС UNIX. Достаточно

один раз попробовать самому установить любую из них, например SCO

OpenServer или Linux, что бы убедиться в обратном. Теперь относительно

недружественного интерфейса с командной строкой. Интересно как вы бы

отнеслись к предложению заменить "примитивный" обычный голосовой метод

общения со своими друзьями на высокопонятную систему жестов и ужимок? Вы не

согласны? Странно, в Microsoft предполагают, что второй путь гораздо

"интуитивнее, более открыт и практичнен". На самом деле, "недружественный"

интерфейс с командной строкой позволяет чрезвычайно просто и гибко, с

минимальными трудозатратами осуществлять администрирование сложных сетей и

объектов операционной среды, тогда как в NT для этого необходимо открывать

огромное количество окон с непонятной смысловой нагрузкой, навигация внутри

которых к тому же крайне затруднена. Оболочки командной строки, входящей в

состав Unix поддерживают развитые языки сценариев, которые часто

оказываются наиболее эффективным средством автоматизации сложных задач

администрирования. Кроме того, администраторы и пользователи UNIX могут

работать в системе через различные графические оконные интерфейсы, в том

числе и через удобный стандартизованный интерфейс CDE (Common Desktop

Environment). Надо отметить, что графические интерфейсы в среде UNIX

появились и стали широко использоваться задолго до того как Билли Гейтс

задумал Windows 1.0. Графическая оболочка CDE построена на базе оконной

среды X Window и имеет большое количество средств для контроля и управления

операционной системой, тонкой настройки, слежения за состоянием

оборудования и т.д. Кстати, Unix-сервер можно в отличии от NT от начала до

конца администрировать даже с терминала или с любой рабочей станции,

поддерживающей протокол Telnet. Настроенная система UNIX устойчиво работает

и не требует ресурсов на поддержку. Как показывает опыт, один администратор

может обслуживать большое количество систем, географически разнесенных на

сотни километров. Для больших и средних организаций в таких случаях часто,

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

третьим фирмам (outsourcing).

В системе UNIX как в многопользовательской среде всегда большое внимание

уделялось проблеме безопасности. Основные принципы и уровни безопасности

для ОС UNIX разрабатываются на основе документа Национального центра

компьютерной безопасности США (NCSC) "Критерии оценки надежных компьютерных

систем", известного как "Оранжевая книга". Оранжевая книга определяет

иерархию 4 уровней безопасности, каждый последующий из которых строже

предыдущего:

D: минимальная безопасность;

C: дискреционная защита;

B: мандатная защита;

A: верифицируемая защита.

Каждый уровень делится на 1 или более перенумерованных классов (чем больше

номер, тем больше степень безопасности): C2 обеспечивает большую

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

основных современных версий Unix.. Для большинства версий UNIX стандартным

является уровень безопасности C2: управляемая защита доступа с требованием

возможностей ревизии, защиты паролем, других средств контроля владения и

использования ресурсов, строгого тестирования и документирования. Возможно

повышение уровня защиты (например, до уровня B1 или выше) за счет

дополнительных компонент, приобретаемых отдельно.

За время существования UNIX для этой операционной системы было написано

огромное количество приложений. Объем программного обеспечения написанного

для UNIX настолько велик, что уже сам по себе обеспечит этой ОС долгую

жизнь. Для разных версий UNIX это количество достигает 12000. Только для

Solaris фирмы Sun Microsystems ежемесячно появляется более 150 новых

приложений. Доступность приложений для Windows NT за последние три года

значительно выросла, однако в большинстве случаев качество, устойчивость и

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

Для некоммерческой версии UNIX Linux теперь доступны такие прикладные

системы IBM DB 2, Oracle Enreprise Server, Informix, Lotus Development и

много других. Кроме того, ряд крупнейших производителей вычислительной

техники таких как Compaq, Hewlett-Packard и Dell Computer начали поставки

серверов с преинсталлированным Linux. Очень важным событием с точки зрения

развития приложений для сетецентрических вычислительных моделей стало

появление Java. Быстро, всего за несколько лет, Java стал наиболее

признанным языком программирования. Его появление сдвинуло баланс

вычислений с клиента в сторону сервера. Возможно,это станет серьезным

ударом по предсказаниям о доминировании ОС для настольных ПК. Этому может

способствовать и появление дешевых офисных приложений для Unix, например

StarOffice фирмы Sun Microsystems. Очевидно, что серверы могут эффективно

обслуживать приложения или даже их части без того, чтобы хранить данные на

клиенте.

Таким образом, мы с уверенностью можем сказать, что этой хорошо знакомой и

такой новой операционной системе UNIX еще найдется много работы и в новом

тысячелетии.

Независимо от версии, общими для UNIX чертами являются:

. многопользовательский режим со средствами защиты данных от

несанкционированного доступа,

. реализация мультипрограммной обработки в режиме разделения времени,

основанная на использовании алгоритмов вытесняющей многозадачности

(preemptive multitasking),

. использование механизмов виртуальной памяти и свопинга для повышения

уровня мультипрограммирования,

. унификация операций ввода-вывода на основе расширенного использования

понятия "файл",

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

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

размещения файлов,

. переносимость системы за счет написания ее основной части на языке C,

. разнообразные средства взаимодействия процессов, в том числе и через

сеть,

. кэширование диска для уменьшения среднего времени доступа к файлам.

Немного о Linux

Linux - свободно распространяемая версия UNIX, первоначально была

разработана Линусом Торвальдсом (Linus Torvalds) . Linux был создан с

помощью многих UNIX-программистов и энтузиастов из Internet, тех, кто имеет

достаточно навыков и способностей развивать систему. Ядро Linux не

использует коды AT&T или какого-либо другого частного источника, и

большинство программ Linux разработаны в рамках проекта GNU из Free

Software Foundation в Cambridge, Massachusetts. Но в него внесли лепту

также программисты всего мира.

Linux - многозадачная и многопользовательская операционная система для

бизнеса, образования и индивидуального программирования. Linux принадлежит

семейству UNIX-подобных операционных систем, которая может работать на

компьютерах Intel 80386,80486 и Pentium. Рекомендуемые конфигурации

компьютеров: минимум - Intel 80386 DX 40MHz/4Mb(RAM) /80Mb(HDD) ;

рекомендуемое - Pentium 100MHz/16Mb/540Mb; оптимальное - Pentium

133MHz/32Mb/1Gb.

Linux поддерживает широкий спектр программных пакетов от TeX до X

Windows, компиляторов GNU C/C++, протоколов TCP/IP. Это гибкая реализация

ОС UNIX, свободно распространяемая под генеральной лицензией GNU.

Linux может любой персональный компьютер превратить в рабочую станцию.

Бизнесмены инсталлируют Linux в сетях машин, используют операционную

систему для обработки данных в сфере финансов, медицины, распределенной

обработки, в телекоммуникациях и т.д.

Сегодня Linux - это полноценная ОС семейства UNIX, способная работать

с X Windows, TCP/IP, Emacs, UUCP, mail и USENET. Практически все важнейшие

программные пакеты были поставлены и на Linux, т.е. для Linux теперь

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

поддерживается по сравнению с первоначальным ядром. Многие тестировали

Linux на 486-ом и установили, что он вполне сравним с рабочими станциями

Sun Microsystems и Digital Equipment Corporation.

Системные характеристики Linux - это полная многозадачная

многопользовательская операционная система (точно также как и другие версии

UNIX) . Linux достаточно хорошо совместим с рядом стандартов для на уровне

исходных текстов, включая IEEE POSIX. 1, System V и BSD. Он создавался имея

в виду такую совместимость.

Другие специфические внутренние черты Linux включают контроль работ по

стандарту POSIX (используемый оболочками, такими как csh и bash) ,

псевдотерминалы (pty) , поддержку национальных и стандартных клавиатур

динамически загружаемыми драйверами клавиатур.

Ядро может само эмулировать команды 387-FPU, так что системы без

сопроцессора могут выполнять программы, на него рассчитывающие (т.е. с

плавающей точкой) .

Linux поддерживает различные типы файловых систем для хранения данных.

Некоторые файловые системы, такие как файловая система ext2fs, были созданы

специально для Linux. Поддерживаются также другие типы файловых систем,

такие как Minix-1 и Xenix. Реализована также файловая система MS-DOS,

позволяющая прямо обращаться к файлам MS-DOS на жестком диске.

Поддерживается также файловая система ISO 9660 CD-ROM для работы с дисками

CD-ROM.

Linux обеспечивает полный набор протоколов TCP/IP для сетевой работы.

Поддерживается весь спектр клиентов и услуг TCP/IP, таких как FTP, telnet,

NNTP и SMTP.

Ядро Linux сразу создано с учетом специального защищенного режима для

процессоров Intel 80386 и 80486. В частности, Linux использует парадигму

описания памяти в защищенном режиме и другие новые свойства процессоров.

Для увеличения объема доступной памяти Linux осуществляет также

разбиение диска на страницы: то есть на диске может быть выделено до 256

Мбайт "пространства для свопинга" (swap space) . (Swap space не совсем

подходящее имя, в Linux в область свопинга выгружается не весь процесс, а

только отдельные его части, в которых нет необходимости) . Когда системе

нужно больше физической памяти, то она с помощью

свопинга выводит неактивные страницы на диск. Это позволяет выполнять более

объемные программы и обслуживать одновременно больше пользователей. Однако

свопинг не исключает наращивания физической памяти, поскольку он снижает

быстродействие, увеличивает время доступа.

Ядро также поддерживает универсальный пул памяти для пользовательских

программ и дискового кэша. При этом для кэша может использоваться вся

память, и наоборот, кэш уменьшается при работе больших программ.

Выполняемые программы используют динамически связываемые библиотеки,

т.е. выполняемые программы могут совместно использовать библиотечную

программу, представленную одним физическим файлом на диске (иначе, чем это

реализовано в механизме разделяемых библиотек SunOS) . Это позволяет

выполняемым файлам занимать меньше места на диске, особенно тем, которые

многократно используют

библиотечные функции. Есть также статические связываемые библиотеки для

тех, кто желает пользоваться отладкой на уровне объектных кодов или иметь

"полные" выполняемые программы, которые не нуждаются в разделяемых

библиотеках. В Linux разделяемые библиотеки динамически связываются во

время выполнения, позволяя программисту заменять библиотечные модули своими

собственными.

ОС LINUX обладает всеми возможностями, которые присущи современным

полнофункциональным операционным системам типа UNIX, включая реальную

многозадачность, виртуальную память, разделяемые библиотеки, загрузку

модулей по требованию, совместное использование исполняемых программ,

управление памятью и работа в TCP/IP сетях. Она претендует на соответствие

стандарту для ОС типа UNIX - POSIX (Portable Operating System Interface -

интерфейс мобильной операционной системы).

Хотя ОС Linux первоначально была разработана для ПК на базе Intel 386/486,

сейчас она может работать на всех версиях Intel-овских микропроцессоров,

начиная с 386 и кончая многопроцессорными системами на Pentium Pro. Кроме

того, разработаны версии для других типов процессоров - ARM, DEC Alpha, SUN

Sparc, M68000 (Atari и Amiga), MIPS, PowerPC и других (в настоящей работе

рассматривается только вариант для IBM-совместимых компьютеров).

Linux, FreeBSD и другие

Почему Linux и FreeBSD не cмогут вытеснить коммерческие ОС.

В последнее время в компьютерной отрасли наблюдается лавинообразный всплеск

интереса к операционной системе Linux. По данным некоторых исследований, за

прошедший год количество компьютеров с Linux увеличилось на 212% и достигло

более 7,5 млн. Многие компании, включая таких грандов, как Oracle, Informix

и Corel, переносят или уже перенесли свои приложения на Linux.

Следует иметь в виду, что, хотя создание ядра Linux осуществляется

централизованно, дистрибуцией операционной системы занимается более

полутора десятков организаций, причем каждая из них привносит что-то свое.

Но Linux - не единственная бесплатная система, привлекающая к себе

внимание.

Еще пару лет назад ОС FreeBSD по популярности не уступала Linux. Хотя

количество инсталляций FreeBSD с тех пор значительно выросло, но не

Страницы: 1, 2


© 2010 Современные рефераты