background image

SUSE Linux Enterprise Real Time is an add-on to SUSE® Linux Enterprise that allows you to run tasks which require
deterministic real-time processing, in a SUSE Linux Enterprise environment. SUSE Linux Enterprise Real Time
meets this requirement by offering several different options for CPU and IO scheduling, CPU shielding and setting
CPU affinities to processes.

Installing SUSE Linux Enterprise Real
Time

There are two ways to set up SUSE Linux Enterprise Real
Time:

• Install it as an add-on product when installing the SUSE

Linux Enterprise Server 10 SP1.

• Install it on top of an already installed SUSE Linux Enter-

prise Server 10 SP1.

SUSE Linux Enterprise Real Time always needs a SUSE Linux
Enterprise Server SP1 base, it cannot be installed in stan-
dalone mode. Refer to the SUSE Linux Enterprise Server
Installation and Administration manual, Section “Installing
Add-On Products” at

http://www.novell.com/

documentation/sles10/sles_admin/index.html

?page=/documentation/sles10/sles_admin/

data/sec_yast2_sw.html

to learn more about in-

stalling add-on products.

The following sections provide a brief introduction to the
tools and possibilities of SUSE Linux Enterprise Real Time.

Using CPU Sets

In some circumstances, it is beneficial to be able to run
specific tasks only on defined CPUs. For this reason, the
linux kernel provides a feature called cpuset. Cpusets pro-
vide the means to do a so called “soft partitioning” of the

system. Dedicated CPUs, together with some predefined
memory, work on a number of tasks.

All systems have at least one cpuset that is called

/

. To re-

trieve the cpuset of a specific task with a certain process id

pid

, use the command

cat /proc/

pid

/cpuset

. To

add, remove, or manage cpusets, a special file system with
file system type

cpuset

is available. Before you can use

this file system type, mount it to

/dev/cpuset

with the

following commands:

mkdir /dev/cpuset

mount -t cpuset none /dev/cpuset

Every cpuset has the following entries:

cpus

A list of CPUs available for the current cpuset. Ranges
of CPUs are displayed with a dash between the first and
the last CPU, else CPUs are represented by a comma
separated list of CPU numbers.

mems

A list of memory nodes available to the current cpuset.

memory_migrate

This flag determines if memory pages should be moved
to the new configuration, in case the memory configura-
tion of the cpuset changes.

cpu_exclusive

Defines if this cpuset becomes a scheduling domain, that
shares properties and policies.

SUSE Linux Enterprise Real Time 10 SP1 Quick Start

SUSE Linux Enterprise 10 SP1

NOVELL® QUICK START CARD

1

Summary of Contents for LINUX ENTERPRISE REAL TIME 10 SP1

Page 1: ...g CPU Sets In some circumstances it is beneficial to be able to run specific tasks only on defined CPUs For this reason the linux kernel provides a feature called cpuset Cpusets pro vide the means to do a so called soft partitioning of the system Dedicated CPUs together with some predefined memory work on a number of tasks All systems have at least one cpuset that is called To re trieve the cpuset...

Page 2: ...move a cpuset you only need to remove the cpuset directory For example use rmdir dev cpuset exampleset to remove the previously generated cpuset named exampleset In contrast to normal file systems this works even if there are still en tries in the directory Note that you will get an error like rmdir example set Device or resource busy if there are still tasks active in that set To remove these tas...

Page 3: ...heduled to the specified list of CPUs The command taskset can either be used to start a new process with a given CPU affinity or to redefine the CPU affinity of a already running process Examples taskset p pid Retrieves the current CPU affinity of the process with PID pid taskset p mask pid Sets the CPU affinity of the process with PID pid to mask taskset mask command Runs command with a CPU affin...

Page 4: ...ted by block sequences to reduce seeking la tencies the other is sorted by expire times for each re quest Normally requests are served according to the block sequence but if a request reaches its deadline the scheduler starts to work on this request cfq The Completely Fair Queuing scheduler uses a separate I O queue for each process All of these queues get a similar time slice for disk access With...

Page 5: ...e_async and fifo_expire_sync The fifo_expire_ variables define the timeout in milliseconds for asynchronous and synchronous I O requests Typically fifo_expire_async affects write and fifo_expire_sync affects both read and write operations quantum Defines the number of I O requests to dispatch when the block device is idle slice_async slice_async_rq slice_sync and slice_idle These variables define ...

Page 6: ...ransmitted without the express written consent of the publisher For Novell trade marks see the Novell Trademark and Service Mark list http www novell com company legal trademarks tmlist html All third party trademarks are the property of their respective owners A trademark symbol etc denotes a Novell trademark an asterisk denotes a third party trademark 6 ...

Page 7: ...Created by SUSE with XSL FO 7 ...

Reviews: