LAB599.RU — интернет-магазин средств связи
EN FR DE CN JP

Советы / Что такое ВинМодем и как его заставить работать в Линукс


<<< К списку раздела.

Что такое ВинМодем и как его заставить работать в Линукс.

Прежде всего, что такое МОДЕМ? Слово "модем" является сокращением от модулятор/демодулятор. Не вдаваясь в подробности работу модема можно описать так: модем преобразовывает цифровые сигналы, передаваемые вашим компьютером, в сигналы, которые можно передать по телефонной линии (если это кабельный модем или какой-то другой тип модема, то он преобразует компьютерные сигналы, независимо от того, какие сигналы могут быть переданы через линию связи, на которой он предполагает работать), и затем, при получении обратных телефонных сигналов, он переводит их в байты и биты, которые сможет прочесть и понять ваш компьютер.

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

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

Так почему же не стоит их покупать? Потому что:

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

    Последующее дополнение: Теперь вы можете использовать Винмодем в Linux! Оригинал нижеследующей статьи на английском языке находится здесь: www.linuxdoc.org/HOWTO/Winmodems-and-Linux-HOWTO.html; перевод на русский язык мой (не совсем корректен, но интуитивно понятен; просьба никаких претензий по переводу не предьявлять).

    Имеется два типа Винмодемов: ISA и PCI. Эти два интерфейса довольно различны. Сначала, Вы должны сконфигурировать ваше ядро. В течение делающегося *config, Вы должны ответить "да" на следующие вопросы:

    PCI

  • В загружаемом модуле поддержки: "Enable loadable module support (CONFIG_MODULES)" и "Set version information on all modules for symbols (CONFIG_MODVERSIONS)".
  • В главных установках:
    "PCI support" (CONFIG_PCI)
    Выберите "Any" в "PCI Access Mode" (CONFIG_PCI_GOBIOS)
    "0PCI quirks" (CONFIG_PCI_QUIRKS)
    "Backward compatible /proc/pci" (CONFIG_PCI_OLD_PROC)
  • В файловой системе "/proc filesystem support" (CONFIG_PROC_FS)
  • Если Вы можете конфигурировать PCI Device Name Database (maybe with a 2.4+ kernel), Вы можете сказать Y, это сделает Ваш /proc/pci файл более простым (CONFIG_PCI_NAMES)

    Если Вы никогда повторно не компилировали ваше ядро, возможно ядро вашего распределения будет содержит это. Если Вы хотите повторно собрать это, и Вы никогда не делали это, читаете Kernel-HOWTO

    Теперь предполагается, что ваше ядро скомпилировано.

    Запустите "cat/proc/pci". Если Вы видите название вашего модема, возвращенных командой, тогда у Вас установлен PCI Winmodem. Переходите к инсталяции драйвера.

    ISA

    ISA не поддерживается ядром. (ИЗМЕНИТЕ: Если Вы имеете ядро 2.4.x, то ядро может делать это автоматически, если это так, пропускайте этот раздел и читайте следующий.) Это программное обеспечение третьего лица, названное isapnp. Сначала Вы должны убедиться, что устанавливаете этот пакет. Если не устанавливаете это, загружается пакет isapnptools.

    Однажды isapnptools установлен, запускаем специальную программу pnpdump, которая осматривает ваш компьютер для обнаружения ISA устройства. Требуются ресурсы, используемые устройствами и добавляет их к файлу /etc/isapnp.conf. Тогда Вы редактируете этот файл и выполняете другую программу isapnp, которая читает isapnp.conf файл и автоконфигурирует ваши устройства (бред получился в переводе).

    Выполните следующее:
    1. Запустите pnpdump -> /etc/isapnp.conf
    2. Редактируйте в любом текстовом редакторе
    3. Расположите раздел, где ваш модем описан
    4. Некоторые недокументированные строки в файле. Удалите # в начале строк. Вы нуждаетесь:
    1 line "(IO 0 ...)"
    1 line "(INT 0 ...)"
    1 line "(DMA 0 ...)"
    1 line "(DMA 1 ...)"
    1 line "(IO 1...)"
    5. Удалите "(CHECK)" на всех непрокомментированных IO линиях
    6. Запустите "isapnp/etc/isapnp.conf". Если Вы получаете ошибки, редактируйте файл isapnp.conf и пробуйте изменить параметры. Если Вы не получаете никаких сообщений, редактируйте isapnp.conf и некомментарий "(ACT Y)" линия в секции вашего модема. Тогда заново выполните "isapnp/etc/isapnp.conf". Это должно ответить на Вас "[Название вашего модема] Enabled OK"
    7. Добавьте "isapnp /etc/isapnp.conf" к вашему /etc/rc.d/rc.local, печатая "ECHO" isapnp /etc/isapnp.conf">>/etc/rc.d/rc.local". Это удобно для авто-конфигурирования ваших устройств при каждом запуске.


    # Snip details ...
    ## (DEBUG)
    (READPORT 0x0203)
    (ISOLATE PRESERVE)
    (IDENTIFY *)
    (VERBOSITY 2)
    (CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING
    # Identification of my modem card
    ## Card 1: (serial identifier e2 00 00 01 00 05 50 c3 1e)
    ## Vendor Id GVC5005, Serial Number 256, checksum 0xE2.
    ## Version 1.0, Vendor version 0.1
    ## ANSI string -->LT Win Modem<--
    ##
    ## Logical device id HSM0140
    ##     Device support I/O range check register
    #
    # We want to configure the GVC5005/256 card
    (CONFIGURE GVC5005/256 (LD 0
    # I/O Base address 0x03f8, with a range of 8
    (IO 0 (SIZE 8) (BASE 0x03f8) )
    # IRQ 4
    (INT 0 (IRQ 4 (MODE +E)))
    # DMA 5
    (DMA 0 (CHANNEL 5))
    # DMA 7
    (DMA 1 (CHANNEL 7))
    # I/O Base Address 2  0x0100, range 8
    (IO 1 (SIZE 8) (BASE 0x0100) )
    # Name of the card
    (NAME "GVC5005/256[0]{LT Win Modem        }")
    # Activate it
    (ACT Y)
    # End configuration
    ))
    ######## The parameters for my other ISA devices ##############
    ## Returns all cards to the "Wait for Key" state
    (WAITFORKEY)
    

    ISA и ядро 2.4

    Если у Вас установлено ядро 2.4 (запустите "uname -r" чтобы узнать версия Вашего ядра), Вам не нужно делать этот хитрый textfile-основанное и третье лицо компиляцию, так как 2.4 ряд представляет метод, подобный PCI, и obsoletes пакет isapnptools. Чтобы получить эту особенность, Вы должны говорить "Y" или "М." к "Plug and Play support" (CONFIG_PNP) и "ISA Plug and Play support" (CONFIG_ISAPNP) в течение компиляции ядра. Затем, повторно скомпильте ваше ядро, и установите это. Если Вы сказали "М." для поддержки ISA Plug-and-Play support, должно быть хорошо делать "modprobe isapnp". Вы должны иметь драйвер послушным с этим новым методом доступа устройства (eg. ltmodem 5.78, читайте следующий раздел).

    Инсталяция драйвера модема.

    Вы не должны читать этот раздел полностью; только читайте тот, который соответствует вашему модему. На данный момент здесь только описывается, как установить LT Modem, используя Lucent и OpenSource драйвер.

    ltmodem 5.78

    www.tux.org/pub/dclug/marvin/ltmodem-5.78e.tar.gz

    Author: Lucent

    License: Non-GPL

    Supports: ISA/PCI modem, with a Lucent chipset (Mars family)

    Features: Kernel module; simulate a serial port. Does PPP, Fax and Voice

    Current Version: 5.78e

    Documentation: README-1ST

    Requires: 2.2.x or 2.4.x; ISA PNP Support; Loadable module support; C Compiler

    How-to-use: Read README-1ST. It is very clear.

    Проблемы:

  • Нерешенные символы: xxx_isapnp_xxxx: выполните modprobe isapnp.
  • Устройство или ресурс занят: ваш модем не совместим с драйвером.

    LT WinModem (from Lucent) 5.68 (OBSOLETE)

    www.linmodems.org/linux568.zip

    Author: Lucent Technologies

    License: Non-GPL

    Supports: ISA/PCI modems, with a Lucent chipset (Mars family)

    Features: Kernel module; simulate a serial port. Does PPP, Fax and Voice

    Current version (as far as I know): 5.68

    Requires: A 2.2.12 or higher RedHat kernel; loadable module support

    LTMODEM program (OpenSource driver)

    www.close.u-net.com

    Authors: Richard Close and Pavel Machek

    License: GPL

    Supports: ISA/PCI modems, with Lucent chipsets (Mars family)

    Feature: User-space driver; does Voice calls; does not PPP (V90)

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

    Отдельная благодарность за предоставление ссылок выражается Фрагу.


    Разработка и оформление Андрея Александровича Борисенко aka ICE.
    По всем вопросам просьба писать мне на icenet (at) narod.ru

  • Партнеры