Копирование файлов

Копирование файлов

Пять различных вариантов реализации программ копирования файлов использовались для копирования файла размером 25,6 Мбайт (400 000 записей размером 64 байта каждая, сгенерированных с помощью программы RandFile из главы 5). В первых двух столбцах табл. В.1 представлены результаты, полученные на лэптопе (LT) устаревшей модели, в котором установлен процессор Pentium с частотой 500 МГц, что позволяет сопоставить между собой показатели производительности в случае файловых систем NTFS и FAT.

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

2. Программа cpW (программа 1.2) является реализацией, в которой используются непосредственно средства Windows с буфером небольшого размера (256 байт).

3. Программа cpwFA — "быстрый" вариант реализации с использованием буфера большого размера (8192 байта, что кратно размеру сектора диска на всех хост-системах) и флагов Windows, задающих последовательный режим обработки как для входных, так и для выходных файлов.

4. Программа cpCF (программа 1.3) использует функцию Windows CopyFile для выяснения того, является ли реализация, ограничивающаяся единственным системным вызовом, более эффективной по сравнению с другими методиками.

5. Программа cpUC (программа 1.1) — реализация в стиле UNIX, использующая буфер небольшого размера (аналогично программе cpW). Эта программа была незначительно изменена, чтобы обеспечить возможность использования библиотеки совместимости с UNIX, входящей в состав Visual C++.

В то время как приведенные результаты представляют величины, усредненные по пяти тестовым запускам, сами значения истекшего времени могут меняться в широких пределах. Так, для программы cpUC (последний ряд) среднее значение истекшего времени в третьем столбце данных (Pentium LT, W2000) составило 7,77 секунды, тогда как минимальное и максимальное значения составляли соответственно 1,87 и 11,71 секунды. Такая широкая вариация значений была типичной почти во всех случаях и на всех системах.

Комментарии

1. Применение файловой системы NTFS вовсе не гарантирует лучшую по сравнению с системой FAT производительность. Более того, иногда более быстрой оказывается именно FAT, в чем можно убедиться, сравнивая данные, приведенные в столбцах 1 и 2.

2. Библиотеки совместимости С и UNIX обеспечивают сопоставимую производительность, которая во многих случаях превосходит производительность простейших вариантов реализации, использующих средства Windows.

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

4. Как и следовало ожидать, высокопроизводительные серверные SMP-системы действительно обеспечивают гораздо более быструю обработку файлов, чем лэптопы и PC. Дополнительные тесты, выполненные в системе Windows Server 2003, обладающей еще более высоким быстродействием, показали еще лучшие результаты (здесь они не представлены), причем значения истекшего времени оказались примерно в два раза меньшими по сравнению со значениями, приведенными в крайнем справа столбце таблицы.

5. Использование буферов большого размера, флагов последовательной обработки или функции CopyFile не обеспечивают систематического или существенного выигрыша в производительности, оцениваемой по истекшему времени. Вместе с тем, весьма небольшие значения показателей пользовательского времени для программ cpwFA и cpCF представляют интерес, и этим можно воспользоваться в некоторых ситуациях, даже если показатели истекшего времени при этом не улучшатся. Одна из систем, а именно, лэптоп с процессором Pentium, не подходит под данное обобщение. Как ранее уже отмечалось, процессорное время составляет лишь небольшую долю истекшего времени.

6. Показатели истекшего времени являются в высшей степени переменчивыми, причем в некоторых случаях отношение результатов, полученных в идентичных тестах, которые выполнялись в идентичных условиях, достигало значения 10:1.

Таблица В.1. Показатели производительности программ копирования файлов

ЦП Pentium III Pentium III Pentium LT Celeron LT Xeon 4?Xeon
ОС W2000 W2000 W2000 XP W2000 W2000
Файловая система FAT NTFS NTFS NTFS NTFS NTFS
cpC Реальное время 8,62 14,69 12,75 7,23 6,03 2,67
Пользовательское время 0,12 0,12 0,10 0,10 0,09 0,06
Системное время 0,24 0,52 1,39 0,39 0,25 0,36
cpW Реальное время 8,49 13,35 25,48 7,10 8,94 2,95
Пользовательское время 0,13 0,12 0,06 0,04 0,04 0,13
Системное время 0,88 1,37 4,61 0,62 0,56 0,13
cpwFA Реальное время 8,35 12,59 7,35 8,25 9,10 2,36
Пользовательское время 0,01 0,02 0,03 0,01 0,01 0,02
Системное время 0,40 0,50 0,82 0,29 0,20 0,19
cpCF Реальное время 8,00 11,69 2,57 6,50 7,62 2,97
Пользовательское время 0,02 0,01 0,02 0,02 0,01 0,02
Системное время 0,19 0,25 0,53 0,19 0,12 0,17
cpUC Реальное время 7,84 13,14 21,01 9,98 7,77 3,53
Пользовательское время 0,72 0,66 0,47 0,34 0,34 0,42
Системное время 0,40 0,67 3,12 0,34 0,36 0,41
Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Перемещение и копирование файлов и папок

