Системное программное обеспечение 3 страница

Как сделать так, чтобы все устройства ввода-вывода и драйверы выглядели примерно одинаково? Если диски, принтеры, клавиату­ры и т. д. требуют различных интерфейсов, то при появлении ново­го устройства будет требоваться переделка операционной системы, что очень неудобно. Этот вопрос связан с интерфейсом между драй­верами устройств и операционной системой. Функции драйверов, доступные системе, отличаются от драйвера к драйверу. Это означа­ет, что функции ядра, необходимые для драйвера, тоже различают­ся, поэтому взаимодействие с каждым новым драйвером требует больших усилий программистов.

Существует принципиально другой подход, при котором у всех драйверов один и тот же интерфейс. При этом значительно легче установить новый драйвер, при условии, что он соответствует стан­дартному интерфейсу. Программисты, занимающиеся разработкой драйверов, знают, какие функции они должны реализовать и к ка­ким функциям ядра они могут обращаться. На практике же не все устройства являются абсолютно идентичными, но обычно имеется небольшое число типов устройств, достаточно похожих друг на друга. Например, даже у блочных и символьных устройств есть много общих функций.

3,2.8. Файловые системы

Всем компьютерным приложениям нужно хранить и получать информацию. Наиболее удобной для доступа к долговременным ус­тройствам хранения информации оказалась система, при которой пользователь назначает для той или иной совокупности данных не­которое имя. Определенный участок диска, занятый информацией, имеющей собственное имя, называется файлом. Часть ОС, работаю­щая с файлами и обеспечивающая хранение данных на дисках и до­ступ к ним, называется файловой системой (ФС).

С точки зрения пользователя наиболее важным аспектом фай­ловой системы является ее внешнее представление, т.е. именование и защита файлов, операции с файлами и т.д. Компьютеру безразлич­но, какое имя имеет любая программа или документ, так как он по­лучает от ОС инструкцию подобно такой: «прочитай столько-то байт с такого-то места на диске». При этом пользователь не обязан знать, в каком физическом порядке и где именно находятся его данные. Ему достаточно потребовать от ОС прочитать документ или загрузить не­обходимую программу.

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

Файлы относятся к абстрактному механизму. Они предоставля­ют способ сохранить информацию на диске и считывать ее снова по мере необходимости. Пользователю не нужны такие подробности, как способ и место хранения информации, детали работы дисков. Важной характеристикой любого механизма абстракции являются принципы именования управляемых объектов, поэтому вкратце рас­смотрим правила именования файлов.

Точные правила именования файлов варьируются от системы к системе, но все современные операционные системы поддерживают использование в качестве имен файлов 8-символьные текстовые стро­ки. Так, книга, страница, карандаш являются допустимыми имена ми файлов. Часто в именах файлов также разрешается использова­ние цифр и специальных символов, поэтому могут применяться и такие имена файлов, как 2 (лучше _2), срочный! и Рис.2-14. Многие файловые системы поддерживают имена файлов длиной до 255 сим­волов.

В некоторых ФС различаются прописные и строчные символы, в других, таких как MS-DOS, нет. Операционные системы Windows 95 и Windows 98 используют файловую систему MS-DOS и наследуют многие ее свойства, включая именование файлов. Операционные системы Windows NT и Windows 2000 также поддерживают файловую систему MS-DOS и наследуют ее свойства. Однако у них имеется своя файловая система NTFS, обладающая отличными свойствами.

Во многих ОС имя файла может состоять из двух частей, разде­ленных точкой, например progr.exe. Часть имени файла после точки называется расширением файла и обычно означает тип файла. Так, в MS-DOS имя файла может содержать от 1 до 8 символов плюс через точку расширение от 0 до 3 символов. В некоторых ОС, например в UNIX, расширения файлов являются просто соглашениями, и ОС.не заставляет пользователя их строго придерживаться. Так, файл file.txt может быть текстовым файлом, но это скорее памятка пользовате­лю, а не руководство к действию для операционной системы. Сис­тема Windows, напротив, знает о расширениях файлов и назначает каждому расширению определенное значение. Пользователи или процессы могут регистрировать расширения в ОС, указывая програм­му, создающую данное расширение. При двойном щелчке мышью на имени файла запускается программа, назначенная этому расшире­нию, с именем файла в качестве параметра. Например, двойной щел­чок мышью на имени file.doc запускает MS Word, который открыва­ет файл file.doc.

