Надежный, универсальный, высокопроизводительный драйвер Windows 2000/XP/2003 для последовательных асинхронных портов и мультипортовых плат (адаптеров). В отличие от уже многих и многих других подобных проектов, SerialXp не основывается на стандартном системном драйвере (исходные тексты которого доступны в DDK), а полностью написан заново на С++ и ассемблере. Поэтому, в отличие от всех других проектов, SerialXp свободен от недостатков и ошибок serial.sys и его клонов.
Несколько причин чтобы использовать SerialXp:
SerialXp стабильнее и надежнее системного serial.sys, он не содержит ряда ошибок обнаруженных в стандартном системном драйвере. SerialXp корректно работает с асинхронными портами допускающими потерю прерываний (см. раздел FAQ).
SerialXp быстрее, тратит меньше времени на обслуживание асинхронных портов. Он полноценно использует возможности асинхронных портов с расширенными возможностями и увеличенным FIFO, оптимизирован для современных процессоров, эффективно работает на многопроцессорных системах.
SerialXp удобнее и умнее. Он автоматически определяет максимальную скорость работы порта, реальный размер FIFO, наличие дополнительных возможностей. SerialXp единственный драйвер, который поддерживает все распространённые SuperIO-чипы. Кроме этого, драйвер может сам обнаруживать мультипортовые ISA-платы и определять их IRQ.
SerialXp бесплатен для конечных пользователей.
Значимые функциональные отличия от стандартного serial.sys и его клонов:
Корректно обслуживаются UART-чипы с ошибками, допускающими потерю прерываний;
Отсутствует ошибка управления потоком при изменении размера внутреннего буфера (функция SetupComm() в Win32);
Отсутствует возможность «залипания» передатчика при отправке 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-портов размещенных на другом комбинированном устройстве через SERIAL_XP_LINK_INTERFACE;
Полный 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);
Основные изменения в версии 3.0.2.2532
Поддержка всех SuperIO-чипов (скорости более 115200 на системных COM-портах);
Устранена проблемы с некоторыми SuperIO-чипами от National Semiconductor;
Устранены проблемы с «проблемными» чипами. Некоторые UART-контроллеры вероятностно фиксируют ошибку приёма-передачи при частом изменении режима работы (значения в «Line Control Register»). В результате тест таких COM-портов мог заканчиваться неудачей или размер TX-FIFO определялся неправильно;
Введи serialxp.rar в строку поиска на www.filesearch.ru или на других поисковиках по FTP сайтам. Найдешь несколько вариантов и среди них есть версия 3.0.2.2550. Последняя она или нет, судить не берусь. Автору виднее, но его сайт по-прежнему не работает
Сайт leo.yuriev.ru не работает. Откуда скачать более свежую версию драйвера? Просто версия которая у меня не хочет работать, говорит что "driver obsolete, update to newer version", но новой версии нет. Please help!
У меня была аналогичная проблема. Просто открываешь файл SerialXp.inf в блокноте и изменяешь дату (например 03/29/2005) на более новую. При чем во всех местах (раз 5 вроде). И все! Обновляешь драйвер и порядок!
Размер файла: 369.2 кБ
Время загрузки: -