Системное программирование в среде Windows - [219]
6. Программа atouMT представляет собой многопоточную реализацию приведенной в главе 14 программы, основанной на схеме множественной буферизации без применения асинхронного ввода/вывода.
7. Программа atouOV (программа 14.1) использует перекрывающийся ввод/вывод и не может выполняться на двух системах семейства Windows 9x.
8. Программа atouEX (программа 14.2) использует перекрывающийся ввод/вывод и не будет выполняться на двух системах семейства Windows 9x.
1. Результаты показывают, что применение буферов увеличенного размера и флагов последовательной обработки (а возможно, и сочетания этих факторов) обеспечивает некоторый выигрыш в производительности.
2. Предварительная установка размера выходного файла (atouLSFP) очень эффективна и приводит к резкому повышению производительности на всех однопроцессорных системах. В то же время, преимущества SMP-систем оказались весьма незначительными. Эту же методику можно было применить и в предыдущих примерах копирования файлов.
3. В этих примерах процессорное время составляет лишь незначительную долю общего времени.
4. Помимо того, что использование перекрывающегося ввода/вывода ограничивается системами Windows NT и его трудно программировать, он обеспечивает очень низкую производительность. Заметьте, что основная доля общего времени приходится не на пользовательское или системное время, а на реальное время. Создается впечатление, что в случае NT4 система испытывает трудности с планированием доступа к диску, и это препятствие нельзя было устранить путем изменения размера буфера (как большую, так и в меньшую сторону) до тех пор, пока не были использованы буферы размером 65 Кбайт. В NT5 эта проблема не возникает.
5. Ни расширенный ввод/вывод, ни многопоточный режим не обеспечивают сколько-нибудь заметного повышения производительности.
6. Использование отображения файлов в операциях ввода/вывода способно увеличивать производительность, обеспечивая ее повышение примерно на 30% по сравнению с остальными методами. Результаты для SMP-сервера оказались еще лучшими.
Таблица В.2. Показатели производительности программ преобразования символов из кодировки ASCII в Unicode
ЦП | Pentium III | Pentium III | Pentium LT | Celeron LT | Xeon | 4×Xeon | |
---|---|---|---|---|---|---|---|
ОС | W2000 | W2000 | W2000 | XP | W2000 | W2000 | |
Файловая система | FAT | NTFS | NTFS | NTFS | NTFS | NTFS | |
atou | Реальное время | 3,24 | 7,16 | 33,53 | 6,27 | 5,77 | 2,77 |
Пользовательское время | 0,31 | 0,33 | 0,01 | 0,06 | 0,06 | 0,08 | |
Системное время | 0,46 | 0,72 | 3,55 | 0,54 | 0,63 | 0,63 | |
atouSS | Реальное время | 3,77 | 6,21 | 43,53 | 10,12 | 5,68 | 2,48 |
Пользовательское время | 0,20 | 0,23 | 0,11 | 0,07 | 0,04 | 0,14 | |
Системное время | 0,52 | 0,81 | 3,17 | 0,04 | 0,35 | 0,81 | |
atouLB | Реальное время | 4,38 | 6,41 | 28,51 | 5,95 | 4,75 | 2,47 |
Пользовательское время | 0,10 | 0,07 | 0,05 | 0,03 | 0,03 | 0,08 | |
Системное время | 0,26 | 0,34 | 0,63 | 0,19 | 0,21 | 0,187 | |
atouLSFP | Реальное время | - | - | 5,17 | 1,38 | 1,28 | 2,03 |
Пользовательское время | - | - | 0,07 | 0,05 | 0,09 | 0,06 | |
Системное время | - | - | 0,61 | 0,16 | 0,10 | 0,11 | |
atouMM | Реальное время | 4,35 | 2,75 | 3,46 | 3,90 | 3,74 | 0,77 |
Пользовательское время | 0,27 | 0,29 | 0,09 | 0,07 | 0,05 | 0,14 | |
Системное время | 0,19 | 0,19 | 0,16 | 0,14 | 0,10 | 0,09 | |
atouMT | Реальное время | 4,84 | 6,18 | 5,83 | 6,61 | 5,99 | 3,55 |
Пользовательское время | 0,14 | 0,15 | 0,26 | 0,04 | 0,06 | 0,02 | |
Системное время | 0,45 | 0,46 | 0,66 | 0,33 | 0,15 | 0,31 | |
atouOV | Реальное время | 9,54 | 8,85 | 32,42 | 6,84 | 5,63 | 3,17 |
Пользовательское время | 0,14 | 0,12 | 0,21 | 0,06 | 0,06 | 0,06 | |
Системное время | 0,24 | 0,23 | 0,42 | 0,18 | 0,21 | 0,17 | |
atouEX | Реальное время | 5,67 | 5,92 | 30,65 | 6,50 | 5,19 | 2,64 |
Пользовательское время | 1,10 | 1,50 | 0,29 | 0,35 | 0,41 | 0,64 | |
Системное время | 1,19 | 1,74 | 0,77 | 0,69 | 0,59 | 1,91 |
Поиск заданных комбинаций символов
Тестирование производительности путем выполнения поиска определенных текстовых шаблонов в содержимом файлов производилось с использованием трех различных методов, что позволило оценить сравнительную эффективность многопоточного и многопроцессного режимов, а также простой последовательной обработки файлов (см. табл. В.З).
1. Программа grepMP (программа 6.1) использует параллельные процессы, каждый из которых обрабатывает отдельный файл. Результаты измерений системного и пользовательского времени не приводятся, поскольку программа timep позволяет хронометрировать лишь родительские процессы.
2. Программа grepMT (программа 7.1) использует параллельные потоки.
3. Программа grepSQ — это пакетный файл DOS, обеспечивающий выполнение поиска шаблонов по очереди в каждом из файлов. В этом случае также приводятся только результаты, относящиеся к реальному времени.
В этом тесте использовались 20 файлов с размерами в пределах от нескольких Кбайт до 1 Мбайт.
1. В большинстве случаев все три методики приводят к близким результатам на однопроцессорных системах. Исключением является лэптоп с процессором Pentium, для которого версия grepMP систематически оказывалась самой медленной.
2. Многопоточный режим обладает лишь незначительными преимуществами по сравнению с многопроцессным даже на однопроцессорных системах.
3. Показатели пользовательского и системного времени имеют ощутимо заметные значения лишь в случае многопоточных версий
4. SMP-системы демонстрируют выигрыш в производительности, который достигается и при использовании многопоточного режима или нескольких однопоточных процессов. Заметьте, что общее пользовательское время превышает реальное время, поскольку характеризует одновременно все четыре процесса.
Сценарии командной оболочки помогают системным администраторам и программистам автоматизировать рутинные задачи с тех самых пор, как появились первые компьютеры. С момента выхода первого издания этой книги в 2004 году многое изменилось, однако командная оболочка bash только упрочила свои лидирующие позиции. Поэтому умение использовать все ее возможности становится насущной необходимостью для системных администраторов, инженеров и энтузиастов. В этой книге описываются типичные проблемы, с которыми можно столкнуться, например, при сборке программного обеспечения или координации действий других программ.
В пособии излагаются основные тенденции развития организационного обеспечения безопасности информационных систем, а также подходы к анализу информационной инфраструктуры организационных систем и решению задач обеспечения безопасности компьютерных систем.Для студентов по направлению подготовки 230400 – Информационные системы и технологии (квалификация «бакалавр»).
В книге американских авторов — разработчиков операционной системы UNIX — блестяще решена проблема автоматизации деятельности программиста, системной поддержки его творчества, выходящей за рамки языков программирования. Профессионалам открыт богатый "встроенный" арсенал системы UNIX. Многочисленными примерами иллюстрировано использование языка управления заданиями shell.Для программистов-пользователей операционной системы UNIX.
Книга адресована программистам, работающим в самых разнообразных ОС UNIX. Авторы предлагают шире взглянуть на возможности параллельной организации вычислительного процесса в традиционном программировании. Особый акцент делается на потоках (threads), а именно на тех возможностях и сложностях, которые были привнесены в технику параллельных вычислений этой относительно новой парадигмой программирования. На примерах реальных кодов показываются приемы и преимущества параллельной организации вычислительного процесса.
Применение виртуальных машин дает различным категориям пользователей — от начинающих до IT-специалистов — множество преимуществ. Это и повышенная безопасность работы, и простота развертывания новых платформ, и снижение стоимости владения. И потому не случайно сегодня виртуальные машины переживают второе рождение.В книге рассмотрены три наиболее популярных на сегодняшний день инструмента, предназначенных для создания виртуальных машин и управления ими: Virtual PC 2004 компании Microsoft, VMware Workstation от компании VMware и относительно «свежий» продукт — Parallels Workstation, созданный в компании Parallels.
Книга содержит подробные сведения о таких недокументированных или малоизвестных возможностях Windows XP, как принципы работы с программами rundll32.exe и regsvr32.exe, написание скриптов сервера сценариев Windows и создание INF-файлов. В ней приведено описание оснасток, изложены принципы работы с консолью управления mmc.exe и параметрами реестра, которые изменяются с ее помощью. Кроме того, рассмотрено большое количество средств, позволяющих выполнить тонкую настройку Windows XP.Эта книга предназначена для опытных пользователей и администраторов, которым интересно узнать о нестандартных возможностях Windows.