Обычно пользователям бывает необходимо логически группиро­вать свои файлы, поэтому требуется некий гибкий способ, позволя­ющий объединять файлы в группы. Следовательно, нужна некая об­щая иерархия, т.е. дерево каталогов (см. рис. 3.3). При таком подходе каждый пользователь может сам создать себе столько каталогов и подкаталогов, сколько ему нужно, группируя свои файлы естествен­ным образом. В корневом каталоге могут быть также созданы ката­логи и подкаталоги, принадлежащие различным пользователям. Воз­можность создавать произвольное количество подкаталогов является

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

При организации ФС в виде дерева каталогов требуется некото­рый способ указания файла. Для этого обычно используются два различных метода. В первом случае каждому файлу дается абсолют­ное имя пути, состоящее из имен всех каталогов от корневого до того, в котором содержится файл, и имени самого файла. Например, путь \user\abc\myfile.doc означает, что корневой каталог содержит кататог user, который, в свою очередь, содержит подкаталог abc, где находит­ся файл myfile.doc. Абсолютные имена путей всегда начинаются от корневого каталога и являются уникальными. Если первым симво­лом имени пути является разделитель, это означает, что путь абсо­лютный. Применяется и относительное имя пути. Оно используется вместе с понятием текущего каталога. Пользователь может назначить один из каталогов текущим рабочим каталогом. В этом случае все имена путей, не начинающиеся с символа разделителя, считаются относительными и отсчитываются относительно текущего каталога. Например, если текущим каталогом является \user\abc, тогда к фай­лу с абсолютным путем \user\abc\myfile.doc можно обратиться про­сто как к myfile.doc.

Итак, любая файловая система предназначена для хранения ин­формации о физическом размещении частей файла. В ФС существует минимальная единица информации — кластер, размер которого яв­ляется нижним пределом размера записываемой на носитель инфор­мации в рамках ФС. Не следует путать понятие кластера с понятием сектора, который является минимальной единицей информации со стороны аппаратного обеспечения. От ФС требуется четкое выпол­нение следующих действий:

• определение физического расположения частей файла;

• определение наличия свободного места и выделение его для
вновь создаваемых файлов.

Скорость выполнения этих операций напрямую зависит от са­мой ФС. Разные файловые системы используют различные механиз­мы для реализации указанных задач и имеют свои преимущества и недостатки. ФС типа FAT (File Allocation Table) представляют собой образ носителя в миниатюре, где детализация ведется до кластерно­го уровня, Поэтому операция поиска физических координат файла при его большой фрагментации будет затруднительна. ФС FAT16 за­нимает объем 128 Кб. И это позволяет легко кэшировать ее инфор­мацию. Для FAT32 эта величина для больших дисков составит = 1 Мб, что еще более затрудняет поиск физических координат фрагментированного файла. Еще хуже обстоит дело с поиском свободного ме­ста для больших файлов. Приходится просматривать практически всю таблицу. Быстродействие падает. NTFS (New Technology File System) использует более компактную форму записи, что ускоряет поиск фай­ла. Операции с выделением места проходят быстрее. Ключевое пре­имущество NTFS — возможность ограничения доступа к файлам и папкам.

Важный параметр — размер кластера. Больший размер кластера гарантирует более высокую производительность за счет уменьшения самой ФС. Для NTFS увеличение кластера - болезненная процеду­ра из-за невозможности выполнить дефрагментацию, поскольку большинство таких программ не работает с кластерами, отличными от штатных 4 Кб.

