262 IBM TotalStorage DS6000 Series: Performance Monitoring and Tuning
8.1 Supported Linux distributions
For Intel-based servers attaching the DS6000, currently there are two major Linux
distributions that are supported:
򐂰 Red Hat Enterprise Linux 2.1, 3.0, and 4.0
򐂰 SuSE SLES 8, 9
If problems are encountered with installed versions, you may be required to update your Linux
configuration to a higher supported level before problem determination can take place.
For further clarification and the
most current information about DS6000-supported Linux
distributions and kernel support compatible with the DS6000, you can refer to the Web site:
http://www-03.ibm.com/servers/storage/disk/ds6000/interop.html
Once there, click the link for the PDF file: Download interoperability matrix.
8.2 Introduction to Linux OS components
It is important to understand the makeup of Linux and how the different components relate
and play together in the overall performance of the system.
8.2.1 Understanding and tuning virtual memory
To get the most performance out of a Linux server, it is important to understand how Linux
manages memory resources. It uses an
always full concept of memory management, which
means that the system fills up the whole memory with data (such as applications, kernel,
cache). When the server boots, the first thing it does is divide the memory into different
pieces. The memory is divided into three main components:
1. Kernel space
Kernel space is where the actual kernel code is loaded, and where memory is allocated for
kernel-level operations. Kernel operations include scheduling, proc management,
signaling, device I/O, paging, controlling of the underlying hardware and swapping, and
the core operations that other programs rely on.
2. User space
User space is where all the application code (for example, database, e-mail, and Web
server code, user shell login or Xwindows) is loaded. In the user space, the memory is
again divided into chunks. Every process has its own allocated memory space. No other
process can access that data. This makes the operating system more stable since each
process is using its own protected part of the memory.
3. Buffer space
The rest of the memory is used as buffer space for caching. Every time an I/O operation
(for example, disk, network) is performed, the data is transferred first to memory for
caching. All Direct Memory Access (DMA) and busmaster transfers are also performed
through the buffer space.
It is the kernel’s job to manage all of these different memory spaces. When, for example, an
application is started, the kernel must transfer all the data from the hard disk to the buffer
space. After that, it must free some memory in the user space to load the application. Since
the user space will be divided into different chunks, it must sometimes rearrange certain
processes to get a big enough chunk for the application it is trying to load. When it has

Get IBM TotalStorage DS6000 Series: Performance Monitoring and Tuning now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.