8783

Файловая система UNIX

Доклад

Информатика, кибернетика и программирование

Файловая система UNIX. Одними из базовых принципов UNIX являются: представление всех объектов, включая устройства, как файлов взаимодействие с файловыми системами разных типов, в том числе NFS. Сетевая файловая система NF...

Русский

2013-02-17

57.5 KB

3 чел.

Файловая система UNIX.

Одними из базовых принципов UNIX являются [6, с. 652-660]:

  •  представление всех объектов, включая устройства, как файлов
  •  взаимодействие с файловыми системами разных типов, в том числе NFS.

Сетевая файловая система NFS (Network File System) и соответствующий протокол были разработаны компанией Sun Microsystems для использования дискового пространства в сетевой среде. Отличительной особенностью действия NFS является отсутствие сохранения состояния, т.е. любое взаимодействие между клиентом и сервером не использует информацию о предыдущих сеансах. Компания Sun опубликовала (в Internet) спецификацию NFS, что позволило устранить конфликты монтирования в другие файловые системы, в том числе и UFS.

Файловая система UFS (UNIX File System) произошла от s5 – файловой системы SVr4 и имеет иерархическую древовидную структуру, содержащую файлы следующих типов:

«d» – директории (каталоги, справочники)  «-» - обычные файлы

«|» - символьные связи (каналы)    «b» - блочные файлы (конвеер “.bat”)

«с» - специальные символьные файла (устройства)

Важным в UFS являются понятия корневого, рабочего и текущего директориев. Корневой директорий обозначается «/» и является корнем перевёрнутого дерева UFS. Текущий директорий обозначается «.» и используется для относительной адресации в запущенных из него программах. Выше лежащий каталог (родительский) обозначается «..». Для каждого пользователя устанавливается его личный каталог, называемый рабочим.

Любая файловая система может быть встроена (смонтирована) в любое место дерева UFS. Например, как это показано на рис.

Для любого файла создается дискриптор - индексный узел (inode), хранящийся на диске и копируемый в оперативную память.

В дискрипторе хранится:

  •  Тип файла
  •  Идентификатор владельца и его группы
  •  Список прав доступа, которым относится: «-» - отсутствие каких-либо прав, «r» - право на чтение, «w» - право на запись, «х» - право на выполнение (запуск). Права определяются: для владельца файла, группы владельца и всех прочих.
  •  Время создания, время последних обновления и доступа к файлу
  •  Счётчик ссылок на узел
  •  Адреса блоков файла, адреса списков блоков файла в других дискрипторах (косвенно заданные блоки), адреса косвенно заданных блоков файла в других дискрипторах (дважды косвенно заданные блоки), трижды косвенно заданные блоки и т.д.

Например, полная информация о директории bin, выведенная командой ls, выглядит как -

d rwx  --x    r–x 3 admin admins 96 Oct 27 08:16 bin

│ │ │       │  │ │ │    │    │    │ └→ имя

дире-й┘ │ │       │  │ │ │    │    │    └→ время последнего изменения/создания

права вл.┘ │       │  │ │ │    │    └→ дата последнего изменения/создания

права гр. вл.  ┘       │  │ │ │    └→ размер в байтах

         │  │ │ └→ группа владельца

         │  │ └→ имя владельца

         │  └→ число связей (количество поддиректориев + 2)

         └→ права всех прочих пользователей

Имена файлов могут содержать любые знаки латинского алфавита, включая пробелы и точки (имена скрытых файлов начинаются с точки). Строчные и прописные буквы различаются всегда.

Интерес представляет организация данных на жестком диске. Все данные хранятся блоками, состоящими из слов по 64 байта каждое.

Блок 0 Boot

Блок 1 Суперблок

Блоки с 2 по N

Дискрипторы

Блоки с N+1

Данные

Суперблок

Загрузочный блок 0 (boot) содержит загрузочную информацию и, строго говоря, не относится к файловой системе.

Суперблок 1 хранит служебную информацию –

  •  Размер блока в 64 байтовых словах
  •  Общее число блоков
  •  Количество свободных блоков
  •  Список свободных блоков с их физическими адресами
  •  Общее число блоков дискрипторов (N-2)
  •  Количество свободных блоков дискрипторов
  •  Список свободных блоков дискрипторов
  •  Флаги для синхронизации доступа к свободным блокам

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

В блоках данных (с N+1) хранится как само содержимое файлов, так и списки свободных для записи блоков.


 

А также другие работы, которые могут Вас заинтересовать

