Программа для обмена данными с внешним устройством что это такое

· регистры в состоянии управления, также как и регистры данных доступны только через шину данных; другими словами часть управляющей информации в компьютере передаётся не по шине управления, а по шине данных;

· такая организация передачи управления информации обусловлена тем, что каждое внешнее устройство имеет целый набор собственных сигналов и команд, а потому предусмотреть для них соответствующие линии на шине управления системного интерфейса не представляет возможным, очевидно, что это существенно замедляет обмен данными с внешним устройством

Нарисуем упрощённую блок-схему контроллера внешнего устройства для системного интерфейса с изолированной шиной:

  • логика управления обеспечивает дешифрацию регистров контроллеров; приём управляющих сигналов системного интерфейса (ввод/вывод); формирование на их основе внутренних управляющих сигналов, кроме того, она может генерировать сигнал готовности ВУ; запрос на прерывание; запрос на прямой доступ к памяти
  • внутренние управляющие сигналы определяют, в какой из регистров контроллера будет подключён через приемо-передатчик шины к шине данных

Различают 3 основных способа организации ввода/вывода:

Обмен данными | EFT Field Survey | Учимся работать с GNSS приемником

    1. программно – управляющий обмен
    2. обмен в режиме прерывания
    3. обмен в режиме прямого доступа к памяти

программно – управляющий обмен – это передача данных по инициативе и под управлением программы, осуществляющей ввод/вывод

Такой обмен может быть реализован в 2 режимах:

а) обмен в синхронном режиме – обмен с безусловной передачей данных (без контроля приёма данных);

· синхронный режим используется для обмена с такими ВУ, для которых точно известно время выполнения одной операции ввода/вывода;

· программа, управляющая обменом, должна давать команды на приём или передачу данных с временным интервалом не меньшим, чем время необходимое для выполнения одной операции

· если команды и данные будут передаваться в более быстром темпе, то они будут потеряны

· этот наиболее простой способ обмена требует минимальных и аппаратных и программных затрат

б) обмен в асинхронном режиме – обмен с проверкой готовности ВУ (обмен по готовности ВУ)

· в этом режиме каждая следующая команда на приём или передачу данных даётся только тогда, когда ВУ выполнит предыдущую команду и сообщит об этом, установив бит (флаг) готовности в своём регистре состояний

Изобразим алгоритм обмена:

Рассмотрим действия, необходимые для печати слова EPSON на принтере, подключённом параллельно в входу PC (LPT1).

Контроллер параллельного интерфейса имеет 3 регистра:

  1. регистр данных – 378h: записывается байт данных, который затем пересылается в буфер принтера
  2. регистр состояний – 379h
  3. регистр управления – 37Ah: записывается команда, управляющая работой принтера

Рассмотрим простейшую программу:

const D: array [1..7] of byte = ($45,$50,$53,$4F,$4E,$D,$A);

💬 Как передавать и принимать данные из Arduino в компьютер и обратно? Очень просто!

if (Port[SR] and $80) = 0 then

writeln(‘принтер не готов’);

for I:=1 to sizeof (D) do

while (Port[SR] and $80) = 0 do;

обмен в режиме прерывания – такой способ обмена, при котором производится приостановка (для выполнения ввода/вывода) или прерывание выполняемой программы; причём обмен инициирует не программа, выполняемая процессором, а само внешнее устройство (ВУ)

· при реализации этого способа обмена команды или инструкции обслуживания этого устройства оформляются в виде подпрограммы – подпрограммы обработки прерываний (ПОП)

· процессор передаёт управление ПОП только в том случае, если ВУ, исходя из своих внутренних побуждений, само известит процессор о готовности к обмену, для этого он выставляет на соответствующую линию шины управления системного интерфейса сигнал «запрос на прерывание»

· если при программо-управляемом обмене готовность ВУ определяется путём программного считывания содержимого регистра состояний контроллера ВУ, то появление запроса на прерывание появляется аппаратно

· наличие сигнала готовности проверяется процессором автоматически при выполнении каждой команды – это существенно экономит время процессора, поскольку программный цикл ожидания отсутствует

Какие действия выполняются в компьютере при появлении сигнала на прерывание?

процессор завершает выполнение текущей команды

