Главная » Просмотр файлов » Гордеев А.В. Операционные системы (2-е изд., 2004)

Гордеев А.В. Операционные системы (2-е изд., 2004) (1186250), страница 84

Файл №1186250 Гордеев А.В. Операционные системы (2-е изд., 2004) (Гордеев А.В. Операционные системы (2-е изд., 2004)) 84 страницаГордеев А.В. Операционные системы (2-е изд., 2004) (1186250) страница 842020-08-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 84)

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

Клавиатура и экран терминалатоже интерпретируются как файлы (первый можно только читать, а во второй мож­но только писать). Во-вторых, доступ к любому файлу производится через его де­скриптор (положительное целое число). Фиксируются три значения дескрипто­ров файлов. Файл с дескриптором 1 называется файлом стандартного ввода (stdin),файл с дескриптором 2 — файлом стандартного вывода (stdout), и файл с дескрипто­ром 3 — файлом стандартного вывода диагностических сообщений (stderr).

В-треть­их, программа, запущенная в некотором процессе, «наследует» от породившегопроцесса все дескрипторы открытых файлов.Не путать с потоком выполнения, или тредом (thread).Семейство операционных систем UNIX323В головном процессе интерпретатора командного языка файлом стандартного вводаявляется клавиатура терминала пользователя, а файлами стандартного вывода ивывода диагностических сообщений — экран терминала.

Однако при запуске лю­бой команды можно сообщить интерпретатору (средствами соответствующего ко­мандного языка), какой файл или выход какой программы должен служить фай­лом стандартного ввода для запускаемой программы, а также какой файл или входкакой программы должен служить для запускаемой программы файлом стандарт­ного вывода или файлом вывода диагностических сообщений. Тогда интерпрета­тор перед выполнением системного вызова exec открывает указанные файлы, под­меняя смысл дескрипторов 1, 2 и 3.То же самое может проделать и любая другая программа, запускающая третьюпрограмму в специально созданном процессе.

Следовательно, все, что требуетсядля нормального функционирования механизма перенаправления ввода-выво­да, — это придерживаться при программировании соглашения об использованиидескрипторов stdin, stdout и stderr. Это не очень трудно, поскольку в наиболеераспространенных функциях библиотеки ввода-вывода printf, scant и error вооб­ще не требуется указывать дескриптор файла. Функция printf неявно используетдескриптор stdout, функция scant — дескриптор stdin, функция error — дескрип­тор stderr.Файловая системаФайл в системе UNIX представляет собой множество символов с произвольнымдоступом.

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

Этопозволяет повысить быстродействие файловых операций. Например, в системе FFS(Fast File System — быстродействующая файловая система) размер блока равен8192 байт.В рассматриваемой версии файловой системы раздел диска разбивается на следу­ющие области (рис. 10.1):Q неиспользуемый блок;0управляющий блок, или суперблок, в котором хранится размер логическогоДиска и границы других областей;аьсписок, состоящий из описаний файлов, называемых /-узлами;Q область для хранения содержимого файлов.324Глава 10.

Краткий обзор современных операционных системНеиспользуемый блокСуперблокi-узел 1i-узел 2i-узел З>i-узел пБлок с данными файлаБлок с данными файлаБлок с данными файлаСвободный блокФайлСвободный блокРис. 1 0 . 1 . Организация файловой системы в ОС UNIXКаждый г'-узел содержит:Q идентификатор владельца;Q идентификатор группы владельца;Q биты защиты;Q физические адреса на диске или ленте, где находится содержимое файла;Q размер файла;••время создания файла;время последнего изменения (modification time) файла;Семейство операционных систем UNIX•время последнего изменения атрибутов (change time) файла;•число связей-ссылок, указывающих на файл;325О индикатор типа файла (каталог, обычный файл или специальный файл).Следом за z'-списком идут блоки, предназначенные для хранения содержимогофайлов.

Пространство на диске, оставшееся свободным от файлов, образует свя­занный список свободных блоков.Таким образом, файловая система UNIX представляет собой структуру данных,размещенную на диске и содержащую управляющий суперблок с описанием фай­ловой системы в целом, массив г-узлов, в котором определены все файлы в файло­вой системе, сами файлы и, наконец, совокупность свободных блоков. Выделениепространства под данные осуществляется блоками фиксированного размера.Каждый файл однозначно идентифицируется старшим номером устройства, млад­шим номером устройства и i-номером (индексом г-узла данного файла в массивег'-узлов). Когда вызывается драйвер устройства, по старшему номеру индексиру­ется массив входных точек в драйверы. По младшему номеру драйвер выбираетодно устройство из группы идентичных физических устройств.Файл-каталог, в котором перечислены имена файлов, позволяет установить соот­ветствие между именами и самими файлами.

Каталоги образуют древовиднуюструктуру. На каждый обычный файл или файл устройства могут иметься ссылкив различных узлах этой структуры. В непривилегированных программах записьв каталог не разрешена, но при наличии соответствующих разрешений они могутчитать их. Дополнительных связей между каталогами нет.Большое число системных каталогов UNIX использует для собственных нужд.Один из них, корневой каталог, является базой для всей структуры каталогов, и,«отталкиваясь» от него, можно найти все файлы. В других системных каталогахсодержатся программы и команды, предоставляемые пользователям, а также фай­лы устройств.Имена файлов задаются последовательностью имен каталогов, разделенных ко­сой чертой (/) и приводящих к концевому узлу (листу) некоторого дерева. Еслиимя файла начинается с косой черты, то поиск по дереву начинается в корневомкаталоге.

Если же имя файла не имеет в начале косой черты, то поиск начинается стекущего каталога. Имена файлов, начинающиеся с символов ../ (две точки и ко­сая черта), подразумевают начало поиска в каталоге, родительском по отношениюк текущему. Имя файла stuff (персонал) указывает на элемент stuff в текущем ка­талоге. Имя файла /work/alex/stuff приводит к поиску каталога work в корневомкаталоге, затем к поиску каталога aLex в каталоге work и, наконец, к поиску элемен­та stuff в каталоге aLex. Сама по себе косая черта (/) обозначает корневой каталог.В приведенном примере нашла отражение типичная иерархическая структура фай­ловой системы, например work может обозначать диск (устанавливаемый при ра­боте пользователя), alex может быть каталогом пользователя, a stuff может при­надлежать a lex.Файл, не являющийся каталогом, может встречаться в различных каталогах, воз­можно, под разными именами.

Это называется связыванием. Элемент в каталоге,326Тлава 10. Краткий обзор современных операционных системотносящийся к одному файлу, называется связью. В UNIX-системах все такие связиимеют равный статус. Файлы не принадлежат каталогам. Скорее, файлы существу­ют независимо от элементов каталогов, а связи в каталогах указывают на реальные(физические) файлы.

Файл «исчезает», когда удаляется последняя связь, указы­вающая на него. Биты защиты, заданные в связях, могут отличаться от битов в ис­ходном файле. Таким образом решается проблема избирательного ограничения надоступ к файлам.С каждым поддерживаемым системой устройством ассоциируется один или боль­шее число специальных файлов. Операции ввода-вывода для специальных фай­лов осуществляются так же, как и для обычных дисковых файлов с той лишь раз­ницей, что эти операции активизируют соответствующие устройства. Специальныефайлы обычно находятся в каталоге /dev. На специальные файлы могут указыватьсвязи точно так же, как на обычные файлы.От файловой системы не требуется, чтобы она целиком размещалась на том уст­ройстве, где находится корень.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6549
Авторов
на СтудИзбе
300
Средний доход
с одного платного файла
Обучение Подробнее