Роб Кларк (Rob Clark), разработчик из компании Texas Instruments, развивающий открытый набор драйверов (http://www.opennet.ru/opennews/art.shtml?num=31670) для чипов OMAP и вовлечённый в разработку проекта Linaro (http://www.opennet.ru/opennews/art.shtml?num=32934), представил (http://bloggingthemonkey.blogspot.com/2012/04/fighting-back-... новый открытый графический драйвер для выпускаемых конкурирующей компанией Qualcomm чипов Snapdragon (http://ru.wikipedia.org/wiki/Snapdragon), поставляемых с интегрированными графическими процессорами Adreno (http://en.wikipedia.org/wiki/Adreno#Renaming_to_Adreno). При разработке использована эталонная платформа DragonBoard на базе Snapdragon S3 APQ8060 и обратный инжиниринг бинарных драйверов Qualcomm.Новый открытый драйвер получил название Freedreno (https://gitorious.org/freedreno/) и доступен для свободной загрузки под лицензией MIT. В настоящее время драйвер поддерживает 2D-акселерацию (реализована архитектура EXA), базовые композитные операции и может использовать совместно с X-сервером (подготовлен DDX-драйвер xf86-video-freedreno). В будущем планируется обеспечить поддержку 3D-акселерации и DRI2. Таким образом, ситуация открытыми драйверами для мобильных ARM-платформ начинает меняться к лучшему: кроме Freedreno в настоящее время развивается проект Lima (http://limadriver.org/), созданный (http://www.opennet.ru/opennews/art.shtml?num=33043) для разработки полноценных открытых драйверов для графического сопроцессора Mali (Mali-200 и Mali-400), также компаниями Texas Instruments и Samsung ведётся разработка базовых открытых графических драйверов для чипов OMAP и Exynos, в которых, к сожалению, пока не планируется поддержка 3D.
По словам Роба Кларка, работа выполнена в свободное от работы время и позиционируется как персональный проект, никак не связанный с компанией Texas Instruments и проектом Linaro. Роб рад был бы принять участие в развитии открытых драйверов для GPU Mali или IMGtech PowerVR, но пока не может этого сделать в силу своих обязательств перед Linaro и TI, так как такой шаг может рассматриваться как нарушение соглашения о неразглашении. С оборудованием Qualcomm Роб на своей прямой работе не сталкивается, поэтому можно не опасаться возможного конфликта интересов.
Для определения логики работы с чипами Qualcomm была создана небольшая библиотека libwrap, загружающаяся через LD_PRELOAD и позволяющая перехватывать все системные вызовы, совершаемые проприетарным драйвером, что позволило определить поток команд к GPU, информацию по адресам, координатам и т.п. Для разбора связанной с GPU активности и выявления типовых повторяющихся действий была написана утилита redump, при помощи которой на основе лога генерировался наглядный сводный отчёт (http://people.freedesktop.org/~robclark/composite-op.html), упрощающий анализ логики работы с GPU.Так как часть оригинального драйвера Qualcomm, работающего на
уровне ядра Linux, доступна в исходных текстах, нетрудно было выявить API для взаимодействия с закрытым бинарным компонентом. Работающий на уровне ядра драйвер Qualcomm распространяется под лицензией GPL и использует для управления памятью GPU технологию GEM (Graphics Execution Manager), но не предоставляет функций переключения видеорежимов, что позволяет лишь частично использовать его при дальнейшей реализации поддержки DRI2 и 3D.URL: http://www.phoronix.com/scan.php?page=article&item=qualcomm_...
Новость: http://www.opennet.ru/opennews/art.shtml?num=33604
Респект Робу Кларку.
> Респект Робу Кларку."Роб Кларк (Rob Clark), разработчик из компании Texas Instruments"
забавно, мир тесен, я буквально вчера с ним связывался, консультировался на тему работы с одной из штуковин в недрах OMAP4 под Linux, он три дня мне помогал, отнесся с пониманием к багу с которым я столкнулся, все решилив общем, хороший чел, спасибо ему :)
ТИшный разработчик реверсиндинирит квакомовский драйвер? Это жж не_с_проста...
Нормальные разработчики смотрят как сделано у других чтобы сделать лучше. Ненормальные разработчики выдают все за инновации, даже если у других лучше, лохи схавают.
> Нормальные разработчики смотрят
> Ненормальные разработчики выдают все заЦитируй Стива Джобса прямо, не стесняйся. Все плюную, поймут и простят.
>лохи схавают.
Причем здесь Джобс? В России зафигачят что нибудь, покажут президенту со словами "аналогов нет это суперинновационное решение" и продают государству в три раза дороже чем оно стоит как только государство заинтересуется.
> Причем здесь Джобс?При том что правда жизни.
Ракеты придумал Фон Браун. А Королев уже копипастил с него.
Но есть один нюанс! Это стало началом новых разработок.
Гагарин не на фау-2 в космос полетел.
может тогда скопипастил у Целковского ?
Ты намеренно коверкаешь Константина Эдуардовича, о недоношенный анон, который даже отпрысков еще в дупло своей бабе не напрыскал, не то, что в космос полететь, м? ;)
> Нормальные разработчики смотрят как
> Ненормальные разработчики выдают все за инновации, даже если у других лучше, лохи
> схавают.""Хорошие художники копируют, великие — воруют.""
Но, да: _Misattributed_
""Good artists copy; great artists steal.""
This is a favorite phrase of Jobs, but he is (mis)quoting Pablo Picasso. "Lesser artists borrow; great artists steal" is similarly attributed to Igor Stravinsky, but both sayings may well originate in T. S. Eliot's dictum: "Immature poets imitate; mature poets steal; bad poets deface what they take, and good poets make it into something better, or at least something different. The good poet welds his theft into a whole of feeling which is unique, utterly different than that from which it is torn."
Блин, ну ребята вы даете. Я цитаты Джобса не знаю, но я знаю что перед тем как что-то сделать нужно провести анализ рынка, посмотреть как у конкурентов реализовано. Это делается для того, чтобы второй раз не изобретать колесо и велосипед, а еще для того, чтобы получилось лучше чем у других. Про воровство патентов на изобретения речи нет.
> Блин, ну ребята вы даете. Я цитаты Джобса не знаю, но я
> знаю что перед тем как что-то сделать нужно провести анализ рынка,
> посмотреть как у конкурентов реализовано. Это делается для того, чтобы второй
> раз не изобретать колесо и велосипед, а еще для того, чтобы
> получилось лучше чем у других. Про воровство патентов на изобретения речи
> нет.Экономист детектед.
Под(!)смотреть как у конкуренотов и сделать лучше!
форточки и макоси вместе с кедами, уперты у ксерокса.
Я не экономист, я радиотехник. Этому в институте учат.>форточки и макоси вместе с кедами, уперты у ксерокса.
Ага, а бумага и порох у китайцев.
Диверсант, не меньше. :)
Данеужели?! Дочитай новость до конца.
> ... была создана небольшая библиотека libwrap,
> загружающаяся через LD_PRELOAD и позволяющая
> перехватывать все системные вызовы,Такс, передеводчики,
1. Эта либа не перехватывает системные вызовы, а подменяет библиотечные!
2. Не всё, а всего 7 - open/close/write/mmap/munmap/fflush/ioctl
https://gitorious.org/lima/lima/blobs/master/wrap/wrap.c
В оригинале http://bloggingthemonkey.blogspot.com/2012/04/fighting-back-... про системные вызовы: "It basically amounts to using a LD_PRELOAD shim to intercept system calls, digging through the kernel code to understand the existing userspace<->kernel API, and figuring out how to observe and log the interesting bits."
Тогда уж надо определится, системный вызов - это вызывающая функция (open/close/...) или вызываемая (sys_open/sys_close/...)?!
> 1. Эта либа не перехватывает системные вызовыВащета, ссылка на гит не на ту либу! Вы ссылаетесь на wrap для проекта lima, а автор юзал утилиту собственной разработки, исходника которой он не выкладывал, а только засветил лог отловленного ею:
http://people.freedesktop.org/~robclark/test-composite.log