Консорциум производителей программного обеспечения для www

Консорциум производителей програм много обеспечения для WWW (World Wide Web Consortium, W3C) был образован в 1994 году для продвижения WWW путем разработки стандартов протоколов. W3C был основателем XML. Проекты, которые в данный момент рассматриваются W3C, включают разработку стандартов для семантической сети, в которой (если говорить упрощенно) информация, хранящаяся в Интернете, связана по значению, а не по ключевым словам. Штаб-квартира W3C находится в CERN, лаборатории быстрых частиц в Женеве, Швейцария. В CERN был разработан первоначальный вариант языка разметки HTML, атаюке протокол HTTP для передачи HTML-документов через Интернет. Подробнее о W3C можно узнать на их веб-узле по адресу http://www.w3c.org.

Другой подход — оставлять задачу определения EOF операционной системе. Например, если файл хранится на диске и операционная система получает записи при помощи списка секторов, тогда она знает, где находится конец файла, к которому производится доступ. Сообщить об этом приложению она может при помощи переменной под названием EOF, принимающей значения true и false в зависимости от того, достигнут ли конец файла. В этом случае приложение может содержать такие операторы:

while (не EOF) do

(получить запись из файла и обработать ее)

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

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

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

Листинг 8.1. Процедура слияния двух последовательных файлов

procedure MergeFiles (InputFileA. InputFileB, OutputFile) if (достигнут EOF обоих файлов)

then (Stop, файл OutputFile пуст) if (не EOF для InputFileA)

then (объявить его первую запись его текущей записью) if (не EOF для InputFileB)

then (объявить его первую запись его текущей записью) while (не достигнут EOF ни одного из файлов) do

(поместить текущую запись с «меньшим» значением ключевого поля в OutputFile:

if (эта текущая запись является последней в соответствующем входном файле) then (объявить, что этот входной файл достиг EOF) else (объявить следующую запись в этой входном файле текущей записью этого файла)

)

Начиная с текущей записи входного файла, не достигшего EOF, скопировать оставшиеся записи в OutputFile.

Текстовые файлы

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: