Kolumni: Käyttöjärjestelmät kahveina

The Bizarre Cathedral esittää käyttöjärjestelmät kahveina:

1. ruutu: "The Bizarre Cathedral by Merc + Crimperman". 2. ruutu: "If software were coffee"; kuvassa pohjastaan haljennut ja vuotava mukillinen kahvia, jonka kyljessä Windowsin logo. 3. ruutu: Applen logolla koristeltu jalallinen lasi vaaleaa juomaa, pinnalla kermavaahtoa ja lasissa lusikka. 4. ruutu: Paljon mukeja, joista etualalla olevia koristavat Red Hatin, Debianin, SuSEn ja Ubuntun logot; rinnalla pussi, jossa teksti "LFS premium coffee beans".

Kehittelin huvikseni ajatusta hieman edelleen; lisäideoita sain kaveriltani Juhalta.

Windows
Nescaféta vuotavasta mukista, jonka korva on katkennut.
OS X
Kermavaahdolla ja makusiirapilla maustettua kahvijuomaa yksinkertaisen mutta tyylikkään näköisestä lasista, lusikalla. Juoman valmistaa barista nimeltä Steve, joka väittää tuotoksensa olevan yliveroista muihin verrattuna. Sinä uskot häntä ja maksat itsesi kipeäksi tuosta himoitusta juomasta.
Linux
Kaikki Linux-kahvit perustuvat reilun kaupan kahviin.

LFS
Pussillinen kahvipapuja.
RHEL vs. Fedora
Työpaikan kahvion kahvi vs. taukotuvan porukalla ostettu ja itse keitetty.
SLED, OpenSuSE
Samaa kuin edellä, mutta firma on saksalainen.
Mandriva
Café au lait.
Debian
Nokipannukahvia mustana, kuksasta.
Ubuntu
Nokipannukahvia maidon ja sokerin kera vaaleanruskeasta mukista.
*BSD
Tässä (kuten toki edellisissäkin) on edelleenkehittelyn varaa, sillä en tunne BSD-variantteja tarpeeksi hyvin keksiäkseni niille yhteisiä piirteitä, jotka erottaisivat ne edellisistä, tai mikä kussakin on keskeisintä.

FreeBSD
Edullista mutta hyvää peruskahvia.
NetBSD
Kaikki tykkäävät tästä kahvista.
OpenBSD
Pastöroidusta vedestä ja laboratorio-olosuhteissa kypsytetyistä pavuista valmistettu kahvi. Valmistaja, hullu professori, haistattelee sinulle jos yrität puhutella häntä.

[Ratkaisu] Km-moduulin kääntäminen ei onnistu

Lähtökohta
Näytönohjaimeni on Connect 3D:n valmistama, AGP-väylässä kiinni oleva Radeon 9600 -piirisarjalla varustettu All In Wonder. Kaappausta varten All In Wonder -näytönohjaimille on olemassa GATOS-projektin tuottama km-moduuli, jota ei ole saatavilla pakettivarastoista.
Linux-ytimestä käytössäni on versio 2.6.22-14-generic.
Pakettienhallinnassa linux-headers-generic ja cvs on asennettuna.
Ongelma
Jos lataan km:n sen www-sivuilta ja yritän kääntää lähdekoodia, kääntäminen epäonnistuu. Lisäksi lähdekoodissa ei ole Radeon 9600 -piirisarjan tunnistamiseen tarvittavia tietoja.
Ongelman syy
Km:n lähdekoodi on niin vanhaa ettei se ole yhteensopiva Linux-ytimeni kanssa eikä siinä ole huomioitu Radeon 9600 -piirisarjaa.
Ratkaisu
Lataan km:n lähdekoodin uusimman version CVS-versionhallintajärjestelmän avulla ja korjaan lähdekoodin toimivaksi.

  1. Lataan km:n lähdekoodin uusimman version seuraavalla komennolla:
    cvs -z3 \
    -d:pserver:anonymous@gatos.cvs.sourceforge.net:/cvsroot/gatos \
    co -P km
  2. Lataan korjaavan paikkaustiedoston seuraavalla komennolla:
    wget http://mummila.net/vuorovaikutus/files/2008/r9600-2_6_22.patch
  3. Sovellan paikkaustiedoston tiedot km:n lähdekoodiin seuraavalla komennolla:
    cd km && patch -p1 -i ../r9600-2_6_22.patch
  4. Nimeän 2.6-sarjan Linux-ytimelle sopivan Makefile-tiedoston niin että make-komento käyttää sitä:
     mv Makefile-2.6 Makefile</code

Kun tämän jälkeen käytän make-komentoa lähdekoodin kääntämiseen, sen suorittaminen onnistuu.

Huomautuksia

USB-laitteissa on virta tietokoneen sammuttamisen jälkeen

Lähtökohta
Tietokoneeni on SN45G-mallinen Shuttlen valmistama XPC, jonka emolevyllä on nForce2-piirisarja. Olen ladannut ja asentanut tietokoneeseen valmistajan uusimman BIOSin (versio FN45S00W, joka on julkaistu 29.3.2007).

Olen kytkenyt tietokoneeseeni useita USB-laitteita. Osassa laitteista, esimerkiksi web-kamerassa ja USB-jakajassa on LED-valot, jotka palavat silloin kun laitteissa on virta, ja jotka eivät pala silloin kun laitteissa ei ole virtaa, vaikka ne olisikin liitetty USB-porttiin.

