"Linux 2.6.30-rc2 (http://groups.google.com/group/fa.linux.kernel/msg/d6e30bed3... - представлен второй кандидат в релизы Linux ядра 2.6.30 в который добавлена поддержка архитектуры MicroBlaze (http://en.wikipedia.org/wiki/Microblaze) (софт-процессоры на базе Xilinx FPGA), обновлена input-прослойка, улучшен код загрузки прошивок (firmware), добавлен драйвер intel для организации виртуальных сетей.С обзором новшеств, ожидаемых в 2.6.30, можно познакомиться здесь (http://www.opennet.me/opennews/art.shtml?num=21165).
URL: http://groups.google.com/group/fa.linux.kernel/msg/d6e30bed3...
Новость: http://www.opennet.me/opennews/art.shtml?num=21266
А я и незнал (теперь узнал отсюда - http://www.opennet.me/opennews/art.shtml?num=21258) что в кернеле есть "исходники" драйверов в виде блоба типаunsigned char a[] = {0x11, 0x22, .. };
Интересно что на этот счет говорит Линус и как они на это согласилсь.
Существует проект Linux-libre, который занимается поддержкой варианта ядра, не содержащего несвободные компоненты (фирмварь, микрокод и т.д.): http://linux-libre.fsfla.org/
> Интересно что на этот счет говорит Линус и как они на это согласилсь.Можно сколько влезет с этим не соглашаться, а как себе представляете скажем работу например wi-fi карты в которую порой надо загрузить фирмваре до того как она сможет работать?И так с кучей устройств - им до начала надо скормить фирмваре.Являющееся куском кода для внутреннего проца железки.На эти кишки нет никакой документации а прошивка предоставляется блобом.Кстати если пойти чуть дальше - у сидиромов и жестких дисков тоже есть фирмваре.Ессно без исходников.И как это линукс смеет работать с HDD и CD-ROM?Переписать все фирмваре, блинваре и подобные штуки на опенсорц - нереально.
Все чего можно достичь если энфорснуть лицензию до буквы - это то что то же самое фирмваре будет грузиться из файлов на диске формально не являющихся частью ядра.Ну, прибавится немного гемора дровописателям (будучи модулем ядра, вдуть потребные байты из array'а несколько проще чем из файла, вот и все отличие).А так - если вы думаете что производители побегут давать вам сорцы фирмварей - напрасно вы так думаете.Если вы думаете что сможете переписать все фирмвари у всего железа - я в этом резонно сомневаюсь.
Ну ладно firmware, пока ждем компы и девайсы с открытой архитектурой, придется с этим смириться, но насколько я понял, там есть также драйверы с кодом в виде блобов, а не только в части где загружается фирмваре в девайс.
насколько я понял -- нет. бинарный блобы в маинлайн -- это чисто firmware. драйверы с прилинкованными проприетарными компонентами (типа vmware, некоторых madwifi) в mainline не включаются. поправьте, если ошибаюсь.
Кстати, а люди как-то живут и без этих блобов - http://www.opennet.me/opennews/art.shtml?num=21274
Есть хуже - request_firmware();Через которые, как раз и можно реализовывать атаки на подобии "patch via /dev/mem"
>> Есть хуже - request_firmware();Нафик такое, если решено блобы заливать на девайс, то лучше уж этим занималось ядро.. чем больше мостов между usermode-kernelmode тем меньше возможных дыр.
Дело в том, что когда фимрваре заливается с помощью собственного загрузчика,
ППЗУ железки, прошивка и утилита живут и функционируют в юзерспейсе,
а когда все три сваливают в ядро, тут и входов больше;
* Можно притвориться "правильной" прошивкой,
* Не притворяться, но писать в "правильные" адреса, адресного пространства ядра.
* Притворится "правильным USB устройством", требующим фирмварме, которое после
заливки в него прошивки, станет очень "добрым устройством", сливающие SSL хэши
для дальнейшего исследования.