Драйвер isis что это
Что выбрать при сканировании: TWAIN или WIA драйвер
В каждом человеке есть хотя бы капелька садистских наклонностей. Разница только в их количественном содержании и качественном проявлении. Вот я, например, люблю задавать людям вопросы на темы, в которых они ничего не понимают, и смотреть, как они мучаются, пытаясь угадать правильный ответ. Оказывается, точно такую же пытку любит проводить любой специалист в своей области. Иначе как объяснить, к примеру, тот факт, что практически любая компьютерная программа, работающая со сканером изображений, при первом использовании обязательно задаст вопрос, типа: «А какой драйвер вы хотите использовать при сканировании: TWAIN или WIA? А, может, вы хотите воспользоваться нашим собственным драйвером? Или вы предпочитаете драйвера ISIS?»
Любой нормальный пользователь компьютера, после такого вопроса пойдёт и повесится, чувствуя свою полную беспомощность в этой жизни. Или по крайней мере уйдёт в запой на неделю.
Дорогие мои, не надо! Я вас спасу! По крайней мере от этого конкретного вопроса. Давайте вместе решим, какой же именно драйвер нам желательно использовать в обычном российском офисе при сканировании обычных российских документов на обычном российском китайском американском сканере.
Ответ
Если ваше устройство поддерживает драйвер ISIS, то, очевидно, эта статья не для вас. Эти драйвера предназначены для промышленного обрудования, имеют массу возможностей и подразумевают, что пользоваться ими будут специалисты, глубоко погружённые в существо вопроса. В общем, для обычных людей ISIS — не вариант.
Резюме
При работе со сканером используйте по возможности интерфейс TWAIN.
При работе с фотокамерой или любым другим устройством, не требующим особых настроек при передаче изображений, удобнее использовать стадндарт WIA.
Одно замечание. Если программа, с которой в работаете, имеет свой собственный интерфейс для работы со сканером, то на мой взгляд им пользоваться предпочтительнее. Могу объяснить это тем, что, во-первых, интерфейс этот не меняется при использовании различных сканеров, а во-вторых, в нём присутствуют только те настройки, которые важны для данной конкретной программы. Примером может служить программа FineReader:
Тем не менее, даже при использовании интерфейса FineReader вы всё равно не избавляете себя от выбора подходящего драйвера устройства (TWAIN или WIA), так что информация из статьи остётся актуальной и в этом случае.
Драйвер isis что это
В комплект поставки любого сканера входит пакет программного обеспечения, ответственного за правильное распознавание устройства при подключении к персональному компьютеру, а так же обеспечивающего его правильную работу. Данное специализированное ПО называется драйвер. Набор драйверов может различаться в зависимости от модели, но, существуют и универсальные интерфейсы, необходимые для взаимодействия сканера с операционной системой компьютера. В частности, нередко в описаниях сканера можно встретить такие аббревиатуры как TWAIN, WIA и ISIS-драйверы (стандарты, протоколы). Попробуем разобраться, что обозначает каждое название, и какие функции выполняет каждый из драйверов.
TWAIN
На самом деле, TWAIN – это не аббревиатура, а слово, которое в переводе с английского означает «пара» или «двойка». Под «парой» здесь подразумевается тандем компьютер – сканер. Другими словами, TWAIN-совместимый драйвер необходим для того, чтобы операционная система компьютера могла взаимодействовать с устройствами создания и обработки изображений, в том числе и со сканерами. TWAIN драйвер сканера обычно выполнен в виде программного приложения с интуитивным пользовательским интерфейсом. Основная его функция – это передача информации от сканера к компьютерному приложению, через которое выполняются команды сканирования. Именно с его помощью производятся такие действия как предпросмотр изображений, предварительное сканирование, корректировка параметров (цвет, насыщенность и.т.д.). И именно благодаря наличию TWAIN-драйвера, вы можете осуществлять сканирование из любой программы, где есть команда Scan.
Поскольку WIA расшифровывается как Windows Imaging Architecture, несложно догадаться, что этот стандарт создан специально для ОС Windows, и разработан он был компанией Microsoft. Он предназначен для более удобного управления сканером посредством стандартных и привычных для пользователей инструментов Windows. Например, именно благодаря драйверу WIA сканер отображается в диспетчере устройств компьютера при подключении, а мы можем привычным способом просмотреть его свойства и содержимое. Такой компонент драйвера как Scanner Wizard позволяет работать с изображениями с помощью стандартного интерфейса в виде окон. Данный интерфейс предлагает ряд возможностей для управления изображениями – предпросмотр, настройка разрешения, яркости, цвета, масштабирование и прочие. Таким образом, независимо от модели сканера пользователь может пользоваться привычными и понятными инструментами при работе с документами и изображениями.
ISIS
Интерфейс ISIS (Image and Scanner Interface Specification), так же, как и Twain создан для взаимодействия сканера и компьютера, но способен выполнять более сложные задачи. Он представляет собой совокупность модулей, каждый из которых выполняет определенную функцию (сканирование, конвертация, компрессия). Эти модули могут объединяться, образуя конвейеры для выполнения сложных, многоэтапных задач. ISIS предлагает разработчикам ПО надежный и стабильный интерфейс для интеграции задач, связанных со сканированием, в приложения. Поскольку ISIS является промышленным стандартом, пользователь сканера с ISIS-драйвером может быть уверен, что купленный им аппарат совместим со всеми приложениями операционной системы, разработанными с учетом данного стандарта.
Какой драйвер выбрать TWAIN или WIA? Что выбрать при сканировании: TWAIN или WIA драйвер
Добрый вечер всем посетителям моего блога. Тема сегодня будет связана со сканированием. Сканированием тем, что идёт в комплекте с МФУ. Буквально на выходных мой друг попросил меня отсканировать ему кучу фотографий. И при выполнении этой просьбы заинтересовался такой интересной вещью — как драйвер сканера. На моём МФУ — Samsung SCX-4200 в программе можно было выбрать один из двух драйверов, со страшными названиями. Один назывался TWAIN, а другой WIA. Вот с такими непонятными словами мы сегодня разберёмся.
Что такое драйвер сканирования?
Думаю никому не секрет, что для взаимодействия любого внешнего аппарата и компьютера, помимо непосредственного соединения двух устройств проводами, на компьютере необходимо установить специальную программу, который называется драйвер. Собственно драйвер, это некая база команд, описанная программистами на низкоуровневом языке, для взаимодействия с оборудованием. Ну собственно в нашем примере есть сканер, что сканер выполнял наши нажатия кнопки «Сканировать» он должен понять это действие. Поэтому мы и устанавливаем драйвер. Который в момент нашего нажатия на кнопку «Сканировать» выполняет определённый алгоритм и посылает на бинарном языке в сканер команду, за счёт чего сканер начинает двигать фотоголовкой. Производители драйверов при написании кода должны придерживаться определённых стандартов. Их может быть множество. Мы рассмотрим некоторые из них. Это TWAIN и WIA.
Что такое TWAIN-драйвер?
TWAIN — это стандарт, как говорилось выше, созданный изготовителями сканеров, обеспечивающий взаимодействие сканера с ПО. Twain-драйвер сканера — это ПО, которое осуществляет передачу данных от сканера в программное приложение, из которого Вы вызываете сканер. С помощью Twain-драйвера производится установка параметров и области сканирования, предварительное сканирование и просмотр, обеспечивается возможность цветокорректировки и постобработки получаемого изображения.
Официально «TWAIN» не является аббревиатурой, хотя широко распространена версия англ. Technology Without An Interesting Name (технология без интересного названия/имени).
Что такое WIA-драйвер?
За подробностями обратимся в Википедию.
По сравнению с TWAIN этот стандарт возник не так давно, всего лишь в 2000 году.
Что лучше TWAIN или WIA?
Оба драйвера могут выполнять сканирование по сети. В большинстве своём они похожи однако функции TWAIN и WIA различаются. Также стоит сказать, что TWAIN-драйвера идут от производителя, в тот момент когда WIA непосредственно с участием Microsoft.
Вывод
В случае с Windows — системами, честно сказать выбор остаётся за Вами. В то время как в других системах TWAIN драйвера будут в большем приоритете. Но конечный выбор будет за Вами.
Интерфейс ISIS (Image and Scanner Interface Specification), так же, как и Twain создан для взаимодействия сканера и компьютера, но способен выполнять более сложные задачи. Он представляет собой совокупность модулей, каждый из которых выполняет определенную функцию (сканирование, конвертация, компрессия). Эти модули могут объединяться, образуя конвейеры для выполнения сложных, многоэтапных задач. ISIS предлагает разработчикам ПО надежный и стабильный интерфейс для интеграции задач, связанных со сканированием, в приложения. Поскольку ISIS является промышленным стандартом, пользователь сканера с ISIS-драйвером может быть уверен, что купленный им аппарат совместим со всеми приложениями операционной системы, разработанными с учетом данного стандарта.
В каждом человеке есть хотя бы капелька садистских наклонностей. Разница только в их количественном содержании и качественном проявлении. Вот я, например, люблю задавать людям вопросы на темы, в которых они ничего не понимают, и смотреть, как они мучаются, пытаясь угадать правильный ответ. Оказывается, точно такую же пытку любит проводить любой специалист в своей области. Иначе как объяснить, к примеру, тот факт, что практически любая компьютерная программа, работающая со сканером изображений, при первом использовании обязательно задаст вопрос, типа: «А какой драйвер вы хотите использовать при сканировании: TWAIN или WIA? А, может, вы хотите воспользоваться нашим собственным драйвером? Или вы предпочитаете драйвера ISIS?»
Любой нормальный пользователь компьютера, после такого вопроса пойдёт и повесится, чувствуя свою полную беспомощность в этой жизни. Или по крайней мере уйдёт в запой на неделю.
Дорогие мои, не надо! Я вас спасу! По крайней мере от этого конкретного вопроса. Давайте вместе решим, какой же именно драйвер нам желательно использовать в обычном российском офисе при сканировании обычных российских документов на обычном российском китайском американском сканере.
Ответ
Стандарту TWAIN в следующий вторник исполнится три тысячи лет. Казалось бы, пользоваться тем же самым интерфейсом, которым пользовались наши предки в каменных пещерах, не очень разумно. Но тем не менее, именно этот драйвер и стоит выбрать, если есть такая возможность. На то есть несколько причин:
Резюме
При работе со сканером используйте по возможности интерфейс TWAIN.
При работе с фотокамерой или любым другим устройством, не требующим особых настроек при передаче изображений, удобнее использовать стадндарт WIA.
Одно замечание. Если программа, с которой в работаете, имеет свой собственный интерфейс для работы со сканером, то на мой взгляд им пользоваться предпочтительнее. Могу объяснить это тем, что, во-первых, интерфейс этот не меняется при использовании различных сканеров, а во-вторых, в нём присутствуют только те настройки, которые важны для данной конкретной программы. Примером может служить программа FineReader:
Тем не менее, даже при использовании интерфейса FineReader вы всё равно не избавляете себя от выбора подходящего драйвера устройства (TWAIN или WIA), так что информация из статьи остётся актуальной и в этом случае.
На компьютере установлен Windows XP SP2 в силу его технических характеристик и наличия корпоративной лицензии на данную ОС.
МФУ подключено к USB порту компьютера кабелем стандартной длины Аm-Bm.
При установке под Windows XP на родном диске не установился софт для сканирования.
После запуска утилиты установки софта с софтверного диска, автоматически установились только Twain драйвера.
В Twain driver setting установлено только одно устройство: fs-1030mfp/fs-1130mfp (usb). Оно отмечено галочкой.
В «списке драйверов» устройства (открытого через диспетчер устройств) ряд поставщиков файлов отсутствует, либо выводится псевдографикой. Либо принадлежат cyocera.
При этом печать на устройство идёт нормально. Как с локального компьютера, так и с сетевого компьютера. (принтер разделён для общего пользования средствами Windows XP).
Появилось предположение, что драйвера в боксовой поставке расcчитаны только под win7. Раз не поставились утилитой установки.
Поэтому скачал драйвера для сканера под Windows XP с официального сайта. Отсюда:
http://cdn.kyostatics.net/dlc/eu/driver/all/scannerdrv_fs-103x.-download.
Как и при установке с диска, драйвера ругались на то, что не тестированы на совместимость с ОС.
Проблем это не решило. Устройство видно в списке устройств, но ни одной программой не определяется, как «включённое».
Попросил протестировать в авторизованном сервисном центре, где лежит другой агрегат из этой партии (не отправлявший факс) на другой машине под ХР, чтобы исключить проблему в кривости «конкретного агрегата», «компьютера» и «того, кто устанавливает эти драйвера».
Всё то же самое. Чудес не произошло. Сканер не заработал и у специалиста из сервисного центра.
При этом при установке на семёрку подобный агрегат установил не только ли драйвера, но и софтину для сканирования. Которая работает с USB подключением.
В таком случае, заверили меня в сервисном центре, «этот деффект не является гарантийным случаем».
А у меня лицензия только на ХР.
Подскажите пожалуйста, как можно решить эту проблему, если оставить локальное USB соединение, т.к. в кабинете, где стоит агрегат нет свободной розетки LAN, чтобы пойти через использование аппарата «по сети».
Информация об оборудовании пользователя
Комплектация Оборудования Дополнительными устройствами
Способ подключения к сети / рабочей станции
Kyocera fs-1130mfp WIA driver (USB) от 14.11.2011
Ответы
Для корректной работы всех приложений на компьютере необходимо выполнять регулярное обновление драйверов всех устройств ПК. В этом пользователям и поможет небольшая программа ДрайверСканнер, позволяющая автоматически сканировать версии «прошивки» устройств и выводить список необходимых для обновления драйверов. После этого нажатием одной кнопки вы можете выполнить этот «апгрейд». Если вы следите за производительностью и корректной работой своего компьютера, можете скачать бесплатно DriverScanner и установить ее новую версию.
Возможности:
Принцип работы:
Установить ДрайверСканнер можно для Windows XP, Vista, 7 и 8.
Плюсы:
Минусы:
ДрайверСканнер будет полезен для каждого владельца ПК. Эта программа автоматически сканирует версии драйверов для корректной работы всех приложений и позволяет нажатием одной кнопки обновить все «прошивки». Кроме того, функциями утилиты предусмотрено резервное копирование данных, чтобы вернуть предыдущую версию драйвера в случае неправильной работы приложения. Одним словом, для драйверных обновлений мы рекомендуем вам использовать DriverScanner. Скачать бесплатно его последнюю версию может любой пользователь.
Однако, для скачивания самих драйверов нужно купить ключ программы.
Isis driver что это
В каждом человеке есть хотя бы капелька садистских наклонностей. Разница только в их количественном содержании и качественном проявлении. Вот я, например, люблю задавать людям вопросы на темы, в которых они ничего не понимают, и смотреть, как они мучаются, пытаясь угадать правильный ответ. Оказывается, точно такую же пытку любит проводить любой специалист в своей области. Иначе как объяснить, к примеру, тот факт, что практически любая компьютерная программа, работающая со сканером изображений, при первом использовании обязательно задаст вопрос, типа: «А какой драйвер вы хотите использовать при сканировании: TWAIN или WIA? А, может, вы хотите воспользоваться нашим собственным драйвером? Или вы предпочитаете драйвера ISIS?»
Любой нормальный пользователь компьютера, после такого вопроса пойдёт и повесится, чувствуя свою полную беспомощность в этой жизни. Или по крайней мере уйдёт в запой на неделю.
Дорогие мои, не надо! Я вас спасу! По крайней мере от этого конкретного вопроса. Давайте вместе решим, какой же именно драйвер нам желательно использовать в обычном российском офисе при сканировании обычных российских документов на обычном российском китайском американском сканере.
Ответ
Если ваше устройство поддерживает драйвер ISIS, то, очевидно, эта статья не для вас. Эти драйвера предназначены для промышленного обрудования, имеют массу возможностей и подразумевают, что пользоваться ими будут специалисты, глубоко погружённые в существо вопроса. В общем, для обычных людей ISIS — не вариант.
Резюме
При работе со сканером используйте по возможности интерфейс TWAIN.
При работе с фотокамерой или любым другим устройством, не требующим особых настроек при передаче изображений, удобнее использовать стадндарт WIA.
Одно замечание. Если программа, с которой в работаете, имеет свой собственный интерфейс для работы со сканером, то на мой взгляд им пользоваться предпочтительнее. Могу объяснить это тем, что, во-первых, интерфейс этот не меняется при использовании различных сканеров, а во-вторых, в нём присутствуют только те настройки, которые важны для данной конкретной программы. Примером может служить программа FineReader:
Тем не менее, даже при использовании интерфейса FineReader вы всё равно не избавляете себя от выбора подходящего драйвера устройства (TWAIN или WIA), так что информация из статьи остётся актуальной и в этом случае.
В чём суть, капитан?
Режимы работы x86 процессора
В «Ring 3» программам запрещены потенциально опасные действия, такие как доступ к I/O портам и физической памяти. По логике разработчиков, настолько низкоуровневый доступ обычным программам не нужен. Доступ к этим возможностям имеют только операционная система и её компоненты (службы и драйверы). И всё бы ничего, но однажды я наткнулся на программу RW Everything:
RW Everything действительно читает и пишет практически всё
Смотрим последний установленный драйвер через OSR Driver Loader
PCI Express Config Space
Чтение и запись PCI Config Space
Но через этот метод доступны только 0x100 байт конфигурационного пространства, в то время как в стандарте PCI Express размер Config Space у устройств может быть достигать 0x1000 байт! И полноценно вычитать их можно только обращением к PCI Extended Config Space, которая замаплена где-то в адресном пространстве, обычно чуть пониже BIOS:
Адресное пространство современного x86 компа, 0-4 ГБ
На чипсетах Intel (ну, в их большинстве) указатель на эту область адресного пространства можно взять из конфига PCI устройства 0:0:0 по смещению 0x60, подробнее описано в даташитах:
У AMD я такого не нашёл (наверняка есть, плохо искал), но сам факт неуниверсальности пнул меня в сторону поиска другого решения. Погуглив стандарты, я обнаружил, что указатель на эту область передаётся системе через ACPI таблицу MCFG
А сами ACPI таблицы можно найти через запись RSDP, поискав её сигнатуру по адресам 0xE0000-0xFFFFF, а затем распарсив табличку RSDT. Отлично, здесь нам и пригодится функционал поиска по памяти. Получаем нечто такое:
На всякий случай оставляем вариант для чипсетов Intel
Всё, теперь осталось при необходимости заменить чтение PCI Express Config Space через драйвер на чтение через память. Теперь-то разгуляемся!
Читаем BIOS
В качестве примера применения нашего «тулкита», попробуем набросать скрипт чтения BIOS. Он должен быть «замаплен» где-то в конце 32-битного адресного пространства, потому что компьютер начинает его исполнение с адреса 0xFFFFFFF0. Обычно в ПК стоит флеш-память объёмом 4-16 МБ, поэтому будем «сканировать» адресное пространство с адреса 0xFF000000, как только найдём что-нибудь непустое, будем считать, что тут начался BIOS:
В результате получаем:
Вот так в 10 строчек мы считали BIOS
Но подождите-ка, получилось всего 6 мегабайт, а должно быть 4 или 8 что-то не сходится. А вот так, у чипсетов Intel в адресное пространство мапится не вся флешка BIOS, а только один её регион. И чтобы считать всё остальное, нужно уже использовать SPI интерфейс.
Не беда, лезем в даташит, выясняем, что SPI интерфейс висит на PCI Express:
И для его использования, нужно взаимодействовать с регистрами в BAR0 MMIO по алгоритму:
Задать адрес для чтения в BIOS_FADDR
Задать параметры команды в BIOS_HSFTS_CTL
Прочитать данные из BIOS_FDATA
Пилим новый скрипт для чтения через чипсет:
Немного помучившись, получаем ответ от SSD на команду идентификации
А если написать свой драйвер?
Зайдя на страницу с кодом драйвера, вы сразу наткнетесь на предупреждение:
Точнее я так думал, до вот этой статьи, глаз зацепился за крайне интересный абзац:
Драйвер из статьи действительно подписан, и действительно неким китайским ключом:
Как оказалось, сведения о подписи можно просто посмотреть в свойствах.. А я в HEX изучал
Немного поиска этого имени в гугле, и я натыкаюсь на вот эту ссылку, откуда узнаю, что:
есть давно утёкшие и отозванные ключи для подписи драйверов
малварщики по всему миру используют это для создания вирусни
Несколько минут мучений с гугл-переводчиком на телефоне, и мне удалось разобраться в этой утилите и подписать драйвер одним из утекших ключей (который довольно легко отыскался в китайском поисковике):
И в самом деле, китайская азбука
И точно так же, как и AsrDrv101, драйвер удалось без проблем запустить!
А вот и наш драйвер запустился
Из чего делаю вывод, что старая идея с написанием своего драйвера вполне себе годная. Как раз не хватает функции маппинга памяти. Но да ладно, оставлю как TODO.
TWAIN, WIA, ISIS — водители для сканера
В комплект поставки любого современного сканера входит пакет программного обеспечения. Набор программ может различаться в зависимости от модели, но, существуют и универсальные интерфейсы, необходимые для взаимодействия сканера с операционной системой компьютера. В частности, нередко в описаниях сканера можно встретить такие аббревиатуры как TWAIN, WIA и ISIS-драйверы (стандарты, протоколы). Попробуем разобраться, что обозначает каждое название, и какие функции выполняет каждый из драйверов.
TWAIN
На самом деле, TWAIN – это не аббревиатура, а слово, которое в переводе с английского означает «пара» или «двойка». Под «парой» здесь подразумевается тандем компьютер – сканер. Другими словами, TWAIN-совместимый драйвер необходим для того, чтобы операционная система компьютера могла взаимодействовать с устройствами создания и обработки изображений, в том числе и со сканерами. TWAIN драйвер сканера обычно выполнен в виде программного приложения с интуитивным пользовательским интерфейсом. Основная его функция – это передача информации от сканера к компьютерному приложению, через которое выполняются команды сканирования. Именно с его помощью производятся такие действия как предпросмотр изображений, предварительное сканирование, корректировка параметров (цвет, насыщенность и.т.д.). И именно благодаря наличию TWAIN-драйвера, вы можете сканировать из любой программы, где есть команда Scan.
Поскольку WIA расшифровывается как Windows Imaging Architecture, несложно догадаться, что этот стандарт создан специально для ОС Windows, и разработан он был компанией Microsoft. Он предназначен для более удобного управления сканером посредством стандартных и привычных для пользователей инструментов Windows. Например, именно благодаря драйверу WIA сканер отображается в диспетчере устройств компьютера при подключении, а мы можем привычным способом просмотреть его свойства и содержимое. Такой компонент драйвера как Scanner Wizard позволяет работать с изображениями с помощью стандартного интерфейса в виде окон. Данный интерфейс предлагает ряд возможностей для управления изображениями – предпросмотр, настройка разрешения, яркости, цвета, масштабирование и прочие. Таким образом, независимо от модели сканера пользователь может пользоваться привычными и понятными инструментами при работе с документами и изображениями.
Интерфейс ISIS (Image and Scanner Interface Specification), так же, как и Twain создан для взаимодействия сканера и компьютера, но способен выполнять более сложные задачи. Он представляет собой совокупность модулей, каждый из которых выполняет определенную функцию (сканирование, конвертация, компрессия). Эти модули могут объединяться, образуя конвейеры для выполнения сложных, многоэтапных задач. ISIS предлагает разработчикам ПО надежный и стабильный интерфейс для интеграции задач, связанных со сканированием, в приложения. Поскольку ISIS является промышленным стандартом, пользователь сканера с ISIS-драйвером может быть уверен, что купленный им аппарат совместим со всеми приложениями операционной системы.
Прокси-драйвера
В итоге получается обходной манёвр – всё, что программе запрещено делать, разработчик вынес в драйвер, программа устанавливает драйвер в систему и уже через него программа делает, что хочет! Более того – выяснилось, что RW Everything далеко не единственная программа, которая так делает. Таких программ не просто много, они буквально повсюду. У меня возникло ощущение, что каждый уважающий себя производитель железа имеет подобный драйвер:
Софт для обновления BIOS (Asrock, Gigabyte, HP, Dell, AMI, Intel, Insyde…)
Софт для разгона и конфигурации железа (AMD, Intel, ASUS, ASRock, Gigabyte)
Софт для просмотра сведений о железе (CPU-Z, GPU-Z, AIDA64)
Софт для обновления PCI устройств (Nvidia, Asmedia)
Во многих из них практически та же самая модель поведения – драйвер получает команды по типу «считай-ка вот этот физический адрес», а основная логика – в пользовательском софте. Ниже в табличке я собрал некоторые прокси-драйвера и их возможности:
Результаты краткого анализа пары десятков драйверов. Могут быть ошибки!
Mem – чтение / запись физической памяти
PCI – чтение / запись PCI Configuration Space
I/O – чтение / запись портов I/O
Alloc – аллокация и освобождение физической памяти
Map – прямая трансляция физического адреса в вирутальный
MSR – чтение / запись x86 MSR (Model Specific Register)
Жёлтым обозначены возможности, которых явно нет, но их можно использовать через другие (чтение или маппинг памяти). Мой фаворит из этого списка – AsrDrv101 от ASRock. Он устроен наиболее просто и обладает просто огромным списком возможностей, включая даже функцию поиска шаблона по физической памяти (!!)
Неполный перечень возможностей AsrDrv101
Чтение / запись RAM
Чтение / запись PCI Configuration Space
Чтение / запись MSR (Model-Specific Register)
Чтение / запись CR (Control Register)
Чтение TSC (Time Stamp Counter)
Чтение PMC (Performance Monitoring Counter)
Alloc / Free физической памяти
Поиск по физической памяти
Kyocera — приложения и инструменты
В продолжение цикла популярных статей о Kyocera предлагаю материал о программах, с помощью которых можно управлять, настраивать и обслуживать офисные устройства Kyocera.
Каждое отдельное приложение достойно специальной статьи, и, может быть, в будущем так и получится, но пока — только общий краткий обзор, с ориентацией на пользователей, которые только начинают знакомиться с продукцией нашей компании и нуждаются в легком пособии для быстрого ориентирования среди многообразия фирменных названий. Первая часть посвящена сугубо пользователям: я рассматриваю в ней программы, которые касаются «потребления» возможностей техники Kyocera, а все, что касается обслуживания и настройки — пойдет во второй части статьи.
(Керамические ножи на картинке к программам управления принтерами-сканерами отношения не имеют, но зато красивые и напоминают об исторической сути компании — производство керамики)
Основой для работы со всей продуктовой линейкой печатающих устройств является Printer Driver:
Управление сосредоточено в стандартной панели печати Windows:
Сопутствующие программы, которые расширяют и облегчают возможности работы с драйвером:
KYOnet for clients — маленькое приложение для пользователей, которое показывает статус принтера и вашего задания на печать. В чем-то заменяет стандартный статус-монитор windows. Вы просто будете знать, что происходит с принтером и с вашей задачей на печать.
KYOnet for Direct Printing — печать PDF-документов без установки Acrobat reader.
Prescribe printer language — штука для дотошных. Буквально — редактор, в котором с помощью языка программирования Prescribe (от Kyocera) можно выполнять (или автоматизировать) задачи для принтера, которые не могут быть выполнены в других приложениях. Язык довольно простой, и после чтения руководства с примерами командовать принтером сможет любой читатель Хабра.
С основой — Printer Driver и тем, что рядом с ним, разобрались, перехожу к сканированию.
Для дополнительных удобств:
File Management Utility (FMU) — приложение для распределения файлов отсканированных документов по сети.
Вы можете указывать условия, при которых файлы будут отправляться в ту или иную сетевую папку, и, конечно, делать это для нескольких МФУ Kyocera. Условие — устройство должно иметь опцию HyPAS. Принцип работы утилиты — следить за появлением файлов в определенной указанной папке, и перекладывать их в соответствии с указанными вами правилами.
PANELPLUS — это приложение гораздо ближе к «железу» (а точнее — внутри него) и представляет собой решение на базе HyPAS для операционных панелей устройств. Позволяет использовать кнопки запуска задач по сканированию собственного изготовления.
Внешне выглядит так:
Если вы часто выполняете какие-то однотипные задачи, то удобно настроить кнопку, которая позволит запускать их в одно нажатие, а не набирать каждый раз повторяющиеся параметры.
Для «изготовления» кнопок используется приложение Panel Plus Designer:
Panel Plus Designer — как программа устанавливается на компьютере, в нем, с удобствами, вы создаете нужную вам задачу в виде наглядного workflow. Получившийся в итоге «design.xpp», импортируете на МФУ (с USB-флешки) и видите необходимую кнопку на панели устройства.
(Для работы с PPD нужна java, JRE 6.0 или свежее)
KYOcapture — полное управление процессом сканирования, десктопное приложение, суть которого лучше всего выражается вот этим скриншотом:
С помощью программы можно настроить любые процессы сканирования и последовательности работы со сканами — сканировать бумажные или электронные документы, именовать их по нужным правилам, пересылать одновременно в несколько хранилищ, выполнять операции совместно с HyPAS и т.д.
Пример захвата документов из Outlook (как иллюстрация простоты работы с приложением):
Для наглядности у меня есть рекламная диаграмма, демонстрирующая принцип KYOcapture — берем откуда угодно, обрабатываем и отправляем куда угодно:
С пользовательскими приложениями — пока все. (В список можно добавить мобильное клиентское приложение под Android, которое удостоилось отдельной статьи на Хабре)
В следующем материале обещаю сделать такое же быстрое описание утилит, которые будут полезны администраторам сетей, включающих в себя офисные устройства Kyocera.
Выводы?
Так вот, при включении этой опции, некоторые драйвера (в том числе RW Everything и китайско-подписанный chipsec_hlpr) перестают запускаться:
Windows: достучаться до железа
Меня всегда интересовало низкоуровневое программирование – общаться напрямую с оборудованием, жонглировать регистрами, детально разбираться как что устроено. Увы, современные операционные системы максимально изолируют железо от пользователя, и просто так в физическую память или регистры устройств что-то записать нельзя. Точнее я так думал, а на самом деле оказалось, что чуть ли не каждый производитель железа так делает!
Через Python в дебри
Конечно же я захотел сделать свой небольшой «тулкит» для различных исследований и экспериментов на базе такого драйвера. Причём на Python, мне уж очень нравится, как просто выглядит реализация сложных вещей на этом языке.
Первым делом нужно установить драйвер в систему и запустить его. Делаем «как положено» и сначала кладём драйвер (нужной разрядности!) в System32:
Раньше в похожих ситуациях я извращался с папкой %WINDIR%\Sysnative, но почему-то на моей текущей системе такого алиаса не оказалось, хотя Python 32-битный. (по идее, на 64-битных системах обращения 32-битных программ к папке System32 перенаправляются в папку SysWOW64, и чтобы положить файлик именно в System32, нужно обращаться по имени Sysnative).
Затем регистрируем драйвер в системе и запускаем его:
А дальше запущенный драйвер создаёт виртуальный файл (кстати, та самая колонка «имя» в таблице с анализом дров), через запросы к которому и осуществляются дальнейшие действия:
И ещё одна полезная программа для ползания по системе, WinObj
Тоже ничего особенного, открываем файл и делаем ему IoCtl:
В конечном итоге я «подсмотрел», как это делают другие программы. Выяснилось, что большинство либо не заморачиваются, либо просто ищут запущенные процессы с тем же именем. Но одна из исследованных программ имела кардинально другой подход, который я себе и перенял. Вместо того, чтобы переживать по количеству ссылок на файл, просто на каждый запрос открываем и закрываем файл! А если файла нет, значит кто-то остановил драйвер и пытаемся его перезапустить:
А дальше просто реверсим драйвер и реализуем все нужные нам вызовы:
Легко и непринуждённо в пару команд читаем физическую память