Статистика |
Онлайн всего: 1 Гостей: 1 Пользователей: 0 |
|
SerialXp быстрый драйвер COM-портов 3.0.2.2532 | |
Надежный, универсальный, высокопроизводительный драйвер Windows 2000/XP/2003 для последовательных асинхронных портов и мультипортовых плат (адаптеров). В отличие от уже многих и многих других подобных проектов, SerialXp не основывается на стандартном системном драйвере (исходные тексты которого доступны в DDK), а полностью написан заново на С++ и ассемблере. Поэтому, в отличие от всех других проектов, SerialXp свободен от недостатков и ошибок serial.sys и его клонов. Несколько причин чтобы использовать SerialXp:- SerialXp стабильнее и надежнее системного serial.sys, он не содержит ряда ошибок обнаруженных в стандартном системном драйвере. SerialXp корректно работает с асинхронными портами допускающими потерю прерываний.
- SerialXp управляет питанием COM-портов по спецификации «OnNow», экономя энергию батарей мобильных компьютеров;
- SerialXp быстрее, тратит меньше времени на обслуживание асинхронных портов. Он полноценно использует возможности асинхронных портов с расширенными возможностями и увеличенным FIFO, оптимизирован для современных процессоров, эффективно работает на многопроцессорных системах.
- SerialXp удобнее и умнее. Он автоматически определяет максимальную скорость работы порта, реальный размер FIFO, наличие дополнительных возможностей. SerialXp единственный драйвер, который поддерживает все распространённые SuperIO-чипы. Кроме этого, драйвер может сам обнаруживать мультипортовые ISA-платы и определять их IRQ.
- SerialXp бесплатен для конечных пользователей.
Значимые функциональные отличия от стандартного serial.sys и его клонов:- Корректно обслуживаются UART-чипы с ошибками, допускающими потерю прерываний;
- Отсутствует ошибка управления потоком при изменении размера внутреннего буфера (функция SetupComm() в Win32);
- Отсутствует ошибка отправки повторного XON-символа;
- Отсутствует возможность «залипания» передатчика при отправке XON/XOFF символов на UART с аппаратной ошибкой потери прерывания;
- Отсутствует возможность зацикливания в обработчике прерывания при частом изменении статуса линии и логической паузе в передаче (запросе от удаленного устройства на паузу в передаче);
- Отсутствует ошибка в обработке таймаута IOCTL_SERIAL_XOFF_COUNTER;
- Отсутствует ошибка в проверке корректности параметров IOCTL_SERIAL_SET_HANDFLOW;
- Отсутствует несколько ошибок связанных с не восстановлением исходного IRQL (синий экран).
В Windows Server 2003 эта ошибка исправлена; - Весь код драйвера резидентный, т.е. отсутствуют PAGEABLE-секции;
- Производится автоматическое управление питанием, неиспользуемые устройства отключаются;
- Производится тестирование оборудования;
- Определяется реальная скорость COM-портов (учитывается Turbo-режим);
- Определяется реальный размер FIFO-буферов;
- Определяется наличие дополнительных аппаратных возможностей COM-портов, например автоматического управление потоком (flow control);
Основные возможности драйвера:- Поддержка как Port I/O так и Memory Mapped I/O оборудования;
- Полная поддержка PNP в соответствии с требованиями Windows 2000/XP/2003;
- Поддержка всех распространённых Super-IO контроллеров;
- Обслуживание COM-портов в соответствии с требованиями Windows DDK к драйверам последовательных асинхронных портов;
- Поиск ISA-карт и автоматическое определение IRQ (практически полный PNP);
- Поддержка мультипортовых плат как с регистром статуса прерываний, так и без него;
- Автоматическое определение формата регистра статуса прерываний, если таковой реализован в оборудовании;
- Поддержка регистра статуса прерываний шириной в 8, 16, 32, 64 бита;
- Автоматическое определение реальной глубины FIFO-буфферов, как на прием, так и на передачу;
- Автоматическое определение наличия аппаратного flow-control;
- Определение реальной скорости UART-портов и соответствующее управление;
- Управление питанием по спецификации «OnNow»;
- Возможность обслуживания UART-портов размещенных на другом комбинированном устройстве через.
- Полный loopback тест всех портов;
Для достижения максимальной производительности (экономии процессорного времени) используется следующие методы:- Несколько обработчиков прерываний, каждый из которых оптимизирован под конкретный режим работы UART в зависимости от требований приложения;
- Никогда не используется «Global Cancel Spin Lock»;
- На платформах Windows XP/W2K3 используются «Queued Spin Locks»;
- Используется более быстрые чем системные «Cancelable IRP Queues»;
- Более оптимальный, по сравнению с serial.sys, исходных код;
- Алгоритмическая совместимость с условиями «no aliasing» для возможности более существенной оптимизации средствами компилятора;
- Используется оптимизирующий компилятор MS C++ 13.0, в режиме единой глобальной оптимизации по всему исполняемому модулю;
- Используются прямые Interlocked-инструкции и набор команд процессоров Intel Pentium Pro (Intel Pentium Pro/II/III, AMD K6/K7/Athlon/Ahlon-XP/Ahlon-MP);
Основные изменения в этой версии: - - Поддержка всех SuperIO-чипов (скорости более 115200 на системных COM-портах);
- - Устранена проблемы с некоторыми SuperIO-чипами от National Semiconductor;
- - Устранены проблемы с «проблемными» чипами. Некоторые UART-контроллеры вероятностно фиксируют ошибку приёма-передачи при частом изменении режима работы (значения в «Line Control Register»). В результате тест таких COM-портов мог заканчиваться неудачей или размер TX-FIFO определялся неправильно;
- - Новый код управления питанием;
- - Устранена несовместимость с некоторым ПО;
- - Множество улучшений, оптимизация;
|
скачать SerialXp быстрый драйвер COM-портов
|
Календарь | « Апрель 2024 » | Пн | Вт | Ср | Чт | Пт | Сб | Вс | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
|
|