Файловые системы Microsoft Windows

Рассмотрим основные файловые системы, поддерживаемые Windows - FAT16, FAT32, NTFS, а также системы CDFS и UDF. Каждая файловая система имеет свои достоинства и недостатки.

Файловая система FAT 16 начала свое существование еще во .вре­мена, предшествующие MS-DOS. Она поддерживается всеми ОС Microsoft для обеспечения совместимости. Ее название File Allocation Table (таблица расположения файлов) отлично отражает физическую организацию файловой системы, к основным характеристикам ко­торой можно отнести то, что максимальный размер поддерживаемо­го тома HDD или его раздела не превышает 4095 Мбайт. Во времена MS-DOS 4-гигабайтные HDD казались несбыточной мечтой (роско­шью были диски 20-40 Мбайт), поэтому.такой запас был вполне оправдан.

Том, отформатированный для использования FAT16, разделяет­ся на кластеры. Размер кластера по умолчанию зависит от размера тома и может колебаться от 512 б до 64 Кб. Размер кластера может отличаться от значения по умолчанию, но должен иметь одно из зна­чений, предписанных для этой ФС.

Не рекомендуется использовать файловую систему FAT16 на то больше 511 Мб, так как для небольших файлов дисковое про­странство будет использоваться крайне неэффективно: файл разме­ром 1 байт будет занимать 16, 32 или 64 Кб. Независимо от размера кластера файловая система FAT16 не поддерживается для томов боль­ше 4 Гбайт.

: На рис. 3.6 показано, как организован том при использовании файловой системы FAT16.

Рис. 3.6. Организация тома в файловой системе FAT16

Единственным отличием корневого каталога от других катало­гов является то, что он располагается в определенном месте и имеет фиксированное число вхождений. Так, -если число фиксированных вхождений для корневого каталога равно 512 и создано 100 подката­логов, то в корневом каталоге можно создать не более 412 файлов.

Начиная с Windows 95 OSR2, появилась поддержка 32-битной FAT. Для систем на базе Windows NT эта файловая система впервые стала поддерживаться в Windows 2000. Если FAT16 может поддержи­вать тома объемом до 4 Гб, то FAT32 способна обслуживать тома объемом до 2 Тб. Размер кластера в FAT32 может изменяться от 1 (512 б) до 64 секторов (32 Кб). Для хранения значений кластеров FAT32 требуется 4 б (32 бит, а не 16, как в FAT16). Это означает, в частности, что некоторые файловые утилиты, рассчитанные на FAT16, не могут работать с FAT32.

Основным отличием FAT32 от FAT16 является то, что изменил­ся размер логического диска. FAT32 поддерживает тома до 127 Гб. При этом, если при использовании FAT16 с 2-гигабайтными диска­ми требовался кластер размером в 32 Кб, то в FAT32 кластер разме­ром в 4 Кб подходит для дисков объемом от 512 Мб до 8 Гб.

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

При применении FAT32 максимальный размер файла может достигать 4 Гб минус 2 байта. Если при использовании FAT3 6 макси­мальное число вхождений в корневой каталог ограничивалось 512, то FAT32 позволяет увеличить это число до 65535.

При создании файла с длинным именем Windows создает соот­ветствующее имя в формате 8.3 и одно или более вхождении в ката­лог для хранения длинного имени (по 13 символов из длинного име­ни файла на каждое вхождение). Каждое последующее вхождение хранит соответствующую часть имени файла в формате Unicode. Та­кие вхождения имеют атрибуты идентификатор тома, только чте­ние, системный и скрытый - набор, который игнорируется MS-DOS.

В состав Windows 2000 входит поддержка новой версии файло­вой системы NTFS, которая, в частности, обеспечивает средства защи­ты информации, контроль над доступом и ряд других возможностей.

