Это - копия документа, находившегося на http://dz.ru. Авторские права, если не указано иначе, принадлежат Дмитрию Завалишину и/или Евгении Завалишиной. Все изменения, внесенные мной, находятся в этой рамочке.Пожалуйста, прочитайте disclaimer.  | 
Говоря о Микрософтовском Pocket PC я упустил из внимания одну существенную деталь, о которой хочу рассказать сегодня. Зовут её ClearType.
Прорабатывая стратегию конкуренции с Palm-ом Микрософт вычленил, по всей видимости, несколько позиций, в которых Palm слабоват и решил целенаправленно бить именно в них. Одна из таких позиций - качество экранных шрифтов.
Не секрет, что карманные компьютеры таки используются как суррогат книги. Мелкие, не слишком удобного формата, с не слишком качественным дисплеем - и тем не менее, это практикуется. Спрос есть и он велик. А значит - на нём можно сыграть. Что и сделано - новый карманный бренд от Микрософта ставит своей целью обласкать книгочеев по полной программе. В программу, собственно, входят всего три компоненты, но компоненты существенные. Программа для чтения электронных книг, система улучшения качества шрифтов ClearType и звуковые книги от audible.com.
Первое и третье - не фокус, а вот ClearType - это интересно. Это, впрочем, тоже не особый фокус, но определённый интерес представляет.
ClearType работает толком лишь на LCD-мониторах. Мало того, чтобы он работал, ОС должна точно знать, как именно устроена LCD-панель данного конкретного компьютера. А именно - как расположены в пространстве цветные элементы, из которых состоит экран. Дело в том, что ClearType работает только в одном случае - когда на цветном LCD экране отображается чёрно-белая картинка. Или текст.
 
      
  | 
  
Давайте посмотрим, как устроен цветной LCD-монитор. Если чёрно-белый состоит из последовательности квадратных пикселей, то в цветном каждый квадратик пикселя "разрезан" на три дольки - красную, зелёную и синюю. Соответственно, если игнорировать цвет, то физическое разрешение цветного LCD по одному измерению в три раза больше, чем у соответствующего монохромного дисплея.
Вот и весь фокус, собственно - ClearType просто использует этот факт в своих целях - драйвер отображает текст используя не крупные "тройные" белые пиксели, а каждый отдельный цветной элемент экрана. Конечно, это приводит к тому, что края тонких элементов оказываются окрашены, но глаз усредняет цвет изображения и в целом ничего страшного не происходит - текст выглядит чёрным на белом, окраска более или менее скрадывается.
На иллюстрации справа я попытался продемонстрировать, что получается на экране при использовании технологии ClearType. Горизонтальное разрешение фактически утраивается ценой небольшого цветного "шума".
Насколько небольшого? Это зависит от разрешения дисплея. Чем выше - тем меньше "грязи". В принципе при "родном" разрешении дисплея в 200 dpi можно получить фактически 600, что очень, очень и очень неплохо.
Что касается ограничений технологии, то в них нет ничего страшного. Резюме: мне нравится. Если конкуренты это не реализуют, у продуктов Микрософта будет существенный плюс. Но только в отношении электронных книг - как я уже говорил, ClearType пригоден практически только для чёрного текста на белом фоне (или наоборот), и вовсе не подходит в иных случаях. Например, подсветка ссылок цветом в броузерах начисто отрубает возможность использовать ClearType.
 
      
  | 
        | 
  ||
Опять 
  98-ка скрючилась. Выполняя ежеполугодовой ритуал переустановки этой неизбежной 
  системы я в очередной раз смотрю на "расклад" прерываний в моей машине 
  и думаю, что ему не хватает козырного туза - ещё десятка свободных IRQ или, 
  на худой конец, избавления от вагона древнего барахла, которое отдельного прерывания 
  вовсе не заслуживает, а получает его лишь по историческим причинам - так сложилось.
