El Sun, May 29, 2016 at 09:27:43PM +0200, Narcis Garcia deia: > Què passa si a un ordinador li instal·lo tots els paquets firmware-* que > hi ha als diferents repositoris de Debian 8? >
Que tindras un tros més de disc dur ple. També tindras el risc que associïs a programari privatiu, si els "diferents repositoris" inclou non-free. També podria passar, però això és hipotètic i se suposa que no hauria de passar, que el sistema confongui un dispositiu per un altre, li carregui el firmware que no toqui i deixi de funcionar. I llavors sense el paquet de firmware igual va. Però és molt hipotètic, si passés això, s'informaria un bug i es miraria d'arreglar. No pressuposaria que passen aquestes coses. > Funcionaran automàticament els dispositius associats quan es connectin? Sí, depén del dispositiu. Però en general és possible. També necessitaras els mòduls del nucli, que si tens el nucli normal ja potser hi són, potser programes d'usuari... És que és una pregunta molt genèrica, no ? Jo crec que en general facilitar que els dispositius funcionin tan bon punt es connecten és un objectiu de totes les distribucions, cadascuna amb les restriccions que tingui. Vull dir que en general hauria de funcionar i en concret amb maquinari molt tancat, o massa nou o vés a saber, doncs poden caler més coses o no acabar funcionant. Va cas per cas. > Implica una major càrrega del nucli o de processos? No, en principi el nucli només carrega en memòria el firmware per copiar-lo al dispositiu i després possiblement el treu de memòria. O bé quan arrenca o bé quan detecta esdeveniments de connexió i desconnexió deu mirar si coneix el maquinari nou, cridar els controladors que tingui i, si un controlador creu que necessita firmware, el busca al directori on l'ha deixat el paquet i si el troba el copia cap al dispositiu i segueix la inicialització. Això sí, com més dispositius funcionen en principi més possible càrrega, sobre tot si els fas servir, però no crec que això ho vegis com un problema. Si el nucli està desbinariat (deblobbed) és possible que per comptes de carregar el firmware tregui un missatge al log. O és possible que el carregui si és algun dels pocs firmwares lliures. No sé si firmware està molt ben definit o quina acepció exacta usa debian en la nomenclatura de paquets, però en principi és codi que s'executa a processadors que no són la CPU que executa el nucli linux, sinó control·ladors de dispositius diversos. Un ordinador actual no és com un ordinador clàssic de llibre amb una CPU, una memòria i línies d'E/S, és més com una xarxa local d'un munt de CPUs amb memòria pròpia o compartida, intercanviant dades i missatgeria per busos. La tarja de xarxa porta un processador, el disc dur un altre, la targeta gràfica no sé quants, els xips d'entrada/sortida o els troços del propi xip on hi ha la CPU tenen més processadors per gestionar protocols, interrupcions i mandanganes, n'hi ha per tot arreu. I últimament hi ha CPUs que vigilen que les altres CPUs no facin coses que algú que no coneixes en un despatx remot no vol que facin... Cadascun executa els seus programets o programassos. N'hi ha que els porten enregistrats en ROMs pròpies i n'hi ha que carreguen els programes des de la CPU principal, que els acaba llegint de ROMs o, si hi ha el paquet de firmware instal·lat, del disc dur. Llavors dubto que els paquets de firmware puguin carregar el sistema perquè el programari que porten no s'executa sobre la CPU principal (bé el microcodi de la CPU sí, però t'hauries de mirar la CPU principal com un processador emulat per una CPU VLIW que executa el microcodi, massa complicat, deixem-ho). Seria si de cas en el cas d'algun dispositiu que fa servir firmware diferent en diferents moments i el nucli ha d'anar canviant-lo, però sembla estrany. Els dispositius quan funcionen també poden iniciar moviments de dades per busos que enlenteixin l'accés de la CPU a dades i per tant el rendiment general, però forma part de l'operativa del dispositiu. I en tot cas si no ho fa segurament el dispositiu no funcionarà i si vols que funcioni, doncs la miqueta de càrrega l'hauràs d'assumir, no?