Операционные системы - статьи



Файловая система - часть 2


как правило сосредоточены в директории "/dev".

Вот некоторые из них (в номинации FreeBSD):

  • tty* - терминалы, в т.ч.:

  • ttyv<цифра> - виртуальная консоль;
  • ttyd<цифра> - DialIn терминал (обычно последовательный порт);
  • cuaa<цифра> - DialOut линия
  • ttyp<цифра> - сетевой псевдо-терминал;
  • tty - терминал, с которым ассоциирована задача;

  • wd* - жесткие диски и их подразделы, в т.ч.:

    • wd<цифра> - жесткий диск;
    • wd<цифра>s<цифра> - партиция этого диска (именуемая здесь "slice");
    • wd<цифра>s<цифра><буква> - раздел партиции;

  • fd<цифра>[<буква>] - floppy-диск;
  • rwd*, rfd* - то же самое, что wd* и fd*, но с последовательным доступом;

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

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

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

    (В качестве примера приведу программу, которая читает файл с вопросами и

    ответами и на основании прочитанного тестирует запустившего эту программу

    студента. Программа должна иметь право читать файл с ответами, а запустивший

    ее студент - нет.) Так, например, работает программа passwd, с помощью которой

    юзер может изменить свой пароль. Юзер может запустить программу passwd,

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

    не может.

    В отличие от DOS, в котором полное имя файла выглядит как "диск:\путь\имя",

    и RISC-OS, в которой оно выглядит "-файловая_система-диск:$.путь.имя"

    (что вообще говоря имеет свои преимущества), Unix использует прозрачную

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

    было загружено ядро Unix. Если мы собираемся использовать другой раздел

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

    для загрузки), используется команда `mount /dev/файл_раздела директория`.

    При этом файлы и поддиректории, ранее находившиеся в этой директории,

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

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

    Производить монтирование и размонтирование имеет право только супервизор.

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

    файла, которые ему известны как стандартный ввод stdin по дескриптору 0;

    стандартный вывод stdout по дескриптору 1; и стандартный вывод stderr

    по дескриптору 2. При регистрации в системе, когда пользователь вводит

    имя и пароль, а ему запускается shell, все трое направлены на /dev/tty;

    позже любой из них может быть перенаправлен в любой файл.




    Содержание  Назад  Вперед