Diktovat použití ovladačů open, mi nepřijde moc open a free. Navíc já třeba používám Linux pro svoji obživu a některé ovladače prostě potřebuju. Pokud si mám vybrat jestli ovladač formou BLOBU, nebo BLOB obsahující (například MadWIFI), tak radši binární, než žádný.
Navíc někteří výrobci _OPRAVDU_ do ovladače zabudovávají svoje know-how, které prostě _NENÍ_ určené pro cizí oči (grafické karty) a os by jim neměl diktovat buď to zveřejníte, nebo nic.
Samozřejmě by se měl výrobce snažit zapouzdřit tento kód do co nejmenší ruličky a zbytek odělat open (tahle jsou stavěné ovladače pro Atheros wifi, kde je malej birání modul od výrobce nazvaný HAL) popsat volání a kompilovat to pro vše možné i nemožné.
Pokud si mám vybrat jestli ovladač formou BLOBU, nebo BLOB obsahující (například MadWIFI), tak radši binární, než žádný.
No a pak se nedivte, že je váš počítač eldorádem pro script-kiddies. To jste zrovna mohl zůstat ve windows, tam vás aspoň nemáte ani falešný pocit bezpečí. Tam to máte jasné hned.
Ono to nebude tak horké, žeby mi Madwifi někdo hacknul z netu přez IP to mi opravdu nenamluvíte a hackování přez MAC vrstvu je asi teoreticky možné, ale VELMI geograficky omezené (v rámci lokální sítě)
Pokud je omezene, pak rozhodne ne VELMI. Jste si jisty, ze ve Vase radiovem dosahu neni jediny kompromitovany stroj s WI-FI kartou? A ten staci hacknout vzdalene. A co takhle road-wariors, projit se bankovni budovou s vlastnim notebookem mozna bude jednou docela job. Z praktickeho hlediska mate pravdu omezene a z teoretickeho jste vedle jak ta jedle.
Tak dobře, tohle je všechno pravdivé, ale z čeho vyplívá, že tohle všechno hrozí jenom při použití ovladače s blobem? ze "studie" někoho, komu se jedno takové ŕešení povedlo hacknout?
Jde o to, ze v tom BLOBu nemusi byt chyba, ale zamerna zadni vratka. A zatimco do otevreneho kodu je neumistite (muzete, ale budete tim velmi riskovat nejen ostudu), tak v BLOBu je jen velmi tezko nekdo odhali. Myslim, ze se zde nemusime bavit o vyhodach otevreneho kodu v otazkach bezpecnosti, je to notoricky zname.
Nekde v puvodnim clanku byl odkaz na test italskych hackeru z milanskeho letiste, kde zjistili tisice nachylnych bluetooth zarizeni...
A co si budeme povidat, vetsina lidi ma napr. wifi karty nastaveny tak, ze jsou zaple automaticky pri startu systemu a tudiz ta wifina sama pro sebe hleda site v okoli. Na zmineny utok nemusite byt soucasti nejake wifi site, staci ze mate wifinu zaplou -- ano je to uzemne omezene :)
Tak at zabudujou svoje know-how do ty graficky karty. Posledni dobou je trend zabudovavat do komplikovanych systemu typu graficke, WiFi, karty a CPU spis bugy a neelegantni design nez nejake know-how.
Zkusím vám to přiblížit z pohledu dekompozice: Řekne se co musí být analogové, jak se udělá rozhraní na digitální úroveň, co je třeba odřít zákaznickým obvodem, logikou, MCU v hardwaru a co uděláme softwarem (ovladačem).
Část tohohle ovladače je prostě brána jako část zařízení a já chápu jako vývojář že jí firmy chtějí tajit.
Pokud neupíráme výrobci právo interní část výrobku tajit (já to nedělám) tak lze BLOBy eliminovat zbytečným zadrátováním těhle funkcí do zařízení -> složitější koncept a větší chybovost -> dražší zařízením
Tohle prostě bude dělat málokdo a já s tím souhlasím. Takže přestanťe vymejšlet hardware "designed for BSD", ale hledejme cesty jak to vyřešit ku spokojenosti všech stran. Já myslím, že např HAL v Madwifi je pěkný konsenzus.
Jojo, uznávám že Clock ví a já mu za Ronju moc děkuji.
Nadruhou stranu Ronja ovladače nepotřebuje :) a já znám Clockovo názory že moje deska na ronju, nebo deska na open grafickou kartu (obojí GPL) neni free, protože neni v GSchem.
>> Tak at zabudujou svoje know-how do ty graficky karty. Posledni dobou je trend zabudovavat do komplikovanych systemu typu graficke, WiFi, karty a CPU spis bugy a neelegantni design nez nejake know-how.
presne tak, a co potom s takym kusom HW, ked sa pride ze je na prt?
s pristupom "chceme vsetko zadara" mozme prist aj k tomu, ze chceme open HW :), pozadujme od Intelu,AMD,Ati,.. schemy ich zariadeni!
Chachá, s takovými argumenty by dneska nebyl ještě ani GCC. IMHO si lidé svobodný software opravdu zaslouží, nejen kvůli té bezpečnosti, ale jak vidno, i kvůli ní to stojí za to. :-)
Jediný důvod, který může výrobcům bránit uvolnit ovladače jako open source je te, že jsou tak šíleně zprasené, že by se za ně museli stydět. Kolikrát totiž ovladače píší odborníci na hardware, kteří ale o programování mnoho neví. Driver hell ve windows budiž odstrašujícím příkladem.
Pokud si ovladač představujete něco jako: najdi na PCI; request_*; píchni handler někam na /dev; šoupej datama sem a tam, pak je to jednoznačně na veřejnou specifikaci a open ovladač a prskající reakce, pokud to tak není, jsou plně oprávněné.
Víděl jste někdy ale např. implementaci mp3? je plná různých tabulek a algoritmů získaných experimentálně (mj i s pomocí mrtvého lidského ucha) dlouhodobou prací teamu lidí.
Stejně tak z každého CCD členu lezou data .raw a je třeba je sofistikovaně překousat.
Takže důvody nemusí být jen: "je to zprasené" ale: "chci chránit něco, co jsem pracně vypiplal" (algoritmus, který ze shitové kamerky vytáhne brilantní obrázky) a NA TO SAKRA MAJÍ PRÁVO! už to opakuju po xté.
Zrovna ty graficke karty, kde to lidi trapi asi nejvic, obsahuji tak chytry procesor, ze by IMHO nebyl problem to know-how nastrkat do ni.
A co se tyce tabulek, ty at jsou klidne binarni, stejne to na nich nebude poznat :-). Dulezite je aby byl open-source kod. Pokud se budete snazit, dokazete veskere know-how narvat do tabulek - proste napisete virtualni stroj ktery bude ty data zpracovavat podle tabulek a z jeho kodu bude zrejme, ze v tech tabulkach nemuze byt zadny podraz. Bohuzel, asi to bude o neco pomalejsi, ale na spouste mist to nebude vadit.
Bud budeme mit system plny BLOBu, ktery bude dost rozsireny a ktery tudiz bude pakou na vyrobce hardwareu, aby od BLOBu upustili.
Nebo budeme mit system bez BLOBu, ktery nebude rozsireny.
U OpenBSD je tenhle pristup naprosto v poradku. U Linuxu, ktery se snazi byt (i) desktopovym systemem a tudiz musi podporovat akcelerovanou 3D grafiku a hejno rozlicnych WiFi bazmeku, jsou karty rozdane trochu jinak.
Bohužel trucovití pánové si neuvědomují, že připuštění BLOBú tlačí na výrobce daleko víc než nekompromisní ignorace.
Když Linux a spol "nepodporujou", tohle je taky jejich jediná odpověď, co uslyšíte
Pokud ale podporujou Linux alespoň Blobem, minimálně se s vámi musí bavit a řešit vaše problémy s jejich zařízením které "jste si koupily kvůli provozování na Linuxu, tak ať sakra funguje", nebo ho vrátíte
To uz prehanite. Pokud trucovitost spociva ve snaze o bezpecnost, cistotu, inzenyrsky pristup bez kompromisu, pak OK trucovitost je na miste. Chytraku jako vy, kteri jsou schopni obetovat bezpecnost za vlastni pohodli je svet plny. Dukazem toho je majoritni operacni system, ktery je takovych kompromisu pln. Jestlize vy chcete, aby byl Linux na urovni Windows, abyste mohl jen klikat a zasouvat a pak odvirovavat a divit se, proc se system chova jak potrkana koza, pak ja chci Linux jako technicky dokonalou nahradu nedokonalych Windows a prosty kompromisu pro lenochy. System, ktery dela to co chci ja a dela to transparentne. Muzete s tim pristupem nesouhlasit, ale nesmite pritom tvrdit, ze vasi oponenti trucuji. Vetsina z nich jako autoru OS totiz nad timto problemem premysli o krapet dele nez vy.
To už přeháníte, pokud mne označujete za "vy chcete, aby byl Linux na urovni Windows, abyste mohl jen klikat a zasouvat a pak odvirovavat a divit se, proc se system chova jak potrkana koza, pak ja chci Linux jako technicky dokonalou nahradu nedokonalych Windows a prosty kompromisu pro lenochy".
Já jen říkám, že někdy je a musí být v ovladači prostě kód který výrobce nechce ukázat a že by se měl hledat konsenzus jak z téhle situace ven.
Prostě tady vždycky platilo, že se software píše na hardware, takže řeči "měli by všechno integrovat do hardware a jen poskytnout specifikace" jsou mimo mísu a od lidí kteří nikdy k hardwaru nečuchli.
Tím samozřejmě nechci samozřejmě brojit proti tlaků na výrobce o co největší otevřenost.
Takže poslední co k tomu říkám:
1) Pokud je zařízení jednoduché, měl by výrobce zajistit vytvoření open source ovladače+kompletní domumantaci hardwarového iface (abych si mohl napsat vlastní alternativu)
2) pokud potřebuje do ovladače umístit např. složité výpočty různých parametrů, ať kromě předchozího napíše modul, který zkompiluje pro všechno možné.
Tomuhle se prostě nevyhneme, tak musíme být ochotní trochu ustoupit a je to logické
Ale zkuste se zamyslet, proč výrobce ten kód nechce ukázat. Buď se za něj stydí, nebo v něm má nějaké prasárny (třeba nějaký ten backdooreček a spyvaříček :-)).
Vas pristup, totiz oznacovat lidi, kteri nechteji binarni sajrajt v jadre za trucovite k nicemu jinemu nez k Windows c. 2 nepovede. Ze si to nejste schopen vydedukovat jen sice politovanihodne, ale alespon se jedna o vas problem.
Můj přístup k Win č.2 nepovede velice pravděpodobně, váš 100% ne, to máte pravdu.
Váš přístup ale povede k ořezání oblastí kam lze takový operační systém nasadit. Ano, rozběhnu to na každé desce, každém řadiči, síťové kartě, ale tím končím.
Chci si udělat kamerovej server?: smůla
Chci Wifi na 802.11a: možná, ale težko a musim vynechat výrobky s atheros chipsetem, kterejch je 90%
Grafika: jasně, na akcelerované 3d se můžu vy...
Nic z tohohle, nemusim do jádra kompilovat, neberte mi prosím možnost, že když není zbití tak můžu.
PS: jestli někdo čeká na vypuštění ovladaců grafických karet, tak se nedočká. O důvodech sem už psal
Tak at si ten HW strci do prdele.
Ja kupuji pouze to, co v linuxu funguje. Kdyz mam mit server, vsechny moduly budou v kernelu a nebo pod GNU .... jinak vybiram jiny server.
A doufam, ze az bude OpenGrafika, tak ji zacnou vyrabet hromadne taiwanci a ATI a Nvidia pujde se zisky dolu tak, ze budou litovat dne, kdy padlo rozhodnuti neuverejnovat specifikace.
Na desktop jsem prozatim utekl od ATI, protoze tam uz nefunguji dobre ani GNU drivery a utekl k Nvidii, protoze dela o 900% lepsi ovladace, ale vseho docasu.
Dnes krom grafiky neni duvod pouzivat jine nez GNU drivery, ke vsemu existuje HW, ktery v linuxu funguje.
"Kdyz mam mit server, vsechny moduly budou v kernelu a nebo pod GNU .... jinak vybiram jiny server".
Já samozřejmě taky, jednou jsem ale potřeboval nainstalovat do jedné ZŠ USB kamerku a zjistil jsem že nemám šanci. Pak jsem našel jeden ovladač, kterej jel jen v poor kvality, protože panáčci vyhodily z ovladače BLOB, kterej zpracovával data HI-quality. Byla kvůli tomu hádka mezi Linusem a spol a správcem ovladače, myslim, že to skončilo stažením ovladače komplet a to je škoda.
Jestli mi má v téhle situaci vadit BLOB tak pak jsem opravdu demagog.
"A doufam, ze az bude OpenGrafika...". i když bych si to moc přál, nevěřim, že bude konkurenceschopná jinak než na hraní ve KDE.
" ke vsemu existuje HW, ktery v linuxu funguje". 802.11a? asi se něco najde, ale těžko se žije, věřte
Osobne jsem rad, ze OpenBSD ma jinou strategii nez Linux. Nerad bych videl nejake predelavky pro zjednodusseni nejakych akci vuci masovosti.
Musim rict, ze v OpenBSD mam docela prehled, vim co dela vetsina souboru a vim proc tam jsou. Spousteci skripty jsou primitivni -- keep it simple stupid :) A hlavne vse just works.
To ze neumi XY, me moc netrapi, protoze chapu, ze jsou jine priority a co je cilem projektu.
At jsou windowsaci k Suse, Mandrive... Aspon nemusime porad odkazovat na OpenBSD FAQ :)
Jakkoliv povazuji Linux za lepsi, take jsem rad ze OpenBSD ma jinou strategii. Diverzifikace je dulezita obecne, ovsem ve smeru od "uzivatelske privetivosti" zvlaste - protoze jednou muze prijit bod, kdy ten linux bude v dobre vire tak priserne zasekan, ze uz bude nepouzitelny pro rekneme embedded zarizeni nebo starsi stroje (nebo extremni bezpecnost), a bude pozde v te chvili zacit vyvijet od zacatku.