Реферат: Операционная система UNIX
Все справочники, которые вы создаете, будут размещены в вашем собственном справочнике. Этот справочник назначается вам системой во время входа в систему. Никто кроме привилегированных пользователей не может читать или записывать файлы в этот справочник без вашего разрешения и вы определяете структуру этого справочника.
3.2.4.3 Специальные файлы.
Специальные файлы, предназначенные для работы с устройствами как правило сосредоточены в директории "/dev".
3.2.4.4.Файловая система.
В старых Unix'ах отводилось 14 букв на имя, в новых это ограничение снято. В директории кроме имени файла находится его идентефикатор inode - целое число, определяющее номер блока, в котором записаны атрибуты файла. Среди них: номер пользователя - хозяина файла; номер группы; количество ссылок на файл (см.далее) даты и время создания, последней модификации и последнего обращения к файлу; атрибуты доступа. Атрибуты доступа содержат тип файла (см.далее), атрибуты смены прав при запуске (см.далее) и права доступа к нему для хозяина, одногрупника и остальных на чтение, запись и выполнение. Право на стирание файла определяется правом записи в вышележащую директорию.
Каждый файл (но не директория) может быть известен под несколькими именами, но обязательно лежащими на одном разделе. Все ссылки на файл равноправны; файл стирается, когда удаляется последняя ссылка на файл. Если файл открыт (для чтения и/или записи), то число ссылок на него увеличивается еще на единицу; так многие программы, открывающие временный файл, сразу удаляют его, чтобы при аварийном завершении, когда операционная система закрывает открытые процессом файлы, этот временный файл был удален операционной системой.
Есть еще одна интересная особенность файловой системы: если после создания файла запись в него шла не подряд, а с большими интервалами, то для этих интервалов место на диске не выделяется. Таким образом суммарный обьем файлов в разделе может быть больше обьема раздела, а при удалении такого файла освобождается меньше места, чем его размер.
В отличие от DOS, в котором полное имя файла выглядит как "диск:\путь\имя", и RISC-OS, в которой оно выглядит "-файловая_система-диск:$.путь.имя" (что вообще говоря имеет свои преимущества), Unix использует прозрачную нотацию в виде "/путь/имя". Корень отсчитывается от раздела, с которого было загружено ядро Unix. Если мы собираемся использовать другой раздел (а на загрузочном разделе как правило находится только самое необходимое для загрузки), используется команда `mount /dev/файл_раздела директория`. При этом файлы и поддиректории, ранее находившиеся в этой директории, становятся недоступными, пока не раздел не будет размонтирован (естественно, все нормальные люди используют для монтирования разделов пустые директории). Производить монтирование и размонтирование имеет право только суперпользователь.
При запуске каждый процесс может расчитывать, что для него уже открыты три файла, которые ему известны как стандартный ввод stdin по дескриптору 0; стандартный вывод stdout по дескриптору 1; и стандартный вывод stderr по дескриптору 2. При регистрации в системе, когда пользователь вводит имя и пароль, а ему запускается shell, все трое направлены на /dev/tty; позже любой из них может быть перенаправлен в любой файл.
3.3. Подключение к UNIX.
Чтобы установить контакт с системой UNIX вам необходимо иметь:
терминал Терминал является устройством ввода/вывода: вы используете его для ввода запросов системе UNIX, а система - для выдачи ответов вам. Существует два основных вида терминалов: видеотерминал и печатающий терминал.
Видеотерминал отображает ввод и вывод на экране дисплея;
Печатающий терминал постоянно подает на бумагу. Во многих случаях эти различия никак не влияют на действия пользователя или на ответы системы. В этой документации все, что выводится на экран терминала, как же отображается и печатающим терминалом, если не сделаны какие-либо замечания;
регистрационное имя, которое идентифицирует вас как полномочного пользователя;
пароль, который проверяет вас на идентичность;
инструкции для диалога и доступа к системе UNIX, если ваш терминал напрямую не связан с компьютером.
Отличия операционной системы 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-терминалы, когда на одном экране присутствуют окна процессов, выполняющихся на разных машинах.