Язык SQL

Замечание о повышении эффективности при доступе по блокам


Большинство операционных систем предлагают механизм определения блочного размера для файлов, т,е. минимального количества данных, которые можно считать или записать при одном доступе. Этот размер можно определять для каждого дискового устройства отдельно. Размер блока может быть, .небольшим и составлять всего два сектора (1 Кбайт). Для приложений, нуждающихся в высокопроизводительном доступе к большим объемам данных, блок может иметь гораздо больший размер и занимать одну или несколько дорожек целиком. На диске Seagate Cheetah 73 одна дорожка содержит более 20 Кбайт. Если поместить вместе восемь дисков и рассматривать их как единую файловую систему, можно даже определить размер блока как одну дорожку для всех дисков —160 Кбайт для Seagate Cheetah 73.

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

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

Комментарии закрыты