Руководство по установке и настройке 32-разрядной операционной системы
Вид материала | Руководство по установке |
- Руководство по установке оглавление, 1846.06kb.
- Active Directory Rights Management Services ad rms в составе ос windows Server® 2008., 872.38kb.
- Инструкция по установке и настройке локальной системы контроля и управления доступом, 97.7kb.
- Практические рекомендации по работе в операционной системе Windows xp методические, 604.22kb.
- Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского, 4309.37kb.
- Исследование возможностей операционной системы Linux На примере операционной системы, 748.67kb.
- Вопросы к экзамену по «Информатике» 2005/2006 г г. Тема Операционная система, 61.37kb.
- Формирование информационной компетентности учащихся средствами факультативного курса, 70.1kb.
- Урок 12 Урок №12 Тема: Графический интерфейс операционной системы, 59.92kb.
- Инструкция по установке и настройке ip-телефона на 2 линии sip с 2 портами Ethernet, 155.7kb.
npasswd — генератор надежных паролей
Программа npasswd может использоваться
Программа поиска уязвимых мест в защите — CRACK
Шайтан-арба — программа проверки целостности системы защиты SATAN
Подключение принтера
Компьютер без принтера сегодня представляется каким-то полуфабрикатом. А резкое падение цен на матричные, струйные и лазерные принтеры в течение последних двух лет способствуют массовому распространению технологии “персональной печати”. Конечно, первая мысль, ассоциируемая с принтером сегодня — это MS Word. Однако, как я постараюсь показать, Linux предоставляет пользователю более широкие возможности по управлению ресурсами принтера, чем мы привыкли видеть в Windows.
^
Первое подключение устройства печати
Прежде всего нам необходимо убедиться, что Linux видит ваш принтер. Как правило, принтер подключается к единственному параллельному порту компьютера, который размещается либо на плате устройств ввода/вывода, либо непосредственно на материнской плате компьютера. Но “по теории” IBM PC может поддерживать до четырех параллельных портов, и в Linux им соответствуют символьные устройства /dev/lp0 — /dev/lp3.
Поэтому первый ваш шаг состоит в проверке — есть ли в вашей системе соответствующие устройства. Если нет, их придется создать самостоятельно. Для этого учтем, что во-первых, устройства в UNIX являются просто специальными файлами, которые можно создать с помощью программы mknod, а во-вторых, за параллельными портами зарезервированы номера устройств — старшее 611 и младшие с 0 до 3 и соответствуют номеру устройства.
Вот синтаксис команд mknod для всех параллельных портов, поддерживаемых Linux (в скобках приведены базовые адреса портов ввода/вывода):
mknod /dev/lp0 c 6 0 (0x3BC)
mknod /dev/lp1 c 6 1 (0x378)
mknod /dev/lp2 c 6 2 (0x278)
mknod /dev/lp3 c 6 3 (0x......)
Обратите внимание на адреса портов! Как правило, в составе IBM PC входит порт с адресом 0x378, который соответствует не /dev/lp0, а /dev/lp1. И если вы по привычке будете соотносить “первый” порт DOS с “нулевым” портом UNIX, то искать причину неисправности вам придется довольно долго. Как же избежать этой ошибки?
Наиболее простой путь состоит в экспериментальной проверке конфигурации. Во-первых, вы можете воспользоваться утилитами из DOS типа sysinfo или MSD, а во-вторых, можете просто попытаться “выбросить на печать” текущий каталог, например:
ls -l > /dev/lp0
Если порта lp0 на вашей машине нет вы получите сообщение:
? /dev/lp0 unknown device
после чего вы можете попробовать использовать другое устройство. Если же все в порядке, то на принтер будет выведена “лесенка” примерно следующего вида12:
This is 1 line
This is 2 line
This is 3 line
Причина этого явления состоит в том, что ориентированные для работы в DOS принтеры требуют для завершения строки два символа — возврата каретки
Бороться с этим неприятным эффектом вы можете двумя способами — либо отключить режим раздельного управления
^
Поддержка принтера в ядре Linux
Устанавливая систему вы наверняка позаботились о поддержке принтера. Если нет, то самое время перекомпилировать ядро системы. При этом вы должны позаботиться о следующем:
- необходимо включить поддержку принтера (printer support);
- необходимо включить сетевую поддержку (network support) вне зависимости от наличия у вас сетевой карты;
- необходимо отключить поддержку параллельного IP-интерфейса (PLIP), который использует порт Centronics для организации канала обмена между двумя машинами. Этот драйвер будет конфликтовать с принтером и не позволит вам выводить данные на печать.
Драйвер печати в ядре системы
Собственно говоря, никакого специального драйвера принтера в системе нет, есть всего лишь драйвер параллельного порта Centronics, который входит в состав практически любого параллельного принтера. При этом принтер может подключаться как к любому последовательному порту, так и к параллельному. Последовательный интерфейс, по большому счету, используется единый и принтер выступает в роли однонаправленного терминала, использующего линии /dev/ttys, и подчиняется всем правилам работы с этими портами. Мы же рассмотрим именно особенности реализации /dev/lp.
При определении любого драйвера внешнего устройства определяется по меньшей мере два параметра: область адресов, занимаемых устройством в пространстве ввода/вывода и вектор аппаратного прерывания. С адресами мы вроде бы разобрались... А вот что касается векторов прерываний, то здесь вас ждет сюрприз. Фирма IBM при разработке еще самой первой IBM PC зарезервировала за параллельным портом LPT1 вектор прерывания IRQ7. Но Microsoft, видимо и не предполагала об этом, поскольку драйвер устройства печати в DOS не использует этого вектора, ограничиваясь периодическим опросом бита готовности принтера к приему следующего байта данных. Такой режим опроса, кстати, получил название polling mode и вы с ним можете столкнуться еще при анализе кода драйвера CD-ROM и не только там.
Увы, свято место пусто не бывает. И IRQ7 постепенно стал использоваться как один из основных векторов для звуковых плат. В результате и при разработке Linux пришлось отказаться от IRQ-ориентированного драйвера принтера, поскольку это могло бы привести к возникновению конфликта между устройствами14. Именно поэтому, в Linux реализована не слишком эффективная схема построения драйвера, что впрочем, не слишком снижает производительность подсистемы печати в целом.
^