Linux-ytimestä käytössäni on versio 2.6.22-14-generic.

Olen painanut työpöydän Paneelissa olevaa sammutusnappia ja valinnut sen tarjoamasta valikoimasta kohdan Sammuta, minkä jälkeen tietokone on sammunut.

Ongelma
USB-portteihin kytkettyjen laitteiden LED-valot palavat tietokoneen sammuttamisen jälkeenkin sen merkkinä, että niihin tulee edelleen sähkövirtaa. Haluan, että tietokoneen sammuessa USB-laitteisiin johdettu virta katkaistaan. Jatkuva virransyöttö on turhaa energiantuhlausta, sillä mikään USB-liitännäisistä laitteistani ei toimi ilman, että myös tietokone on päällä.
Ongelman syy
Ubuntussa on USB-laitteiden virran sammutukseen liittyvä ongelma, joka ilmenee tyypillisesti nForce-piirisarjoilla ja erityisesti juuri nForce2:lla varustettujen emolevyjen kanssa. Ongelma liittyy Linux-ytimeen ja tapaan jolla BIOS käsittelee ytimen antamia sammutuskäskyjä.
Ratkaisu
Ratkaisua ei vielä ole. Vaikka ongelman voi kiertää muuttamalla Linuxin sammutusrutiinia, ratkaisuksi siitä ei ole, sillä sammutusrutiini toimii silloin väärin, ja pohjimmiltaan vian uskotaankin olevan BIOSissa. Tästä syystä myös sammutusrutiinin muutoksen päätymistä viralliseen Linux-ytimeen pidetään epätodennäköisenä.
Huomautuksia
  • Tietokoneeni BIOS tarjoaa mahdollisuuden ottaa ACPI pois käytöstä. Tällä hetkellä se on käytössä, enkä vielä ole kokeillut ilmeneekö tässä kuvattu ongelma sittenkin, jos otan sen pois käytöstä.
  • Tätä ongelmaa ei ilmene silloin kun sammutan tietokoneen ohjelmallisesti Windows XP:stä.
  • Olen aiemmin kirjoittanut tästä samasta ongelmasta hieman tätä lyhykäisemmin englanniksi.

Ubuntu: USB keyboard not working after powerdown, powerup

I’m affected by Bug #48773, which, if I understand it correctly, means that my Nforce2 motherboard’s BIOS (the latest, FN45S00W from Shuttle) doesn’t treat the shutdown signal like it should, leaving all USB devices powered on. Windows (XP) isn’t affected or maybe it has a workaround – possibly something similar to the one presented over at Launchpad and Kernel Bug Tracker.

My setup doesn’t have annoyingly bright lights, but I do have one particularly troublesome issue related to this problem: my USB keyboard doesn’t seem to be able to wake up when I turn the power back on. I have to unplug and replug it in order to resurrect it. There is a weird performace issue in Windows when I hook it up into the PS2 port with an adapter, so I’d rather keep it plugged in as a USB device. But I may have to reconsider, since an official fix for the issue is considered unlikely.

Ubuntu: combining Applications, Places and System menus under one Launcher

Took me quite a while to find a way to do this, because the default Gnome menu bar is not very intuitively customizable (you can’t drag and drop System into Apps, and Places is nowhere to be found in the customization window), and yet that’s how I first conceptualized what I was trying to achieve should be done.

But you’re not meant to be able to combine these launchers into one on your own; instead, you need to remove the entire menu bar from the panel and then replace it with the Main Menu applet (from the Add to panel window). The Main Menu combines all three menus under one launcher, visualized with the Ubuntu circle logo by default.

Solved: Ubuntu, Acer AL707 and “Input not supported”

After installing Ubuntu 7.10 I could see it was still suffering from the annoying little bug all previous versions have: instead of the neat splash screen during booting, all I got was the LCD’s warning sign saying “Input not supported”.

After finding rest of the shiny new OS very likeable I decided to solve this problem at last. It was safe to proceed on this bold assumption that I could, because in all Ubuntu installations I’ve done the problem has not manifested itself until the first booting into the freshly-installed system. That is to say, the live CD does not have this problem, but displays the splash with no problems, so I knew there must be a way to make it work.

There was a helpful link on the Ubuntu Forums on how to fix a faulty splash screen. In the end, it was simply a matter of finding the right display mode -describing parameters for a couple of config files. As for the parameters, I initially tried to find them from the live CD, but apparently it’s using a different system from the one used by an installed Ubuntu (GRUB), so this path turned out to be harder than a simple trial and error.

First I tried a full-blown 1280×1024 pixels with 16.8M colors, which is the display mode that the desktop starts in and works just fine, but that didn’t work – which I probably could have guessed from the fact that the other config file, usplash.conf, already had this resolution.

Then I thought about the way Windows XP boots on this system: the logo looks a bit crude, as if with a lower resolution and color depth than on the desktop. So I tried 800×600 with a modest 256 colors – and already on the way down Ubuntu now displayed the splash screen! The reboot revealed final success: the splash screen now works.

To be short but exact, what I did to make it work was:

  1. sudo gedit /boot/grub/menu.lst
    so that at the very end of the first kernel line, after “splash” , I added
     vga=771
    – this corresponds to the SVGA mode of 800×600 pixels with 256 colors.
  2. sudo gedit /etc/usplash.conf
    so that
    xres=800
    yres=600
  3. sudo update-initramfs -u -k `uname -r`