Как и при использовании FAT, основной информационной еди­ницей в NTFS является кластер. При формировании файловой сис­темы NTFS программа форматирования создает файл Master File Table (MTF) и другие области для хранения метаданных. Метаданные ис­пользуются NTFS для реализации файловой структуры, Первые 16 записей в MTF зарезервированы самой NTFS. Местоположение файлов метаданных записано в загрузочном секторе диска. Если пер­вая запись в MTF повреждена, NTFS считывает вторую запись для нахождения копии первой. Полная копия загрузочного сектора рас­полагается в конце тома. В MTF хранятся метаданные, такие как ко­пия первых четырех записей (гарантирует доступ к MTF в случае, если первый сектор поврежден). MTF содержит информацию о томе — метку и номер версии. В MTF находится таблица имен атрибутов и описания, корневой каталог и др. Остальные строки MTF содер­жат записи для каждого файла и каталога, расположенных на дан­ном томе.

Обычно один файл использует одну запись в MTF, но если у файла большой набор атрибутов или он становится слишком фрагментированным, то для хранения информации о нем могут потре­боваться дополнительные записи. В этом случае первая запись о фай­ле, называемая базовой записью, хранит местоположение других записей. Данные о файлах и каталогах небольшого размера (до 1500 байт) полностью содержатся в первой записи.

В Windows 2000 обеспечивается поддержка файловой системы CDFS, отвечающей стандарту ISO 9660, описывающему расположе ние информации на CD-ROM. Поддерживаются длинные имена фай­лов в соответствии с ISO 9660.

Поддержка файловой системы UDF является одним из новшеств Windows 2000. Universal Disk Format — это файловая система, отвеча­ющая стандарту ISO 13346 и используемая для обмена данными с накопителями CD-ROM и DVD.

Сравнение файловых систем Microsoft Windows

Под управлением MS Wm2000 возможно использование файло­вых систем FAT16, FAT32, NTFS или их комбинаций. Цифры в на­звании файловых систем — FAT16 и FAT32 — указывают на число бит, необходимых для хранения информации о номерах кластеров, используемых файлом. Так, в FAT16 применяется 16-битная адреса­ция и, соответственно, возможно использование до 216 адресов. В Windows 2000 первые четыре бита таблицы расположения файлов FAT32 необходимы для собственных нужд, поэтому в FAT32 число адресов достигает 2п.

Среди преимуществ FAT16 можно отметить следующие:

• файловая система поддерживается ОС MS-DOS, Windows 95,
Windows 98, Windows NT, Windows 2000, а также некоторыми ОС
UNIX;

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

• при возникновении проблем с загрузкой с HDD система может
быть загружена с системной дискеты;

• файловая система достаточно эффективна для томов объемом
менее 256 Мб.

К недостаткам FAT16 можно отнести:

• не поддерживается резервная копия загрузочного сектора;

• в FAT16 не поддерживается встроенная защита файлов и их сжа­тие.

Среди преимуществ FAT32 важно отметить следующие:

• выделение дискового пространства выполняется более эффектив­но, особенно для дисков большого объема;

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

этому FAT32 не накладывает никаких ограничений на число эле­ментов в корневом каталоге;

• за счет использования кластеров меньшего размера занятое дисковое пространство на 10—15 % меньше, чем под FAT16.

• FAT32 является более надежной файловой системой, в частно­сти, она поддерживает возможность перемещения корневого ка­талога и использование резервной копии FAT.

Основные недостатки FAT32:

• размер тома под Win2000 ограничен 32 Гб;

• тома недоступны из других ОС — только из Win95 OSR2 и Win98;

• не поддерживается резервная копия загрузочного сектора;

• не поддерживается встроенная защита файлов и их сжатие.
При работе в Windows 2000 рекомендуется отформатировать все

разделы HDD под NTFS, за исключением тех конфигураций, когда используется несколько ОС (кроме Windows 2000 и Windows NT). Применение NTFS вместо FAT позволяет использовать функции, доступные в NTFS. К ним, в частности, относятся

