[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Изменение раскладки при помощи hal



On Fri, 14 Aug 2009 08:55:43 +0200
Sergey Spiridonov <sena@hurd.homeunix.org> wrote:

> > Ничего тут невообразимого нет. Описать интерфейсы и не ломать их.
> > Ну и модули в отдельные процессы вынести, чтобы никакой плагин не мог
> > попортить чужое адресное пространство.
> 
> Просто интересно, есть ли уже готовая идея, как это приблизительно 
> сделать для браузера, например? То есть что  должно быть в центре, что 
> на периферии. Для микроядра известно что делать, есть примеры. А для 
> браузера? Для офиса?

Навскидку для файрфокса:
1. Оторвать хранилище паролей и научить его либо читать .netrc, либо
спрашивать пароль у внешней команды. Лично меня уже порядком утомило,
что при каждом запуске приходится нажимать "ок" в окне запроса пароля на
прокси. Было бы сделано как указано, я бы написал 5 строк на шелле и
более бы не вспоминал о том, что хожу через прокси.
2. Оторвать транспортный уровень. Скармливать рендереру html по мере
прибытия и получать от него запросы на картинки/css, которых ему не
хватает.
3. Вынести каждый таб в отдельный процесс. Как показал опыт гуглохрома,
от этого тормозить не начинает.
4. Определить интерфейсы рендерера, DOM и javascript интерпретатора. Их
из-за интенсивного обмена данными разнести по процессам вряд ли
получится, но сделать их хотя бы заменяемыми тоже неплохо.
5. В итоге от всей махины "файрфокс" останется только программка,
которая будет рисовать страницу в указанное иксовое окошко.

Предвижу вопрос "а что же станет с плагинами?". Поэтому отвечу сразу:
плагины уйдут в соответствующий модуль. Причём вещи типа adblock
можно будет реализовать фильтром на линке между "рисовалкой" и
транспортом.  В результате чего писать их станет возможно не только на
дикой смеси javascript и xml, но и на языке, который захочет выбрать
конкретный плагинописатель.

-- 
Alexander Galanin
http://galanin.nnov.ru

Attachment: pgpgB1zZFsCrI.pgp
Description: PGP signature


Reply to: