Blob binari
En el context del programari lliure i de codi obert, el programari propietari només disponible com a executable binari s'anomena blob o blob binari. El terme sol referir-se a un mòdul de controlador de dispositiu carregat al nucli d'un sistema operatiu de codi obert i, de vegades, també s'aplica al codi que s'executa fora del nucli, com ara imatges de firmware del sistema, actualitzacions de microcodi o programes d'usuari.[1][2][3][4][5][6] El terme blob es va utilitzar per primera vegada als sistemes de gestió de bases de dades per descriure una col·lecció de dades binàries emmagatzemades com una única entitat.
Quan els proveïdors de maquinari informàtic proporcionen documentació tècnica completa per als seus productes, els desenvolupadors de sistemes operatius poden escriure controladors de dispositius de maquinari per incloure'ls als nuclis del sistema operatiu. Tanmateix, alguns proveïdors, com Nvidia, no proporcionen documentació completa per a alguns dels seus productes i, en canvi, proporcionen controladors només binaris. Aquesta pràctica és més habitual per als controladors de gràfics accelerats, dispositius de xarxa sense fil i controladors RAID de maquinari.[7] Sobretot, els blobs binaris són molt poc freqüents per als controladors d'interfície de xarxa no sense fil, que gairebé sempre es poden configurar mitjançant utilitats estàndard (com ifconfig) de manera immediata; Theo de Raadt d'OpenBSD ho atribueix al treball realitzat per un sol desenvolupador de FreeBSD.[8]
Política per projecte
[modifica]Alguns projectes aprovats per FSF s'esforcen per proporcionar un sistema operatiu gratuït i eliminaran tots els blobs binaris quan no hi hagi documentació de maquinari o codi font per als controladors de dispositius i tot el microprogramari aplicable; aquests projectes inclouen l'empaquetament del nucli Linux-libre de FSFLA, Parabola, Devuan, Trisquel i LibreCMC. Tanmateix, la gran majoria dels projectes de codi obert fan una distinció entre els controladors de dispositiu només binaris (blobs) i el microprogramari només binari (no considerats blobs), permetent que cert microprogramari propietari es distribueixi lliurement com a part dels seus nuclis i, en desacord d'alguns col·laboradors principals, també admeten l'ús de controladors de dispositiu propietaris que es distribueixen externament, proporcionant interfícies de compatibilitat internes per a aquests controladors propietaris i espai d'usuari. components per treballar amb el seu sistema. Els projectes que segueixen aquesta política inclouen el propi nucli de Linux, NetBSD, FreeBSD, DragonFly BSD i la majoria de distribucions de Linux.[9] Alguns d'aquests projectes ofereixen opcions per construir el sistema sense microprogramari propietari, excloent així el microcodi sense font sota demanda.[10]
Referències
[modifica]- ↑ Michael Larabel. «Coreboot: Replacing Intel's Binary Video BIOS Blob» (en anglès). Phoronix, 06-08-2012. [Consulta: 23 juny 2015].
- ↑ Chris Hoffmann. «How Intel and PC makers prevent you from modifying your laptop's firmware» (en anglès). pcworld.com, 13-02-2015. [Consulta: 23 juny 2015].
- ↑ «BIOS Freedom Status» (en anglès). puri.sm, 12-11-2014. [Consulta: 23 juny 2015].
- ↑ Michael Larabel. «Raspberry Pi GPU Driver Turns Out To Be Crap» (en anglès). Phoronix, 24-10-2012. [Consulta: 23 juny 2015].
- ↑ Jake Edge. «Chromium suddenly starts downloading a binary blob» (en anglès). LWN.net, 17-06-2015. [Consulta: 23 juny 2015].
- ↑ «3.9: "Blob!"» (en anglès). OpenBSD Release Songs. OpenBSD, 01-05-2006.
- ↑ «Debian packages built from the source package 'firmware-nonfree' - Binary firmware for various drivers in the Linux kernel» (en anglès). [Consulta: 25 març 2010].
- ↑ Constantine A. Murenin. «Почему так важно иметь документацию по программированию железа» (en rus). Linux.org.ru, 10-12-2006.
- ↑ Matzan, Jem. «BSD cognoscenti on Linux». NewsForge, 15-06-2005. Arxivat de l'original el 23 March 2006. [Consulta: 7 juliol 2006]. See Christos Zoulas's response to "Is sharing between Free/Open/NetBSD and the Linux kernel a common occurrence? And if so, does it go both ways?"
- ↑ «build/options/WITHOUT_SOURCELESS_UCODE» (en anglès). BSD Cross Reference. FreeBSD, 04-02-2012.