Es mostren els missatges amb l'etiqueta de comentaris FreeBSD. Mostrar tots els missatges
Es mostren els missatges amb l'etiqueta de comentaris FreeBSD. Mostrar tots els missatges

dilluns, 9 d’abril del 2007

la grandesa de l'open source

Heu tingut mai una torradora que no fa les torrades com us venen de gust?
No us agradaria que la vostra cafetera us posés directament el sucre a la taça on us serveix el cafè?
Oi que us encanta trobar-vos el programari en un idioma entenedor?

Doncs bé, l'open source (moviment per a produir programari permetent l'accés al codi font de forma lliure) permet això i molt més. Sense anar més lluny, us comentaré que he començat un projecte per a portar PAPI a FreeBSD.

I què és PAPI us preguntareu. I FreeBSD?

PAPI és una API (a.k.a Application Programming Interface - interfície per a programació d'aplicacions) open source que permet al desenvolupador d'aplicacions i d'eines obtenir informació, quasi en temps real, dels comptadors de rendiment que hi ha en els processadors actuals.
Amb PAPI som capaços d'analitzar en més detall el rendiment de les diverses aplicacions que corren en els diversos sistemes d'alt rendiment (com ara BlueGene/L) i visualitzar problemes existents en l'aplicació i amb el que els analistes i experts de la màquina podran proposar millores segons els resultats obtinguts.

FreeBSD és un sistema operatiu lliure derivat del 4.4BSD i del 386BSD i que actualment tinc instal·lat a l'ordinador des d'on escric aquestes paraules, i del qual n'estic encantat de la vida. La mascota de FreeBSD és un dimoniet anomenat beastie, i el logotip és una mena de bola de vidre vermella amb un parell de banyes.

PAPI, encara que es pot emprar en moltes arquitectures i sistemes operatius, no té suport per a FreeBSD, encara que FreeBSD ofereix una llibreria anomenada pmc (amb la seva pròpia API) que permet accedir als diferents comptadors de rendiment que hi ha al processador.

A la feina tenim un visualitzador de traces post-mortem anomenat Paraver amb el que podem analitzar què ha succeït en una execució d'una aplicació amb força detall. Gràcies a PAPI som capaços d'obtenir informació de la CPU, de primera mà i de forma , amb el que l'anàlisi de les aplicacions guanya en qualitat.
Així que veient la importància d'aquesta funcionalitat. M'he posat en contacte amb les dues parts per a saber quin era l'estat de la situació del porting de PAPI a FreeBSD, i veient que era un tema aturat, m'he ofert per a tirar aquest projecte endavant. Ara només cal posar-se a mirar-se el codi disponible de les dues parts i començar-lo a remenar. A veure què en surt de tot plegat!

Serà la meva primera contribució de codi lliure al món!

I és que aquesta és la grandesa de l'open source! Podem afegir noves funcionalitats a programes existens. O podem fer que la cafetera afegeixi el sucre de forma automàtica a l'hora de servir el cafè! O podríem modificar la torradora per a que deixés les vores del pà més torrades i la molla més flonja!

dissabte, 7 d’abril del 2007

el fons és el que importa


Usualment, quan s'instal·lava un nou entorn gràfic, els fons d'escriptori que hi havia per defecte solien ser monocromàtics, d'algun color que calmi la vista (el blau n'és un gran exemple).

Evidentment, però, a un gran nombre d'usuaris els agrada donar un toc personal a l'ordinador amb el que habitualment treballen per tal de fer l'entorn més agradable (com si de la pròpia habitació es tractés). Per aquesta raó, normalment es posen imatges simpàtiques, fotografies de llocs visitats, de les nostres mascotes, de les nostres aficions, dels nostres ídols mediàtics... del que es consideri oportú, vaja!

Fa temps que coneixia l'existència del programa Xearth i tenia ganes de tastar-lo. Xearth és un programa dibuixa el globus terraqui, identificant algunes ciutats, al fons de pantalla de l'ordinador (del gestor de finestres X, encara que existeix una versió per a Windows) i gira el globus segons l'hora que és.
Com que fa poc em vaig dedicar a reinstal·lar tot el sistema de l'ordinador amb el que usualment treballo, em vaig engrescar per a provar-lo, però francament, em va decebre veure que era tan senzill i em vaig dedicar a buscar pel sistema de ports de FreeBSD si hi havia algun remake.

Cercant, cercant... em vaig trobar Xplanet el qual semblava més interessant. Les captures de pantalla indicaven que es podia generar la imatge des de diferents punts, a diferents planetes (o llunes), que tenia l'opció d'identificar diferents punts del planeta que es visualitzava i que es generaven en el mapa les zones de dia i de nit.

Sense dubtar-ho, me'l vaig instal·lar. Tot i que en un principi em funcionava bé, trobava a faltar la localització de les ciutats (cosa que Xearth ja feia), així que vaig haver de postejar al forum dels desenvolupadors per a que m'expliquéssin què havia de fer per a tenir les localitzacions d'alguns ciutats en pantalla.

Heus aquí les instruccions:
Crear ~/.xplanet/config amb el següent contingut
[default]
twilight=10
[earth]
marker_fontsize=9
marker_color=grey
marker_file=earth

Un cop està creat, invocar xplanet amb el paràmetre
-config ~/.xplanet/config
Tant senzill com això!

Heus aquí els resultats obtinguts (són captures del matí i de la tarda).



I vosaltres, què hi teniu al fons?

dissabte, 24 de febrer del 2007

SSH fs a FreeBSD 6.2

El paquet fusefs-sshfs permet muntar en un directori local l'accés a un directori en una màquina remota emprant el protocol SSH. Aquest paquet està format per una capa que és adjacent al kernel del sistema (mòdul fuse.ko) i una altra capa que fa de mitjançera entre el mòdul i la utilitat de muntatge.

Per a instal·lar aquest paquet tenim dues opcions (la primera requereix el codi font de la utilitat mount) que han de ser executades com a Charlie root:
  • cd /usr/ports/systutils/fusefs-sshfs ; make install clean, o bé,
  • pkg_install -r fusefs-sshfs
Per a inicialitzar el mòdul cada cop que s'iniciï la màquina cal establir fusefs_enable="YES" al /etc/rc.conf (comproveu que fuse.ko és a /boot/kernel). Per a estalviar-vos el reboot de la màquina feu kldload /boot/kernel/fuse.ko.

Un cop tenim el mòdul a memòria ja podem muntar directoris en màquines remotes. Per exemple aquesta comanda enllaçarà al nostre DIRECTORI_LOCAL el DIRECTORI_REMOT de la màquina "host" quan hi accedeix l'usuari "user":

mount_fusefs auto DIRECTORI_LOCAL sshfs user@host:DIRECTORI_REMOT

Si volem que els usuaris puguin emprar aquest procediment cal que la variable de sistema vfs.usermount valgui 1 (és a dir, executar sysctl vfs.usermount=1) i afegir-los al group operator.