Санкт-Петербургский Государственный
Технологический Институт
(Технический Университет)
Кафедра САПРиУ
Реферат:
“Сравнительная характеристика операционных систем
семейства UNIX”
Студент:
Преподаватель:Бойкова О. Г.
Санкт-Петербург
2004
Операционнаясистема UNIX — это многопользовательская система с разделением времени.Начинать сеанс работы с ней нужно с сообщения о том, кто Вы. Это не зависит оттого, работаете Вы за терминалом в своем кабинете или по коммутируемой линии связываетесьс большим узлом общего пользования. В этом заключается одно из отличий UNIX отDOS, Windows и Macintosh — операционных систем, в которых понятие«многопользовательский» отсутствует. UNIX должна знать, кто Вы, чтобывыделять Вас среди десятков, сотен и даже тысяч других пользователей.
Один из создателей операционной системы, первоначально названной Unics, Кен Томпсон
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 и AcornRISC-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 (SUNUE10000)). Несмотря на многообразие версий 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 (MIPSR2000/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из FreeSoftwareFoundationв Cambridge, Massachusetts. Но в него внесли лепту также программисты всегомира.
Linux- многозадачная и многопользовательская операционная система для бизнеса,образования и индивидуального программирования. Linux принадлежит семействуUNIX-подобных операционных систем, которая может работать на компьютерах Intel80386,80486 и Pentium. Рекомендуемые конфигурации компьютеров: минимум — Intel80386 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-ом и установили, что он вполне сравним срабочими станциями SunMicrosystemsи DigitalEquipmentCorporation.
Системные характеристики 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, включая реальную многозадачность, виртуальную память, разделяемыебиблиотеки, загрузку м