• возможность восстановления. Эта возможность встроена в фай­ловую систему. NTFS и гарантирует сохранность данных за счет
того, что используются протокол и некоторые алгоритмы восста­новления информации;

• сжатие информации. Для томов NTFS Windows 2000 поддержи­вает сжатие отдельных файлов. Такие сжатые файлы могут ис­пользоваться Windows-приложениями без предварительной рас­
паковки, которая происходит автоматически при чтении из
файла. При закрытии и сохранении файл снова упаковывается;

• защита файлов и каталогов. Только на томах NTFS возможно
задание атрибутов доступа к файлам и папкам;

• файловая система поддерживает резервную копию загрузочного
сектора — она располагается в конце тома;

• NTFS поддерживает систему шифрования Encrypted File System
(EFS), обеспечивающую защиту от неавторизованного доступа к
содержимому файлов.

К недостаткам NTFS относятся:

• NTFS-тома недоступны в MS-DOS, Win95 и Win98;

• для томов небольшого объема, содержащих много файлов не­
большого размера, возможно снижение производительности по
сравнению с FAT

3.2,9, Рассмотрение

конкретных операционных систем

В предыдущих разделах были рассмотрены общие принципы операционных систем. В этом разделе мы познакомимся с система­ми UNIX, Linux и Windows, чтобы увидеть, как эти принципы рабо­тают на практике. Начнем рассмотрение примеров с операционной системы UNIX, так как она используется на различных типах ком­пьютеров чаще, чем любая другая ОС. Система UNIX доминирует на рабочих станциях старших моделей и серверах, но она также исполь­зуется и в ноутбуках и суперкомпьютерах. Система UNIX иллюстри­рует множество важных принципов построения ОС, многие из ко­торых были позаимствованы другими операционными системами. Общий обзор системы особенно важен для пользователей, знакомых только с системой Windows, скрывающей от них практически все детали системы. Хотя графические интерфейсы очень удобны, но они не обладают достаточной гибкостью и не дают представление о том, как работает система.

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

UNIS и Linux

История UNIX начиналась в 60-е гг. прошлого столетия, когда сотрудник лаборатории Bell Labs крупнейшей телекоммуникацион­ной компании в мире AT&T Кен Томпсон написал на ассемблере операционную систему, которая в шутку была названа UNICS (UNiplexed Information and Computing Service — примитивная инфор­мационная и вычислительная служба). Впоследствии написание этого слова стало короче, превратившись в UNIX. Однако переписывать всю систему на ассемблере заново для каждой новой машины дело трудное, поэтому Томпсон решил переписать UNIX на языке высо­кого уровня, который он сам специально разработал и назвал язы­ком В. Но язык В оказался слабым, в первую очередь, из-за отсут­ствия в нем структур данных. Тогда коллега Томпсона Ритчи разработал следующий язык, явившийся преемником языка В, который, естественно, получил название С. Вместе Томпсон и Ритчи переписали UNIX на С. Язык С оказался как раз тем языком, кото­рый и был нужен в то время, и он сохраняет лидирующие позиции в области системного программирования до сих пор. За работу по созданию ОС UNIX Ритчи и Томпсону ассоциацией по вычислитель­ной технике АСМ была присуждена престижная премия Тьюринга. Многие университеты старались получить копию системы UNIX.

Операционная система UNIX поставлялась с полным комплек­том исходных текстов, поэтому владельцы системы могли совершен­ствовать ее. Новые идеи и усовершенствования системы распрост­ранялись быстро.

Version 7 (по номеру издания руководства программиста) стала первой переносимой на другие платформы версией операционной системы UNIX. На Version 7 выросло целое поколение студентов, ко­торые содействовали распространению UNIX. К середине 80-х гг. ОС UNIX широко применялась на мини-компьютерах и рабочих станци­ях различных производителей. Многие компании даже приобрели лицензии на исходные тексты, чтобы производить свои версии сис­темы UNIX. Одной из таких компаний была небольшая начинающая фирма Microsoft, в течение нескольких лет продававшая Version 7 под именем XENIX, пока ее интересы не повернулись в другую сторону.

