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

Documentation

Old install instruction (may still help)

Here you can find instructions to use the AQuoSA software.
  • first of all, read all requirements and download instructions here. Note: you can skip the following step trying to use aquosa-install-x.y.z.tgz script that does it for you. You have only to install the kernel and kernel modules (see below)
  • extract all archives
  • copy the AQuoSA kernel patch aquosa-linux-2.4.32.patch in the linux directory and patch it with:
    $ patch -p1 < aquosa-linux-2.4.32.patch
  • configure the linux kernel running:
    $ make xconfig (or, if you prefer, make menuconfig or make config)
  • build the kernel running:
    $ make dep && make bzImage && make modules
  • install the kernel image and the kernel modules (to install the kernel image read your boot loader documentation; to install the modules simply type make modules_install inside the kernel directory). You must be root to do this
  • define the variable LINUX_DIR typing:
    $ export LINUX_DIR=/path/to/linux
  • compile the make package (you need make-3.81 to build the AQuoSA module and libraries), running from the make package directory:
    $ ./configure && make
  • use the just built make program to build the AQuoSA sources, typing (you must be inside the make directory):
    $ ./make -C /path/to/aquosa/sources/directory
  • reboot the system and run the new built "AQuoSA" kernel

Testing and using

If all the previous steps succeed (we hope so :), you can test your installation going in the AQuoSA sources directory.
Here, in a directory called _compiled, you can find all you need: kernel modules, libraries, utility and test programs.
  • To load kernel modules, type
    $ ./start_aquosa.sh
    (note: modules are located in the directory _compiled/modules/ and are called qresmod.o and qmgrmod.o)
  • To use the AQuoSA test and utility programs, you must export the variable LD_LIBRARY_PATH, typing from the AQuoSA directory:
    $ export LD_LIBRARY_PATH= \
    $LD_LIBRARY_PATH:`pwd`/_compiled/lib
  • In the directory _compiled/bin/ you can find test and utility programs. To test the installation, type from AQuoSA directory $ make test -C qosres/src and $ make test -C qosmgr/src
  • To run a program with QoS guarantee, use qoswrap from the directory _compiled/bin/. The syntax is:
    $ ./qoswrap required_execution_time minimum_required_exec_time period_of_reservation path_to_program program_parameters.
    For example, to run the MPEG player mplayer reserving to it at list 5 msec and up to 10 msec of CPU time every 40 msec, run:
    $ ./qoswrap 10000 5000 40000 /use/bin/mplayer mymovie.mpg
  • Note that the sum of all required bandwidth (calculated as sum of minimum_required_exec_time/period_of_reservation for each reservation) must not exceed 95%
Have fun!

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