Студопедия

Главная страница Случайная лекция


Мы поможем в написании ваших работ!

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика



Мы поможем в написании ваших работ!




Система управления данными

Читайте также:
  1. II. ОСНОВЫ СИСТЕМАТИКИ И ДИАГНОСТИКИ МИНЕРАЛОВ
  2. Ms Project и его место в сфере программного обеспечение для управления проектами
  3. PR как система
  4. PR как функция управления коммуникациями
  5. А) Система источников таможенного права.
  6. Автоматизация управления на ЖДТ.
  7. Автоматизированная система управления гибкой производственной системой (АСУ ГПС)
  8. Автоматическая система сигнализации
  9. Автономная нервная система.
  10. Агрегат управления машиной на плаву

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

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

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

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

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

· средства, обеспечивающие распределение ВП для хранения файлов, а также ее освобождение по мере уничтожения файлов;

· средства учета расположения файлов.

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

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

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

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

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

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

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

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

В ряде файловых систем предполагаетсяч использование более сложных логических структур файлов, нежели последовательная. Например. Записи м.б. обеденены такой системой связей, при которой файл представляет собой совокупность данных с древовидной организацией. Весьма распространенными являются структуры, которые предполагают некоторый вид ассоциативного поиска и обращения к составным элементам файлов. Эти методы основаны на идентификации записей файла по некоторому ключу, в качкстве которого выступает некоторое поле данных в составе записи. Предложено и используется много способов упорядочения и поиска записей по ключу. Наиболее простым является метод последовательного просмостра записей в файле, упорядоченных по различным ключам. В состав файлов вводят некоторую учетную инофрмацию. Получается «мини-файловая система». Широко используется индексно-последовательная организация файла. Такая структура строится так, что поиск элементов файла производится с помощью двух методов: в последовательном и в прямом (произвольном) порядке. Каждая логическая запись файла содержит ключ - некоторый индивидуальный отдичительный признак. Все записи в файле упорядочиваются по значению ключей. В файл с такой организацией можно выделить группы записей, ключи которых расположены подряд в файле. Эти группы хранятся в некоторой локальной области ВП, например в пределах одной дорожки на диске. Для быстрого поиска таких групп строят специальную структуру, называемую индексом. Каждый элемент индекса описывает отдельную группу записей. Чаще всего индекс модержит значение максимального (в текущий момент времени) ключа в группе и ссылку на начальную запись в группе. Построение индексов производят для увеличения скорости поиска нужной записи в файле по искомому ключу. Для поиска записи с некоторым ключом необходимо обратиться сначала к индексу файла и определить группу записей, в диапазон значений ключей которой входит искомый ключ. По индексу находят начало перавой записи требуемой группы, а затем, обращаясь к самой группе, последовательным анализом ключей в каждой записи находят требуемую запись. (как в толковом слолваре)

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

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

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

Наиболее развитым механизмом распределения можно считать механизм, реализованный в ОС UNIX. Система потенциально ориентирует пользователя на возможность динамического изменения размеров файлов в пределах до 1 Гбайта. Каждый файл имеет свой дескриптор, в составе которого хранится список, содержащий 13 номеров блоков на диске. Список используется для адресации к тем блокам, которые входят в состав файла. Используется как прямая, так и косвенная адресация. Первые десять элементов списка непосредственно указывают на десять блоков, в которых могут размещаться данные файла. Есля файл большего размера, то используется последующие три элемента списка. Одинадцатый элемент используется для одноуровневой косвенной адресации. В нем указан номер блока, хранящий список из 128 номеров блоков, которые могут принадлежать к данному файлу. Обращение к ним косвенное - яерез блок первого уровня косвенной адресауии. Если размер файла больше (10+128 блоков), то требуется использовать двеннадцатый или даже тринадцатый элемент. Следовательно можно адресоваться уже к 1282 + 128 + 138 блокам. С помощью тринадцатого элемента производится обращение к блоку, содержащему список из 128 номеров блоков второго уровня косвенной адресации. Итак, имеется потенциальная возможность использовать чрезвычайно большие по объему файлы.

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

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

(дополнить - файловая система WINDOWS)


<== предыдущая страница | следующая страница ==>
Управление вводом-выводом | Демократия: история и современность

Дата добавления: 2014-11-24; просмотров: 411; Нарушение авторских прав




Мы поможем в написании ваших работ!
lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.003 сек.