В 1984 г. компания AT&T выпустила на рынок первый коммер­ческий вариант системы UNIX, System III. Через год она была заме­нена улучшенной версией, System V. Оригинальную систему System V сменили выпуски 2, 3 и 4 все той же System V. Каждый последующий выпуск был более сложным и громоздким, чем предшествующий. В процессе усовершенствований оригинальная идея, лежащая в основе системы UNIX, заключающаяся в простоте и элегантности.системы, была в значительной мере утрачена.

Калифорнийский университет в Беркли был одним из многих университетов, приобретших UNIX. Он разработал и выпустил улуч­шенные версии операционной системы, которые содержали большое количество усовершенствований. Важнейшими из них были исполь­зование виртуальной памяти и страничная подкачка файлов, что по­зволяло создавать программы, большие по размеру, чем физическая память. Другое изменение заключалось в поддержке имен файлов дли­ной более 14 символов. Реализация файловой системы также была изменена, благодаря чему работа с файловой системой стала суще Системное программное обеспечение 3 страница - student2.ru ственно быстрее. Более надежной стала обработка сигналов. В 4-й версии Berkeley UNIX появилась поддержка сетей, в результате чего используемый протокол TCP/IP стал стандартом де-факто в мире UNIX, а позднее и в Internet, в котором преобладают серверы на базе системы UNIX. Университет в Беркли также добавил значительное ко­личество утилит для системы UNIX, включая компиляторы с языков Pascal И Lisp. Все эти усовершенствования привели к тому, что мно­гие производители компьютеров стали основывать свои версии сис­темы UNIX на Berkeley UNIX, а не на официальной версии компании AT&T, System V В результате Berkeley UNIX получила широкое рас­пространение в академических и исследовательских кругах.

Для того, чтобы система UNIX могла быть гарантированно за­пущена на любой машине, к концу 80-х при содействии Совета по стандартам Standard Boards при Институте инженеров по электротех­нике и электронике IEEE была предпринята попытка объединить варианты системы. В этой работе приняли участие сотни людей из промышленных, академических и правительственных организаций. Коллективное название проекта — POSIX. Первые три буквы этого сокращения означали Portable Operating System — переносимая опе­рационная система. Буквы IX были добавлены, чтобы имя проекта выглядело юниксообразно. Комитет POSIX выработал стандарт из­вестный как 1003.1. Этот стандарт определяет набор библиотечных процедур, которые должна предоставлять каждая соответствующая данному стандарту система UNIX, таким образом, гарантируя, что эта программа будет работать на любой версии системы, поддерживаю­щей данный стандарт.

Все системы, созданные разными разработчиками, большие и сложные, что противоречит оригинальной идее, лежавшей в основе UNIX. Поэтому исходные тексты систем понять одному человеку просто не под силу. В 1987 г. Эндрю Таненбаум написал на ассемб­лере новую юниксоподобную систему MINIX, достаточно небольшую, чтобы ее можно было, понять, с доступным полным исходным тек­стом для использования в учебных целях. Система функционально практически эквивалентна системе Version 7 UNIX, бывшей оплотом большинства факультетов кибернетики.

Система MINIX была одной из первых юниксообразных систем, основанных на схеме микроядра. Идея микроядра заключается в том, чтобы реализовать как можно меньше функций в ядре, в результате чего можно создать надежное и эффективное ядро. Задачи управле­ния памятью и файловой системой были перемещены в процессы пользователя. Ядро обрабатывало передачу сообщений между процес­сами, не занимаясь другими задачами. По техническим причинам, связанным с архитектурой процессора Intel 8088, драйверы устройств ввода-вывода также были размещены в ядре. Файловая система и менеджер памяти работали как два раздельных пользовательских про­цесса.

