Входные и выходные данные пс эт
Взаимодействие с ПС ЭТ может производиться как со стороны пользователя через графический интерфейс прикладной программы (см. рис. Рис. П4. 1), так и со стороны программного обеспечения через интерфейс системных вызовов.
Рис. П4. 1. Пользовательский интерфейс прикладной программы ПС ЭТ.
ПС ЭТ обеспечивает эмуляцию основных аппаратных модулей POS-терминала и предоставляет следующий набор драйверов для обращения к ним:
драйвер звукового устройства;
драйвер кадрового буфера;
драйвер идентификации аппаратного обеспечения;
драйвер клавиатуры;
драйвер текстового дисплея;
драйвер считывателя магнитных карт;
драйвер защищенной памяти;
драйвер принтера чеков;
драйвер считывателя электронных карт;
драйвер последовательного порта RS232.
Обращение к каждому драйверу производится через соответствующий интерфейс системных вызовов, предоставляемых драйвером. Набор системных вызовов для каждого драйвера представлен в табл. Таблица П4. 1 (в таблице не указаны системные вызовы open и close, которые определены для всех драйверов и предназначены для получения и закрытия файлового дескриптора соответственно). Подробное описание аргументов каждого из них может быть найдено в документации Linux.
Таблица П4. 1
Интерфейс системных вызовов драйверов ПС ЭТ
Драйвер | Системный вызов | Описание | |||
Драйвер звукового устройства («/dev/buzz») | ioctl | BUZZ_START | Включение звукового устройства на установленной частоте | ||
BUZZ_STOP | Выключение звукового устройства | ||||
BUZZ_SET_FREQ | Установка частоты звучания | ||||
BUZZ_SET_DUTY | Установка скважности звучания (фиктивная команда) | ||||
Драйвер кадрового буфера («/dev/xb») | ioctl | FB_SETRATE | Установить частоту обновления | ||
FB_GETRATE | Считать частоту обновления | ||||
FB_REFRESH | Установить флаг обновления | ||||
FB_NEEDREFRESH | Считать флаг обновления | ||||
mmap | Отображение кадрового буфера в виртуальную память. | ||||
Драйвер идентификации аппаратного обеспечения («/dev/id») | ioctl | ID_GET_BD_TYPE | Получение типа аппаратного обеспечения (терминал) | ||
ID_GET_PUBKEY_3 | Получение открытой части основного ключа RSA. | ||||
read | Аналогично вызову ioctl с командой ID_GET_PUBKEY_3. | ||||
Драйвер клавиатуры («/dev/pin», «/dev/kpd») | ioctl («/dev/pin») | PIN_MODE_DISABLE | Выключение режима ввода PIN-номера | ||
PIN_MODE_STATUS | Получение статуса PIN-режима (вкл./выкл.) | ||||
HEX_PIN_MODE_ENABLE | Включение ввода цифр PIN-номер в шестнадцати- ричной системе счисления | ||||
PIN_MODE_ENABLE | Включение режима ввода PIN-номера | ||||
read («/dev/pin») | Получение событий истечения времени ввода, нажатия кнопки «ENTER», «CANCEL» или «CLEAR» | ||||
read («/dev/kpd») | Считывание кода нажатой кнопки или символа «*» в режиме ввода PIN-номера | ||||
Драйвер текстового дисплея («/dev/lcd») | ioctl | DISPLAY_SETTEXTPOS | Установка позиции курсора (младшие два байта – номер столбца, старшие – номер строки) |
Таблица П4. 1 (продолжение)
|
| DISPLAY_CLEAR | Очистка дисплея | ||||
DISPLAY_GET_COLS | Получения количества текстовых столбоцов | ||||||
DISPLAY_GET_ROWS | Получение количества текстовых строк | ||||||
DISPLAY_BACKLIGHT | Фиктивные команды, поддерживаются с целью совместимости ПО | ||||||
DISPLAY_CONTRAST | |||||||
DISPLAY_SHOW | |||||||
write | Запись текстовой строки для отображения на экране. | ||||||
Драйвер считывателя магнитных карт («/dev/emcr») | ioctl | EMCR_RESET | Фиктивные команды, поддерживаются с целью совместимости ПО | ||||
EMCR_VERIFYDEVKEY | |||||||
GET_KEYLOCKPPT | |||||||
GET_ENCRYPTIONPPT | |||||||
GET_SWID | Вернуть версию считывателя | ||||||
GET_DEVSERIALNUM | Вернуть серийный номер | ||||||
SET_DEVSERIALNUM | Установить серийный номер | ||||||
SET_EMCRTRACK | Установить номер считываемой дорожки | ||||||
EMCR_SWIPED | Проверка того, что была проведена карточка | ||||||
poll | Ожидание магнитной карточки (появления данных) | ||||||
read | Считывание данных с дорожки, установленной командой SET_EMCRTRACK | ||||||
Драйвер защищенной памяти («/dev/mmd») | ioctl | MMD_GET_SEC_MEM_SIZE | Вернуть размер защищенной памяти в байтах | ||||
mmap | Отображение области защищенной памяти в виртуальную память | ||||||
Драйвер принтера чеков («/dev/prn») | ioctl | PRN_FEED_PAPER | Прокрутка бумаги на заданное число строк | ||||
PRN_SET_CONTRAST | Фиктивная команда установки яркости печати | ||||||
PRN_HAS_PAPER | Проверка наличия бумаги | ||||||
PRN_GET_WIDTH | Получение ширины бумаги в пикселях | ||||||
write | Запись двоичных данных на печать | ||||||
Драйвер считывателя электронных карт («/dev/sc0», «/dev/sc1», «/dev/sc2», «/dev/scs») | ioctl | SC_SET_EMV_MODE | Фиктивная команда | ||||
SC_GET_VERSION | Получение версии считывателя | ||||||
SC_WAIT_STATE_ CHANGE | Ожидание изменения состояния карты | ||||||
SC_STATUS | Получение статуса карты | ||||||
SC_SWORD | Получение ответа на последнюю команду |
Таблица П4. 1 (продолжение)
|
| SC_RESET | Сброс состояния карты | |
SC_GET_ATR | Получение ATR последовательности байт | |||
write | Отправление команды или данных на карту | |||
read | Чтение данных с карты | |||
Драйвер последовательного порта RS232 («/dev/uart0», «/dev/uart1», «/dev/uart2») | ioctl | UART_START | Фиктивные команды для поддержки совместимости ПО | |
UART_STOP | ||||
UART_BUFF_SIZE | ||||
UART_MODEM_STATUS | ||||
UART_MODEM_CONTROL | ||||
UART_DATABITS | Установка количества передаваемых бит данных (от 5 до 8) | |||
UART_STOPBITS | Установка количества стоповых бит (1 или 2) | |||
UART_PARITY | Установка четности (0 – выкл., 1 – нечетная, 2 – четная) | |||
UART_FLOWCTRL | Установка типа управления потоком данных (0 – выкл., 1 – RTS/CTS, 2 – XON/XOFF) | |||
UART_BAUD | Установка скорости передачи данных (бод/сек) | |||
write | Отправление команды или данных на карту | |||
read | Чтение данных с карты |
- Пояснительная записка
- «Разработка программного средства эмуляции pos-терминала»
- Содержание
- Специальный раздел
- Технологический раздел
- Организационно-экономический раздел
- Раздел по производственной и экологической безопасности
- Перечень сокращений
- Введение
- Специальный раздел
- 1.Специальный раздел
- 1.1.Исследовательская часть
- 1.1.1.Типы программных средств эмуляции
- 1.1.2.Обзор программных средств эмуляции Microsoft Device Emulator и Android Emulator
- Системные требования Microsoft Device Emulator
- 1.1.3.Эмуляция аппаратных модулей pos-терминала
- Сравнительная характеристика программных средств эмуляции
- 1.2.Конструкторская часть
- 1.2.1.Состав выполняемых функций
- 1.2.2.Требования к надежности
- 1.2.3.Требования к информационной и программной совместимости
- 1.2.4.Требования к составу и параметрам технических средств
- 1.2.5.Организация входных и выходных данных
- 1.2.6.Выбор платформы для разработки
- 1.2.7.Выбор среды разработки
- Сравнительная характеристика средств разработки
- 1.2.8.Алгоритмы работы программного средства
- 1.2.9.Иерархия классов прикладной программы пс эт
- 1.2.10.Описание логической структуры программного средства
- Список создаваемых специальных файлов устройств
- 1.2.11.Пользовательский интерфейс. Экранные формы
- 1.2.12.Методика и результаты испытаний программного средства
- Технологический раздел
- 2.Технологический раздел
- 2.1.Технология программирования пс эт
- 2.1.1.Основные определения
- 2.1.2.Этапы разработки и использованная модель жизненного цикла
- 2.1.3.Объектно-ориетированный подход
- 2.2.1.Обзор возможностей языка Си
- 2.3.Разработка драйверов в ос Linux
- 2.3.1.Особенности ос Linux
- 2.3.2.Принципы работы драйверов в ос Linux
- 2.3.3.Специальные файлы устройств
- 2.3.4.Структура, инициализация и выгрузка драйверов
- 2.3.5.Отладка драйверов
- 2.4.Сценарии в ос Linux
- 2.4.1.Основы разработки сценариев на языке оболочки bash
- 2.4.2.Переменные и области видимости
- Стандартные переменные окружения и оболочки bash
- 2.4.3.Средства ввода-вывода
- 2.4.4.Команды ветвления if-else, case
- 2.4.5.Организация циклов
- 2.4.6.Определение функций
- 2.4.7.Отладка сценариев
- Опции запуска сценариев
- 2.4.8.Makefile – управление компиляцией
- 2.5.Использование библиотек в ос Linux
- 2.5.1.Статические и динамические библиотеки
- 2.5.2.Графическая библиотека fltk
- Элементы библиотеки fltk
- 2.5.3.Библиотека pcsc для работы с электронными картами
- 2.5.4.Библиотека TinyXml для работы с xml-файлами
- Основные классы библиотеки TinyXml
- 2.6.Средства отладки в ос Linux
- 2.6.1.Технологии отладки
- 2.6.2.Отладочные сообщения
- 2.6.3.Стандарт syslog
- 2.6.4.Удаленная отладка с помощью gdbserver
- 2.6.5.Отладка в среде SlickEdit 2009
- 2.7.Виды тестирования
- 2.7.1.Классификация видов тестирования
- 2.7.2.Уровни тестирования
- 2.7.3.Тестирование методом «белого» ящика
- 2.7.4.Тестирование методом «черного» ящика
- Организационно-экономический раздел «Определение целевого сегмента рынка pos-терминалов»
- 3.Организационно-экономический раздел
- 3.1.Сегментация рынка и позиционирование товара
- 3.1.1.Разделение рынка на сегменты
- 3.1.2.Принципы рыночной сегментации
- 3.1.3.Методы выделения сегментов
- 3.1.4.Критерии рыночной сегментации
- 3.1.5.Выбор целевого рынка
- 3.1.6.Выбор целевого сегмента
- 3.1.7.Позиционирование товара
- 3.1.8.Метод Чекановского
- 3.2.Сегментация рынка платежных pos-терминалов
- 3.2.1.Особенности рынка pos-терминалов
- 3.2.2.Выделение групп конечных пользователей
- 3.2.3.Выделение основных характеристик pos-терминала «ярус»
- 3.2.4.Диаграмма Чекановского
- 3.2.5.Выбор целевого сегмента и позиционирование pos-терминала «ярус»
- Раздел по производственной и экологической безопасности «Инженерный расчет воздухообмена на рабочем месте инженера-программиста»
- 4.Раздел по производственной и экологической безопасности
- 4.1.Введение
- 4.2.Рабочее место инженера-программиста
- 4.2.1.Особенности и характеристики
- 4.2.2.Основные опасности и вредности
- 4.2.3.Оценка тяжести труда
- Классы условий труда по показателям тяжести трудового процесса
- 4.3.Воздухообмен в помещении
- 4.3.1.Классификация систем вентиляции
- 4.3.2.Инженерный расчет воздухообмена в зависимости от числа людей в помещении
- 4.3.3.Инженерный расчет воздухообмена по избыткам тепла
- Значения коэффициента Кост
- Плотность теплового потока солнечной радиации в июле, Вт/м2
- 4.3.4.Выбор вентиляционной системы
- 4.4.Пожарная безопасность
- 4.5.Экологическая безопасность (утилизация компьютеров)
- Заключение
- Список литературы
- Введение
- Назначение и условия применения пс эт
- Состав выполняемых функций
- Требования к надежности
- Требования к составу и параметрам технических средств
- Характеристика пс эт
- Обращение к пс эт
- Входные и выходные данные пс эт
- Сообщения