Копирование файлов
Копирование файлов
Пять различных вариантов реализации программ копирования файлов использовались для копирования файла размером 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Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Копирование файлов с использованием стандартной библиотеки С
Копирование файлов с использованием стандартной библиотеки С Как видно из текста программы 1.1, стандартная библиотека С поддерживает объекты потоков ввода/вывода FILE, которые напоминают, несмотря на меньшую общность, объекты Windows HANDLE, представленные в программе
Копирование файлов с использованием Windows
Копирование файлов с использованием Windows В программе 1.2 решается та же задача копирования файлов, но делается это с помощью Windows API, а базовые приемы, стиль и соглашения, иллюстрируемые этой программой, будут использоваться на протяжении всей этой книги.Программа 1.2. cpW:
Копирование файлов
Копирование файлов Пять различных вариантов реализации программ копирования файлов использовались для копирования файла размером 25,6 Мбайт (400 000 записей размером 64 байта каждая, сгенерированных с помощью программы RandFile из главы 5). В первых двух столбцах табл. В.1
Копирование файлов сервера
Копирование файлов сервера Сформировав поддерево chroot, надо скопировать в содержащиеся в нем каталоги требуемые файлы. Набор необходимых файлов зависит от особенностей сервера. Если сервер самостоятельно вызывает функцию chroot(), вам нет необходимости размещать в
Копирование системных файлов
Копирование системных файлов После того как вы разместите в пределах поддерева chroot файлы сервера, вам следует скопировать в каталоги поддерева некоторые системные файлы. Для работы серверов часто требуются следующие типы файлов.• Библиотеки. Во время работы многие
12.2 Копирование, перемещение и удаление файлов
12.2 Копирование, перемещение и удаление файлов Хоть я и обещал не объяснять основы использования компьютера, позволю вам напомнить несколько полезных сочетаний клавиш, используемых для управления файлами и папками:• Ctrl—C — копировать выделенные объекты в буфер
Копирование файлов
Копирование файлов Как описано ниже в главе "Состав модулей InterBase", минимальный корректный клиент InterBase состоит из трех файлов - gds32.dll, interbase.msg и msvcrt.dll.Опытные специалисты могут заявить, что абсолютный минимум - это библиотека gds32.dll, которую можно положить в тот же каталог, в
Копирование файлов сервера
Копирование файлов сервера Здесь приведен пример для установки InterBase архитектуры SuperServer, как наиболее распространенный случай. При установке сервера копируются файлы, список которых и место назначения приведены в табл. 4.2.Табл 4.2. Файлы для установки
Копирование, изменение и удаление файлов
Копирование, изменение и удаление файлов С помощью подходящих методов объект File можно скопировать, переместить или удалить:objFilel.Сору "с:героические усилия"objFilel.Move "с:минимальные результаты"objFile l.DeleteЗаметьте, что если вы не меняете имя файла, в операторах, использующих
Копирование звуковых файлов
Копирование звуковых файлов 1. Вставьте в привод компакт-диск, который хотите скопировать, и запустите программу Nero StartSmart.2. Перейдите на вкладку Rip and Burn (Перенос и запись).3. Щелкните кнопкой мыши на задании Rip Audio CD (Перенос аудио-CD). Откроется окно приложения Nero Burning ROM с
Копирование файлов системы
Копирование файлов системы Итак, набор дополнительных программ и компонентов системы для установки выбран. Теперь наступает самая приятная часть установки системы, во время которой вообще ничего делать не надо. Нужно только подождать некоторое время, пока все файлы,
Создание, копирование и перемещение файлов и каталогов
Создание, копирование и перемещение файлов и каталогов Способы манипуляции с файлами и каталогами, как правило, интуитивно понятны при использовании современных операционных систем с графическим интерфейсом, однако все же требуют некоторого пояснения.Основными
Перемещение и копирование файлов и папок
Перемещение и копирование файлов и папок В результате копирования файла будет создан еще один его экземпляр, но в другом месте или с другим именем. При перемещении файл будет скопирован в новое место, а затем удален со старого.Для перемещения или копирования файлов и
Глава 9 Хранение файлов и резервное копирование
Глава 9 Хранение файлов и резервное копирование Для создания копий, которые необходимы как для сохранения информации, так и для обмена ею между пользователями, используются различные устройства:• стримеры;• цифровые магнитофоны формата DAT (digital audio tape), ADAT (Alesis DAT), DCC (digital