Преимущество микроядер перед монолитными системами заклю­чается в том, что устройство микроядра легко понять, и поддержка системы, основанной на микроядре, проще благодаря модульной структуре такой системы. Кроме того, перемещение программного обеспечения из ядра в пространство пользователя существенно по­вышает надежность системы, так как сбой процесса, работающего в режиме пользователя, способен нанести меньший ущерб, чем сбой компонента в режиме ядра. Основной недостаток состоит в несколько меньшей производительности, связанной с дополнительными пере­ключениями из режима пользователя в режим ядра. На всех совре­менных системах UNIX оконная система X Windows работает в ре­жиме пользователя, в результате чего производительность несколько снижается, зато достигается большая модульность (в отличие от си­стемы Windows, у которой весь графический интерфейс пользовате­ля расположен в ядре). .

В 1991 г. финский студент Линус Торвальдс написал еще один клон системы UNIX, который назвал Linux. Это должна была быть полноценная операционная система, со многими функциями, отсут­ствующими в системе MINIX. Она заимствовала некоторые идеи системы MINIX, начиная со структуры дерева исходных текстов и кончая структурой файловой системы. Однако, в отличие от микро­ядерной системы MINIX, Linux была монолитной системой, т.е. вся ОС помещалась в ядре. Размер исходного текста приблизительно совпадал с версией MINIX. Функционально первая версия Linux так­же практически почти не отличалась от MINIX.

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

Следующим выпуском системы Linux была версия 1.0, появив­шаяся в 1994 г. Она включала новую файловую систему, отображе­ние файлов на адресное пространство памяти и совместимое с UNIX сетевое программное обеспечение. Данная версия также включала многие новые драйверы устройств.

К этому времени ОС Linux стала достаточно совместимой с UNIX, поэтому в нее было перенесено большое количество про­граммного обеспечения UNIX, что значительно увеличило полезность этой системы. Кроме того, операционная система Linux привлекла большое количество людей, которые начали работу над ее совершен­ствованием и расширением.

Следующая версия - 2.0, вышла в 1996 г. Она включала в себя поддержку 64-разрядной архитектуры, симметричной многозадачно­сти, новых сетевых протоколов и прочих многочисленных функций. Система также содержала внушительную коллекцию различных драй­веров устройств.

Необычной особенностью Linux является ее бизнес-модель: это свободно распространяющееся программное обеспечение. Ее можно скачать с различных Internet-сайтов, например www.kernel.org. Сис­тема Linux поставляется вместе с лицензией, разработанной Ричар­дом Столманом, основателем Фонда бесплатно распространяемых программ.

Обзор операционной системы UNIX

Операционная система UNIX представляет собой интерактивную систему, используемую для одновременной поддержки нескольких процессов и нескольких пользователей. В ОС UNIX есть достаточ­ное количество средств, позволяющих программистам и совместно работать, и управлять использованием общей информации.

ОС UNIX предназначена для опытных программистов. Это мощ­ная и гибкая система. Она характеризуется небольшим количеством базовых элементов, которые можно комбинировать бесконечным числом способов, чтобы приспособить их для конкретного приложе­ния. Одно из основных правил системы UNIX заключается в том, что каждая программа должна выполнять всего одну функцию, но делать это хорошо. В системе устранена бесполезная избыточность. Напри­мер, зачем писать сору, когда достаточно ср?

Операционную систему UNIX можно рассматривать в виде пирамиды (рис. 3.7). У основания пирамиды располагается аппаратное обеспечение, состоящее из ЦП, памяти, дисков, терминалов и дру­гих устройств, На аппаратном обеспечении работает система UNIX. Ее функция заключается в управлении аппаратным обеспечением и предоставлении всем программам системных вызовов. Эти систем­ные вызовы позволяют программам создавать процессы, файлы и прочие ресурсы и управлять ими.

Системное программное обеспечение 3 страница - student2.ru

Наши рекомендации