FAQ Степан Ильин aka Step Хакер, номер #079, стр. 079-140-2 Принцип работы светодиодных принтеров практически идентичен описанному. По большому счету, разница заключается лишь в том, что вместо лазера используется ряд светодиодов. Такие принтеры стоят дешевле, но как показала практика, они и ломаются чаще. Что выбирать — решать тебе. Q: Наконец-то вы начали уделять внимание низкоуровневому программированию. Меня давно интересует вопрос: что такое прерывание и обработчик прерывания? A: В архитектуре процессоров предусмотрены особые случаи, когда процессор прерывает выполнение текущей программы и немедленно передает управление программе-обработчику прерываний. Эта программа специально написана для обработки такой ситуации, поэтому и называется ее обработчиком. Самый простой пример — обработчик прерывания попытки деления на ноль. Это системное прерывание, поэтому его вызов не зависит от того, какую программу ты запускаешь и на каком языке она написана. Захотел поделить число на ноль — получи сообщение об ошибке. Программист вправе разработать свои обработчики прерываний, которые будет позже вызывать из программы с помощью ассемблерной команды INT <номер прерывания>. Во время ее выполнения управление передается по адресу, который считывается из специальной таблицы векторов прерываний. Если объяснять на пальцах, то эта таблица имеет следующий вид: «Обработчик 21 прерывания находится по такому-то адресу, ОП 22 — по такому-то и т.д.». Чтобы иметь возможность вернуться обратно, команда INT помещает в стек (читай сохраняет) регистр флагов и адрес возврата в основную программу. Их восстановление осуществляется командой iret. Для наглядности приведу пример простого обработчика прерывания, который помещает в регистр eax число 0. int_handler proc far mov eax,0; помещаем в регистр eax, число 0 iret ; передаем управление основной программе int_handler endp Теперь, когда обработчик прерывания написан, остается только привязать его к конкретному номеру прерывания, то есть записать его адрес в таблицу векторов прерывания. Если ты хочешь подробно разобраться в этой теме, рекомендую тебе книгу С.В. Зубкова «Ассемблер для DOS, Windows и UNIX». Помни: без хорошей книги ассемблер ты не выучишь, как бы ни старался. Q: Сейчас идет много разговоров по поводу интернета по обыкновенной электропроводке. Как считаешь, это очередная выдумка или все-таки уже реальность? A: Технология, которая использует для передачи данных электрическую проводку, уже есть и называется PLC (Power Line Communications). Не так давно было заявлено, что несколько крупных инвесторов хотят наладить в России масштабный доступ в инет на базе этой технологии. Верить этим анонсам или нет? Сказать сложно, но в моем городе филиал этого чудо-провайдера уже ищет себе сисадмина. Теперь о том, что эта технология собой представляет. Теоретически PLC позволяет добиться скорости 20 Мбит/с. При этом для конечного пользователя необходимое оборудование по стоимости будет сопоставимо с подключением к ASDL. Неплохо, но для самого провайдера не все так радужно. Практики внедрения PLC в России еще не было, а с учетом суровой отечественной действительности ее реализация находится под большим вопросом. В каждом доме или даже подъезде придется устанавливать распределитель сигнала, радиус которого жестко ограничен. Да и выдержит ли ветхая проводка? Я уже не говорю о том, что ее реализация в провинции потребует широкого канала до Москвы, которого вечно не хватает. |