Из книги Компьютер на 100. Начинаем с Windows Vista автора Зозуля Юрий

Перемещение и копирование файлов и папок В результате копирования файла будет создан еще один его экземпляр, но в другом месте или с другим именем. При перемещении файл будет скопирован в новое место, а затем удален со старого.Для перемещения или копирования файлов и


Копирование звуковых файлов

Из книги Nero 8 автора Кашеваров А

Копирование звуковых файлов 1. Вставьте в привод компакт-диск, который хотите скопировать, и запустите программу Nero StartSmart.2. Перейдите на вкладку Rip and Burn (Перенос и запись).3. Щелкните кнопкой мыши на задании Rip Audio CD (Перенос аудио-CD). Откроется окно приложения Nero Burning ROM с


Копирование файлов системы

Из книги Новейший самоучитель работы на компьютере автора Белунцов Валерий

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


Создание, копирование и перемещение файлов и каталогов

Из книги Системное программирование в среде Windows автора Харт Джонсон М

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


Копирование файлов с использованием стандартной библиотеки С

Из книги Сетевые средства Linux автора Смит Родерик В.

Копирование файлов с использованием стандартной библиотеки С Как видно из текста программы 1.1, стандартная библиотека С поддерживает объекты потоков ввода/вывода FILE, которые напоминают, несмотря на меньшую общность, объекты Windows HANDLE, представленные в программе


Копирование файлов с использованием Windows

Из книги VBA для чайников автора Каммингс Стив

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


Копирование файлов

Из книги Руководство по переходу на Ubuntu 10.04 LTS «Lucid Lynx» автора Неворотин Вадим

Копирование файлов Пять различных вариантов реализации программ копирования файлов использовались для копирования файла размером 25,6 Мбайт (400 000 записей размером 64 байта каждая, сгенерированных с помощью программы RandFile из главы 5). В первых двух столбцах табл. В.1


Копирование файлов сервера

Из книги Компьютерная обработка звука автора Загуменнов Александр Петрович

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


Копирование системных файлов

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

Копирование системных файлов После того как вы разместите в пределах поддерева chroot файлы сервера, вам следует скопировать в каталоги поддерева некоторые системные файлы. Для работы серверов часто требуются следующие типы файлов.• Библиотеки. Во время работы многие


Копирование, изменение и удаление файлов

Из книги Самоучитель работы на компьютере: быстро, легко, эффективно автора Гладкий Алексей Анатольевич

Копирование, изменение и удаление файлов С помощью подходящих методов объект File можно скопировать, переместить или удалить:objFilel.Сору "с:героические усилия"objFilel.Move "с:минимальные результаты"objFile l.DeleteЗаметьте, что если вы не меняете имя файла, в операторах, использующих


12.2 Копирование, перемещение и удаление файлов

Из книги Виртуальная библиотека Delphi автора

12.2 Копирование, перемещение и удаление файлов Хоть я и обещал не объяснять основы использования компьютера, позволю вам напомнить несколько полезных сочетаний клавиш, используемых для управления файлами и папками:• Ctrl—C — копировать выделенные объекты в буфер


Глава 9 Хранение файлов и резервное копирование

Из книги автора

Глава 9 Хранение файлов и резервное копирование Для создания копий, которые необходимы как для сохранения информации, так и для обмена ею между пользователями, используются различные устройства:• стримеры;• цифровые магнитофоны формата DAT (digital audio tape), ADAT (Alesis DAT), DCC (digital


Копирование файлов

Из книги автора

Копирование файлов Как описано ниже в главе "Состав модулей InterBase", минимальный корректный клиент InterBase состоит из трех файлов - gds32.dll, interbase.msg и msvcrt.dll.Опытные специалисты могут заявить, что абсолютный минимум - это библиотека gds32.dll, которую можно положить в тот же каталог, в


Копирование файлов сервера

Из книги автора

Копирование файлов сервера Здесь приведен пример для установки InterBase архитектуры SuperServer, как наиболее распространенный случай. При установке сервера копируются файлы, список которых и место назначения приведены в табл. 4.2.Табл 4.2. Файлы для установки