Попробуем прикинуть, для начала, количество прерываний, которого бы мне хватило на все желаемые выкрутасы если оставаться в рамках традиционной архитектуры PC XT/AT.
Неизбежные прерывания, "зашитые" в архитектуру:
| Номер | Устройство | 
| 0 | Системный таймер | 
| 1 | Клавиатура | 
| 2 | Каскадирование второго контроллера | 
| 3 | COM2 | 
| 4 | COM1 | 
| 6 | Флоппи | 
| 7 | Принтер | 
| 8 | Второй таймер | 
| 12 | Мышь PS/2 | 
| 13 | Сопроцессор | 
| 14 | Первичный IDE | 
| 15 | Вторичный IDE | 
Нуждающиеся в прерываниях желаемые устройства:
| Номер | Устройство | 
| 5 | Звуковая карта 1 | 
| 9 | Видео | 
| 10 | Сетевая карта | 
| 11 | USB | 
| (в пролёте) | Третий IDE | 
| (там же) | Четвёртый IDE | 
| (снова) | Вторая звуковая карта | 
| (ещё раз) | FireWire | 
Зачем четыре IDE? О, это понятно - чтобы посадить на отдельный шлейф два винчестера, CDROM и CDWR. Зачем два винчестера? Это тоже очевидно - первый куплен в прошлом году (нормально продать нельзя, а выкидывать - глупо, поэтому на него своппинг идёт:), второй - в этом.
Четырёх прерываний минимум мне не хватает для машины моей мечты. (условно говоря, конечно - реально я мечтаю об ином:). И это я ещё не говорю о SCSI и второй видеокарте, а то бы нехватка доросла до шести.
С другой стороны, смотрим на первую таблицу, задавая себе вопрос - а нужны ли всем этим устройствам прерывания.
| Номер | Устройство | 
| 0 | Системный таймер | 
| перевесить на USB | Клавиатура | 
| 2 | Каскадирование второго контроллера | 
| перевесить на USB | COM2 | 
| перевесить на USB | COM1 | 
| Выкинуть в мусорное ведро | Флоппи | 
| перевесить на USB | Принтер | 
| Хватит с нас и одного таймера - более высокочастотного из двоих | Второй таймер | 
| перевесить на USB | Мышь PS/2 | 
| 13 | Сопроцессор | 
| 14 | Первичный IDE | 
| 15 | Вторичный IDE | 
Шесть прерываний можно освободить без крови, семь если не плакать по флоппи. Например, купив CDRW. Можно сократить аппетит и ещё на 4 прерывания, отказавшись от IDE в пользу FireWire, но это требует более серьёзных усилий и менее безобидно, чем "перевешивание" COM-порта с шины ISA на шину USB - прямо там же, внутри компьютера. Последнее при должной драйверной поддержке выглядит прозрачно, а первое - нет.
Но проще и дешевле всего - добавить на материнку ещё один контроллер прерываний. Пусть бы их было 24, а? Чтобы не слишком менять устоявшиеся "обычаи" распределить их можно было бы так:
| Номер | Устройство | 
| 0 | Системный таймер | 
| 1 | Клавиатура | 
| 2 | Каскадирование второго контроллера | 
| 3 | COM2 | 
| 4 | COM1 | 
| 5 | Каскадирование третьего контроллера | 
| 6 | Флоппи | 
| 7 | Принтер | 
| 8 | Второй таймер | 
| 9 | FireWire | 
| 10 | Третий IDE | 
| 11 | Четвёртый IDE | 
| 12 | Мышь PS/2 | 
| 13 | Сопроцессор | 
| 14 | Первичный IDE | 
| 15 | Вторичный IDE | 
| 16 | Звук 1 | 
| 17 | Звук 2 | 
| 18 | Сеть | 
| 19 | (про запас) | 
| 20 | USB | 
| 21 | (про второй запас) | 
| 22 | Видео 1 | 
| 23 | Видео 2 | 
Как бы было здорово... Ан не будет. А значит - ждём самоиздыхания всех этих LPT и COM... Пару лет, минимум.