"Adaptive Quality of Service Architecture"
(for the Linux kernel)

Documentation

Install instructions for aquosa-qosres

Please, adapt the following to the versions that you actually download.
  1. Be sure you have gcc 4.1 and make 3.81. Both FedoraCore 6 Zod and Ubuntu 7.04 Feisty already install such versions
  2. Kernel set-up
    1. Download the sources for one of the supported kernel versions and the corresponding patch available from the kernel-patches package. Then uncompress the kernel and apply the patch. For example:
      $ tar -xjf linux-2.6.17.4.tar.bz2
      $ cd linux-2.6.17.4
      $ patch -p1  < ../linux_2.6.17.4-2.6.17.4-gs-2.patch
    2. Configure the kernel by disabling SMP support, enabling the Processor Type / Generic Scheduler feature, setting HZ to the highest available value, enabling fully preemptable kernel, and ensuring disable of any spinlock-related kernel debugging option. Then, compile, install and reboot with the new kernel. If the new kernel does not boot at all, try generating a new initrd file through mkinitrd or mkinitramfs
      $ mkinitramfs -o /boot/initrd.img-2.6.17.4-gs-2 2.6.17.4-gs-2
      then reference the initrd file in the /boot/grub/menu.lst file and reboot.
  3. Download the aquosa-qosres sources archive, uncompress it and configure it through (adapt the pathnames to the ones that you actually use):
    $ tar -xzf aquosa-qosres-0.5.2.tar.gz
    $ cd aquosa-qosres-0.5.2
    $ ./configure \
        --with-kernel-sources=/usr/src/linux-2.6.17.4-gs-2 \
        --prefix=/usr/local/aquosa
    Then, compile and install the components:
    $ make && sudo make install

Using aquosa-qosres

  1. Start the aquosa-qosres service:
    $ sudo /usr/local/aquosa/etc/init.d/aquosa-qosres start
  2. Wrap a yes program within a server with half bandwidth and verify it occupies half CPU (see screenshot):
    $ /usr/local/aquosa/bin/qres-wrap 10000 0 20000 \
        /usr/bin/yes > /dev/null &
    $ top

Old install instructions (might still help)

Latest news

2010-08-04
The IRMOS Real-Time Scheduler on lwn.net

2010-07-03
New real-time SMP scheduler (IRMOS)

2010-05-30
About page added to website

2009-11-25
Papers page added to website





Last update:
August 4, 2010