20436. Модель клиент-сервер 39 KB
  Модель клиентсервер До этого момента мы вряд ли сказали чтото о действительной организации распределенных систем более интересуясь тем как в этих системах организованы процессы. Они пришли к выводу о том что мышление в понятиях клиентов запрашивающих службы с серверов помогает понять сложность распределенных систем и управляться с ней. В этом разделе мы кратко рассмотрим модель клиентсервер. Клиенты и серверы В базовой модели клиентсервер все процессы в распределенных системах делятся на две возможно перекрывающиеся группы.
20437. Разделение приложений по уровням 76 KB
  Например сервер распределенной базы данных может постоянно выступать клиентом передающим запросы на различные файловые серверы отвечающие за реализацию таблиц этой базы данных. В этом случае сервер баз данных сам по себе не делает ничего кроме обработки запросов. Однако рассматривая множество приложений типа клиентсервер предназначенных для организации доступа пользователей к базам данных многие рекомендовали разделять их на три уровня: уровень пользовательского интерфейса; уровень обработки; уровень данных. Уровень обработки обычно...
20438. CASE-средства 1.81 MB
  В предыдущей лекции было рассказано о видах диаграмм UML и даны некоторые рекомендации относительно последовательности их построения. Мы уже знаем что нотация UML специально разрабатывалась в расчете на то чтобы диаграммы можно было легко рисовать от руки. В этой лекции мы познакомимся с некоторыми подобными пакетами а именно: IBM Rational Rose; Borland Together; Microsoft Visio; Sparx Systems Enterprise Architect; Gentleware Poseidon; SmartDraw; Dia; Telelogic TAU G2; StarUML; другие программы UML отличное средство моделирования но как...
20439. Rational Rose DataModeler 29.5 KB
  Унифицированный язык объектноориентированного моделирования Unified Modeling Language UML явился средством достижения компромисса между этими подходами. Существует достаточное количество инструментальных средств поддерживающих с помощью UML жизненный цикл информационных систем и одновременно UML является достаточно гибким для настройки и поддержки специфики деятельности различных команд разработчиков. Таким языком оказался UML. Создание UML началось в октябре 1994 г.
20440. CASE-средства 39.5 KB
  Microsoft Visio Visio решение для построения диаграмм от Microsoft. По словам разработчиков Visio помогает преобразовать технические и бизнесконцепции в визуальную форму. Visio имеет некоторые дополнительные возможности но все же повторим по большей мере это только средство для иллюстрирования документов MS Office не дотягивающее до уровня пакетов которые мы описывали ранее. Изобразительные же возможности Visio действительно весьма широки: Используя предопределенные фигуры Visio Professional draganddrop и мастера вы можете...
20441. Эволюция CASE-средств 99.5 KB
  Таким образом CASEтехнологии не могут считаться самостоятельными методологиями они только делают более эффективными пути их применения. CASE ≈ не революция в программо технике: современные CASEсредства являются естественным продолжением эволюции всей отрасли средств разработки ПО. Традиционно выделяют шесть периодов качественно отличающихся применяемой техникой и методами разработки ПО которые характеризуются использованием в качестве инструментальных следующих средств: ассемблеров дампов памяти анализаторов компиляторов...
20442. Варианты архитектуры клиент-сервер 122 KB
  Варианты архитектуры клиентсервер Разделение на три логических уровня обсуждавшееся в предыдущем пункте наводит на мысль о множестве вариантов физического распределения по отдельным компьютерам приложений в модели клиентсервер. Серверы реализующие все остальное то есть уровни обработки и данных. Проблема подобной организации состоит в том что на самом деле система не является распределенной: все происходит на сервере а клиент представляет собой не что иное как простой терминал. Многозвенные архитектуры Один из подходов к организации...
20443. Введение в UML 54.5 KB
  Модель физического уровня в языке UML отражает компонентный состав проектируемой системы с точки зрения ее реализации на аппаратурной и программной платформах конкретных производителей. Сущности в UML В UML определены четыре типа сущностей: структурные поведенческие группирующие и аннотационные. Структурные сущности это имена существительные в моделях на языке UML.
20444. Document Object Model 54 KB
  Модель DOM не накладывает ограничений на структуру документа. Любой документ известной структуры с помощью DOM может быть представлен в виде дерева узлов каждый узел которого представляет собой элемент атрибут текстовый графический или любой другой объект. Изначально различные браузеры имели собственные модели документов DOM не совместимые с остальными.