Смекни!
smekni.com

Организация дaнных на устройствах с прямым и последовательным доступом

Организация дaнных на устройствах с прямым и последовательным доступом

Метод доступа

По методу доступа к информации накопители разделяются на:

устройства с прямым (или непосредственным) доступом,

устройства с последовательным доступом

устройства с прямым (или непосредственным) доступом

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

В устройстве хранения с прямым доступом (Direct Access Storage Device, DASD) есть возможность обращения к блокам по их адресам в произвольном порядке и, что важно, допускается произвольное чередование операций записи и чтения блоков. Традиционными устройствами с прямым доступом являются дисковые накопители, и часто в понятие «диск», или «дисковое устройство» (disk device), вкладывают значение «накопитель прямого доступа». Так, например, виртуальный диск в ОЗУ и электронный диск на флэш-памяти отнюдь не имеют круглых, а тем более вращающихся деталей.

устройства с последовательным доступом

В информатике последовательный доступ означает, что доступ к группе элементов (например, данные в памяти, на диске или на магнитной ленте) осуществляется в заранее заданном порядке. Последовательный доступ иногда является единственным способом обратиться к данным, как, например, к записям на магнитной ленте. Кроме того, иногда это может быть всего лишь одним из методов доступа к данным, например, мы можем предпочесть этот способ если мы хотим обработать последовательность элементов данных по порядку. Что касается структур данных, то она (структура данных) подразумевает последовательный доступ, если за каждый конкретный момент времени можно обратиться лишь к одному элементу структуры, причем доступ к элементам происходит в определенном порядке. Каноническим примером служит связанный список. Индексация в списке с последовательным доступом требует O(k) времени, где k - индекс. В результате, многие алгоритмы, такие как быстрая сортировка и двоичный поиск вырождаются в малопригодные алгоритмы, которые еще менее эффективны, чем их упрощенные альтернативы; эти алгоритмы бесполезны без произвольного доступа. С другой стороны, некоторые алгоритмы, обычно те, которые не выполняют индексацию, требуют только последовательный доступ, как например, сортировка слиянием, что позволяет избавиться от указанных проблем.

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