если аппаратное прерывание разрешено, т.е. установлен флаг в прерывании в регистре состояний процессора, то процессор с помощью специальных сигналов и соответствующих циклов шины подтверждает готовность к прерыванию и идентифицирует источник запроса

процессор сохраняет в (текущем) стеке содержимое счётчика команд (СК) и содержимое регистра состояний (РС)

процессор помещает в СК адрес подпрограммы обработки прерывания для данного устройства и приступает к её выполнению

в начале своей работы подпрограмма обработки прерывания должна сохранить в стеке содержимое регистров процессора и в конце работы она должна восстановить эти регистры из стека

подпрограмма обработки прерываний завершается специальной инструкцией возврата из прерывания, по этой инструкции процессор извлекает из стека адрес возврата прерванной программы – после чего продолжается выполнение прерванной программы

· такой алгоритм обслуживания прерываний с использованием стека обеспечивает вложенность прерываний; вложенность означает, что любое ВУ может прервать уже выполняющуюся подпрограмму обработки прерываний, если оно имеет более высокий приоритет, чем обслуживаемое устройство

· приоритет – число, приписанное ВУ, которое определяет очерёдность его обслуживания (обычно наибольший приоритет имеет наиболее быстродействующие устройства или устройства, данные от которых не могут быть восстановлены

· устройство с высшим приоритетом обслуживается первым

· если обслуживание запрашивает устройство, приоритет которого не выше приоритета уже обслуживаемого устройства, то его запрос блокируется до завершения текущей ПОП

  • в контроллерах ВУ, работающих в режиме прерывания в регистре управления, как правило, имеется бит, с помощью которого можно разрешить или запретить устройству генерацию сигналов «запрос на прерывание»
  • прерывания, о которых идёт речь, это аппаратные или внешние прерывания (т.е прерывания генерируемые внешними по отношению к процессору устройствами)
Читайте также:
Коррекционная программа 8 вида что это такое

аппаратные прерывания подразделяют на:

  • маскируемые прерывания (INIR) можно запретить, сбросив флаг прерывания в регистре флагов процессора; можно также запретить прерывания от отдельных устройств с помощью регистра маски контроллера прерываний
  • немаскируемые прерывания с помощью регистра флагов запретить нельзя; немаскируемые прерывания могут генерировать схемы контроля чётности оперативной памяти (NMI), а также систему управления энергопотребления (SMI)
  • также различают программные или внутренние прерывания – генерируются самим процессором
  • к программным прерываниям относят особые случаи (исключения) (деление на ноль; запрос о отсутствующей в памяти страницы; нарушение защиты по привилегиям)
  • прерывания, генерируемые машинными командами, используются для доступа к стандартным подпрограммам, адреса которых программисту неизвестны
  • программные прерывания обрабатываются так же, как и аппаратные, только в первом случае отсутствуют циклы подтверждения прерывания

Высшие приоритеты имеют:

    1. программы прерывания
    2. немаскируемые аппаратные прерывания
    3. маскируемые прерывания

Существуют 2 основных свойства идентификации ВУ, запросившего обслуживание:

  1. с помощью программного опроса (полинга) готовности ВУ, работающих в режиме прерывания
  2. с использованием векторов прерывания
    • в первом случае запросы на прерывание от всех ВУ объединяются по схеме ИЛИ (монтажное ИЛИ) и подаются на соответствующий вход процессора; обработка прерываний осуществляется с помощью единой подпрограммы обработки прерываний
    • приоритеты ВУ при такой организации обслуживания прерываний определяются очерёдностью их опроса, чем раньше в подпрограмме опрашивается устройство, тем выше его приоритет и тем меньше время реакции на его запрос
    • необходимость последовательного опроса всех ВУ существенно увеличивает время устройств, опрашиваемых последними
    • уменьшить время обслуживания ВУ можно с помощью векторной системы подготовки прерывания
    • в случае векторной системы для каждого ВУ имеется собственная подпрограмма обработки прерываний, адрес этой подпрограммы обычно называется векторным прерыванием
    • для того чтобы процессор смог обработать запрос от ВУ, он должен тем или иным способом получить вектор прерывания для данного устройства

    Существует 2 основных способа получения вектора прерывания:

      1. само ВУ может сообщить вектор прерывания
      2. контроллер прерывания, общий для всех ВУ

    Соответственно различают 2 варианта реализации векторной системы:

    1. векторная система с интерфейсным вектором
    2. с вне интерфейсным вектором
      • в первом случае контроллер каждого внешнего устройства, работающего в режиме прерывания должен иметь специальный регистр для хранения вектора прерывания
      • это схема намного эффективнее схемы прерывания с программным опросом, поскольку здесь опрос осуществляется не программно, а аппаратно
      • во втором случае системы с вне интерфейсным вектором — специальные регистры для хранения векторов, адресов в контроллере ВУ отсутствует, а для идентификации используется общий для всех устройств контроллер прерывания – такая схема характерна для IBM совместимых PC

      Изобразим схему взаимодействия процессора с контроллером прерывания и шины IBM PC:

      • за исключением IRQ0, IRQ1, IRQ8, IRQ13 (системный таймер, клавиатура, часы реального времени, сопроцессор); контроллер шины формирует 2 цикла чтения, только во 2 цикле чтения контроллер прерывания выставляет номер вектора прерывания на шину данных, а процессор считывает его с шины данных
      • в реальном режиме вектора прерываний хранятся в таблице векторов прерываний, которые находятся в одном килобайте оперативной памяти, под каждый вектор выделено 4 байта (2 под смещение и 2 байта под адрес сегмента)
      • абсолютный адрес вектора прерываний в таблице = номер вектора умножить на 4
      • далее процессор сохраняет в стеке содержимое регистров флагов, содержимое регистра сегмента кода CS, смещение IP, затем сбрасывается флаг прерывания в регистре флагов; по адресу: номер вектора умноженный на 4 считывается из оперативной памяти адрес сегмента
      • подпрограмма обработки прерывания завершается инструкцией конца прерывания – EOI (end of interruption)
      • если обслуживание одновременно запрашивает несколько устройств, то контроллер прерывания обслуживает устройства с наибольшим приоритетом, а остальные устройства блокирует до получения команды конца прерывания

      обмен в режиме прямого доступа к памяти – обмен между ВУ и памятью осуществляется без участия процессора – специальный контроллер доступа к памяти общий для всех устройств, либо контроллер ВУ, если он имеет средство управления шинами

      · это наиболее быстрый способ обмена поскольку он требует меньшего числа тактов шины, чем при программно-управляющем обмене и обмене в режиме прерывания

      · в режиме прямого доступа могут работать LPT, COM, накопитель на магнитной диске, жёсткий диск, сетевые адаптеры

      · существует много способов организации обмена в режиме доступа к памяти

      1. с захватом цикла (с идентификацией состояния памяти)

      · в этом режиме обмен устройства с памятью осуществляется в течении тех машинных циклов процессора, когда последний не обращается к шине

      · для идентификации таких состояний процессор может генерировать специальный сигнал, указывающий что шина свободна

      2. прямой доступ к памяти с блокировкой процессора по запросу

      · в этом случае на время обмена процессор отключается от шин системного интерфейса

      · если устройство работает медленно, то оно в режиме прямого доступа к памяти (ПДП) – передаёт отдельные байты

      · команда SC – после передачи байта запрос на прямой доступ к памяти сразу снимается DACK

      · если устройство работает быстро – данные передаются блоками, DACK не снимается

      Источник: poisk-ru.ru

      Программа для обмена данными с внешним устройством

      Ответы на вопрос Программа для обмена данными с внешним устройством

      • Драйвер — Програма для обмена данными с внешним устройством 7 букв
      • Разгадывать кроссворды
      • Драйверы — Для управления работой внешних устройств в состав операционной системы входят специальные программы 8 букв
      • Мессенджер — Программа для обмена сообщениями в режиме онлайн 10 букв
      • Интерфейс — Система связей с унифицированными сигналами и аппаратурой, предназначенная для обмена информацией между устройствами вычислительной системы 9 букв
      • Интерфейс — Система, предназначенная для обмена информацией между устройствами вычислительной системы 9 букв
      • Экспорт — Сохранение данных в виде (формате), предназначенном для обмена с другими программами (комп.) 7 букв
      • Драйвер — Программа управления внешним устройством компьютера 7 букв
      • Интервидение — Международная телевизионная организация для обмена передачами между странами-участницами, совместной подготовки программ 12 букв
      • Интервидение — Международная телевизионная организация для обмена передачами между странами-участницами, совместной подготовки программ, а также передачи, идущие по ее каналам 12 букв
      • Формат — В ГИС: общее наименование способа машинной реализации представления (модели) пространственных данных (векторный ___, растровый ___ и т. п.) или ___ данных конкретной системы, программного средства, средства стандартизации, обмена данными 6 букв
      • Автаркия — Система замкнутого воспроизводства сообщества, с минимальной зависимостью от обмена с внешней средой; экономический режим самообеспечения страны, в котором минимизируется внешний товарный оборот 8 букв
      • Модем — Устройство предназначенное для обмена информацией между удаленными компьютерами по каналам связи 5 букв
      • Алгоритм — Программа для электронной вычислительной машины, позволяющая от исходных данных прийти к искомому результату (в информатике) 8 букв
      • Сервер — Программа, обеспечивающая хранение данных, манипулирование ими и предоставление по запросам программ-клиентов 6 букв
      • Контроллер — Электронная схема для управления внешним устройством 10 букв
      • Модем — Устройство осуществляющее преобразование представления и скорости передачи информации между эвм и внешним устройством 5 букв
      • Интерфейс — Канал обмена данными компьютера с другими компьютерами 9 букв
      • 1с — Российская компания, специализирующаяся на дистрибуции, поддержке и разработке компьютерных программ и баз данных делового и домашнего назначения. Основатель и директор компании 2 буквы
      • Зебра — (телепрограмма) телевизионная программа, созданная на Ленинградском ТВ в 1988 году. Впервые вышла в эфир 8 ноября 1988 года. Выпуски выходили раз в две недели. Транслировалась в течение девяти лет и пользовалась популярностью; на первом и втором фестивале программ для детей и юношества «Зебра» признавалась лучшей в СССР 5 букв
      • Драйвер — Программа, непосредственно взаимодействующая с физическим устройством, обслуживающая его и управляющая им. Драйвер также обеспечивает интерфейс этого устройствтвами или 7 букв
      • Дисковод — Внешнее устройство ЭВМ 8 букв
      • Интерфейс — Внешние устройства в вычислительной технике 9 букв
      • Товар — Любая вещь, которая участвует в свободном обмене на другие вещи., продукт труда, способный удовлетворить человеческую потребность и специально произведённый для обмена. Предметы, произведённые для личного потребления, в экономическом смысле товарами не являются 5 букв
      • Клавиатура — Устройство, представляющее собой набор кнопок, предназначенных для управления каким-либо устройством или для ввода информации. Как правило, кнопки нажимаются пальцами рук. Бывают однако и сенсорные 10 букв
      • Рыба — То, что сделано (собрано, соединено) для обмана 4 буквы
      • Товар — Продукт труда, изготовленный для обмена, продажи 5 букв
      • Письмо — Сообщение, выраженное в компактной форме и предназначенное для обмена информацией между людьми 6 букв
      • Товар — Продукт труда, предназначенный для обмена и продажи 5 букв
      • Торг — Место для обмена товарами в старину 4 буквы
      • Послед — Орган, образующийся у беременной женщины и самки млекопитающих внутри матки для обмена веществ и питания зародыша в период плодоношения; плацента 6 букв
      • Сонар — Средство для обмена дельфинов звуковой информацией 5 букв
      • Весы — Инструмент продавца, приспособленный для обмана покупателя 4 буквы
      • Товар — Продукт труда, произведенный для обмена, продажи 5 букв
      • Рыба — То, что сделано, собрано для обмана 4 буквы
      • Товар — Продукт труда, предназначенный для обмена или продажи 5 букв
      • Полюдье — В Киевской Руси объезд князем и дружиной подвластных земель для сбора дани и разбора судебных дел, позже – сама дань определенного размера. В Новгородской и Смоленской землях в 12 в. фиксированная денежная повинность (историческое) 7 букв
      • Финт — Что игрок использует для обмана соперника в волейболе 4 буквы
      • Приём — Тактический. Тренер использует для обмана соперника 5 букв
      • Оксидировать — Подвергнуть (-гать) искусственному окислению (поверхность металлического издели я для предохранения от коррозии или для придания красивого внешнего вида) 12 букв
      • Дружина — Княжеское войско. Дружина является таким же необходимым элементом в древнерусском обществе, как и князь. Князь нуждался в военной силе как для обеспечения внутреннего порядка, так и для обороны от внешних врагов. Дружинники были реальной военной силой, всегда готовой к бою, а также советниками князя 7 букв
      • Программировать — Составлять и записывать специальным кодом программу для ЭВМ 15 букв
      • Пакет — Тара; сверток; комплекс программ для ЭВМ 5 букв
      • Антивирус — Программа для борьбы с компьютерными вирусами 9 букв
      • Ася — (жарг.) ICQ- программа для передачи сообщений в сети интернет 3 буквы
      • Аська — (жарг.) ICQ- программа для передачи сообщений в сети интернет 5 букв
      • Браузер — Программа для путешествия по Интернету и просматривания содержимого web-сайтов 7 букв
      • Архиватор — Компьютерная программа для уплотнения сохраняемой информации 9 букв
      • Программист — Специалист, занимающийся написанием программ для ЭВМ, то есть программированием 11 букв
      • Архиватор — Иначе — паковщик; компьютерная программа для преобразования текстового файла в архив 9 букв
      • Браузер — Сервисная программа для работы в Интернете 7 букв
      Читайте также:
      Что такое программа это список команд которые может выполнить компьютер

      Источник: wordparts.ru

      Программа для подключения внешнего устройства слово из 7 букв

      Пролистайте, чтобы посмотреть ответ, или воспользуйтесь формой для поиска ответов на другие определения.

      На этой странице можно узнать ответ для кроссворда или сканворда с заданием «Программа для подключения внешнего устройства». У нас нашелся 1 ответ на данный вопрос. Слово, которое послужит решением, состоит из 7 (семь) букв. Внесите все буквы в соответствующие клетки разгадываемого вами кроссворда и переходите к следующим заданиям.

      Находите правильные подсказки на кроссворд АиФ, Кодикросс, сканворды в Одноклассниках и Вконтакте. Решайте любые кроссворды в газете и журнале без запинок.

      Ответ

      Другие определения для слова «ДРАЙВЕР»

      • Программа, помогающая компьютеру «опознать» девайс
      • Программа для корректной работы устройства с ПК
      • Автогонщик
      • Системная компьютерная программа, выполняющая служебные функции
      • Программа управления внешним устройством компьютера
      • Специальная программа, необходимая для корректной работы компьютера
      • Вспомогательная компьютерная программа
      • Программа управления устройствами на компьютере
      • Вспомогательная программа для частей компьютера типа видеокарты
      • Компьютерная программа
      • Что на компьютерном жаргоне зовётся «дровами»
      • Программа, управляющая работой отдельных частей компьютера
      • Исполнитель роли Кайло Рена в Звёздных войнах
      • Программа управления отдельными частями компьютера
      • Как компьютерная программа, так и клюшка в гольфе
      • Клюшка гольфиста
      • Одноглазая убийца из криминального боевика «Убить Билла»

      Похожие определения

      • Порты для подключения проводов к компьютеру (7 букв)
      • Вспомогательные устройства и детали, необходимые для обеспечения работы основного оборудования (8 букв)
      • Документ с опытом работы для устройства на работу (6 букв)
      • Сервисная программа для работы в Интернете (7 букв)
      • Разъем для подключения флешки к компьютеру (4 буквы)
      • Программа в Windows для работы с текстами (4 буквы)
      • Вспомогательная программа для работы компьютера (7 букв)
      • Зона для совместной работы независимых профессионалов (9 букв)
      • Перемычка, позволяющая выставить режим работы электрического устройства замыканием или размыканием нескольких контактов (7 букв)
      • Орудие для работы с грунтом (6 букв)
      • Контакты
      • Конфиденциальность
      • Слова из букв
      Читайте также:
      Программа айскрим для чего

      Источник: xcas.ru

      Принципы обмена информацией с внешними устройствами

      Персональный компьютер через собственные внешние интерфейсы и различные адаптеры расширения (в том числе и располагаемые на платах расширения) может обмениваться с внешним миром различными сигналами, среди которых может быть цифровая информация (байты или отдельные биты), импульсные и аналоговые сигналы. В самом же ПК основой формирования или приема всех этих сигналов является последовательностью байтов или слов, передаваемых от внешних устройств или к внешним устройствам по системной шине. Системы сбора и обработки информации

      Принципы обмена данными

      СПОСОБЫ ОБМЕНА ДАННЫМИ

      Выбор метода обмена по системной шине определяется в основном требованиями к пропускной способности, времени отклика на событие, происходящее во внешнем устройстве и допустимой загрузкой процессора. Существуют два основных механизма обмена данными с внешними устройствами: программно-управляемый обмен (ввод-вывод) и прямой доступ к памяти.

      Прямой доступ к памяти

      Прямой доступ к памяти (DMA — Direct Memory Access) является способом обмена данными между внешним устройством и памятью без участия процессора и предназначен в основном для устройств, обменивающихся большими блоками данных с оперативной памятью. Инициатором обмена всегда выступает внешнее устройство. Процессор инициализирует контроллер DMA, и далее обмен выполняется под управлением контроллера. Если выбранный режим обмена не занимает всей пропускной способности шины, во время операций DMA процессор может продолжать работу. Этот тип обмена далее не рассматривается, поскольку он не предполагается к использованию в вариантах заданий на разработку систем.

      Программно-управляемый ввод-вывод означает обмен данными с внешними устройствами с использованием команд процессора. Передача данных происходит через регистры процессора и при этом в конечном счете может реализовываться обмен собственно с процессором, обмен внешнего устройства с памятью, обмен между внешними устройствами.

      Процессоры х86 имеют раздельную адресацию памяти и портов ввода-вывода и соответственно ввод-вывод может быть отображен либо в пространство ввода-вывода, либо вы пространство оперативной памяти (memory-mapped I/O). В последнем случае адрес памяти декодируется во внешнем устройстве и для выполнения ввода-вывода могут быть использованы все команды обращения к памяти.

      Каждое адресуемый элемент адресного пространства ввода-вывода именуется портом ввода, портом вывода или портом ввода-вывода. Для обращения к портам предназначены четыре основные команды процессора: In (ввод в порт), Out (вывод из порта), Ins (ввод из порта в элемент строки памяти) и Outs (вывод элемента из строки памяти). Последние две строковые команды ввода-вывода используются для быстрой пересылки блоков данных между портом и памятью в случае последовательно расположенных адресов портов в внешнем устройстве. Обмен данными с портами, при котором используются строковые команды ввода-вывода, получил название PIO (Programmed Input/Output) — программированный ввод-вывод.

      Что понимается под словом обмен? Во первых — это обращение программы к выбранному порту и пересылка информации. Пересылка — чтение или запись может производится в расчете на то, что порт всегда готов выдать или принять данные или же предваряется анализом готовности устройства.

      В последнем случае обмен включает операцию чтения регистра состояния устройства для анализа его готовности, ожидание готовности (зацикливание предыдущего шага), собственно обмен байтом или словом данных. Модификацией этого варианта является метод опроса — способ обнаружения асинхронных событий. При его использовании каждому возможному событию ставится в соответствие флажок, которому может обратиться программа.

      МЕТОДЫ ИНИЦИАЛИЗАЦИИ ОБМЕНА

      Собственно программно-управляемый обмен может инициироваться несколькими причинами:

      — Процессором, точнее соответствующей командой в его программе. Эта ситуация подразумевает, что обмен данными является основной задачей процессора.

      — Запросом аппаратного прерывания. Аппаратные прерывания вызываются внешними устройствами и теми компонентами компьютера, которые требуют немедленной обработки своей информации и приходят асинхронно по отношению к исполняемой программе.

      Прерывание можно рассматривать как некоторое особое событие в системе, которое заставляет процессор приостановить выполнение своей программы для реализации некоторой затребованной деятельности. Программные обработчики аппаратных прерываний инициализируют блочный обмен или выполняют одиночную операцию пересылки по системной шине с внешним устройством. Практически это основной способ инициализации обмена. Прерывания существенно увеличивают эффективность вычислительной системы, поскольку они позволяют внешним устройствам «обращать на себя внимание» процессора только по мере надобности.

      — Возможно также и комплексное решение — опрос готовности одного или нескольких внешних устройств (polling) по периодическим прерываниям, например, от системного таймера. Готовое устройство обслуживается, неготовое пропускается до следующего прерывания. Без анализа готовности возможно и периодическое выполнение каких-то действий с внешним устройством.

      Источник: studfile.net

      Рейтинг
      ( Пока оценок нет )
      Загрузка ...
      EFT-Soft.ru