AIX KERNEL INTERNALS PDF

Be it for memory, CPU, networking or storage, I've explained how to manipulate certain pieces of kernel code for specific purposes. Most people who email me mention that this advice has positively impacted their environments. While I'm always grateful for these responses, in this case you provided some inspiration as well. Because a lot of you also asked about all the kernel tuning options available in AIX, I realized that I should delve deeper into this topic in a new series of articles.

Author:Kazraramar Dobar
Country:Armenia
Language:English (Spanish)
Genre:Travel
Published (Last):7 May 2007
Pages:269
PDF File Size:3.67 Mb
ePub File Size:16.11 Mb
ISBN:236-4-21261-728-9
Downloads:4759
Price:Free* [*Free Regsitration Required]
Uploader:Vozahn



Be it for memory, CPU, networking or storage, I've explained how to manipulate certain pieces of kernel code for specific purposes. Most people who email me mention that this advice has positively impacted their environments. While I'm always grateful for these responses, in this case you provided some inspiration as well. Because a lot of you also asked about all the kernel tuning options available in AIX, I realized that I should delve deeper into this topic in a new series of articles.

So let's get to it. The kernel is the heart of any operating system. A major function of this core code is to provide access to the hardware on which it runs.

Reads and writes to disk occurred at one speed: slow. Data flowed over the network at baud if you were lucky. Monitors could display only monochrome alpha-numeric characters. Tuning options as such were not available in the UNIX kernel. Changing the speed at which data flowed meant rewriting and recompiling the code.

As computing systems evolved, it became clear that more sophisticated hardware required the support of a more sophisticated kernel. So, OS kernels got bigger. With AIX, the tipping point, in my opinion, came in the late s. By then admins recognized that IBM was shipping a set of discrete dials and switches that allowed us to adjust various performance aspects of kernel code.

These systems included a switch that routed information among its various nodes also physical , functioning much as network switches and routers do today. Of course, hardware power and performance have taken quantum leaps since those days.

As a result, the capability to tune ever more discrete pieces of the AIX kernel code has taken on significantly greater importance. As of the latest AIX version , there are nearly discrete tunables in the four performance groups. Once the range of possible values are factored in, you're looking at literally thousands of tuning options. I know, because I've spent more than 20 years doing this. Fortunately, internal AIX documentation makes this challenge a bit more manageable.

The tuning options are segregated into individual units with their own man page style help guides. Further, each performance resource group lets you display its tunables in three ways: as a terse list, in spreadsheet format, or in verbose list format. Newbie admins in particular should always opt for the verbose list; it provides the best at-a-glance information about every AIX kernel tunable.

IBM groups kernel tunables into numerous categories. That takes in a broad swath, and obviously, I can't cover everything.

This stuff is pretty deep, and it would take one or multiple articles to adequately explain. This too would require its own article. Instead, I'll focus on the specific sets of CPU, memory, networking and storage tunables that I'm asked about most frequently in my performance practice.

Its job is to grant CPU execution time for every thread in the box, with all the various functions those threads can perform. As in the early days of computing, these functions can be broadly classed under the umbrella of hardware access; but nowadays, the capability to finely tune the kernel is truly amazing. The schedo -FL output is displayed in figure 1. Dashed lines separate each tunable, and to the right of the tunable names, you'll find a series of mainly numeric codes.

The last column of output generally consists of a single letter typically a capital letter, though there are some lower-case exceptions ; for the schedos, D and B are most common. At the top of the file, you'll see a line with what appears to be abbreviations.

It looks something like this:. This line describes the characteristics of every CPU tuning option that follows. From left, these abbreviations head columns and stand for the tunable name, its current and default value, and its boot time BOOT value.

The next two abbreviations, min and max, represent the minimum and maximum values allowed for the tunable. Next is the unit value UNIT , which can be boolean, dispatches, spins, microseconds or numerous other values.

Then we have the single-letter designations in the type column. I'll get into this later in the series, but it's not as confusing as it sounds. Here's the timeslice line:. Timeslice is the dial that controls the amount of time a thread is allowed to run on a CPU. A timeslice duration in AIX is 10 milliseconds ms. For example, a P typically runs at 3, MHz, which works out to more than 3 billion clock ticks or cycles.

See this for more about the timeslice parameter. Tuning your system's CPU timeslice is necessary to: 1 eliminate context switching, and 2 allow threads more running time or occasionally, less time on a given CPU.

The timeslice tunable has other uses, but those two are the most common. From left then, the timeslice line lists the current timeslice value, its default value and its boot value, which ranges from 0 to about 2 billion. In the far right column, we see the cap D, which means the tunable is dynamic and can be freely changed. Timeslice has no dependencies. That's a quick overview of the timeslice value.

The value-description line can also be incorporated with every tunable you list. Rather than issue a schedo -FL, simply append the name of the tunable to the command. In the case of timeslice, your output will look like this:. So take some time to familiarize yourself with every schedo tunable, both in master-list format schedo -FL and individually schedo -FL.

Incidentally, the same display method can be applied to the memory, networking and storage tuning parameters. Oh, you've not heard of that? Then you'll definitely want to, ahem, stay tuned. By Mark J. Here's the timeslice line: timeslice 1 1 1 0 2G-1 clock ticks D Timeslice is the dial that controls the amount of time a thread is allowed to run on a CPU.

About the author. Post a Comment Note: Comments are moderated and will not appear until approved.

BRIGHTY OF THE GRAND CANYON PDF

AT62G: AIX 6 Internals I: Process and Memory Management

Linux is a registered trademark of Linus Torvalds in the United States and other countries. The use of this information or the implementation of any of these techniques is a customer. Customers attempting to adapt these techniques to their own environments do so at their own risk. This document may not be reproduced in whole or in part without the prior written permission of IBM. Note to U. Government Users — Documentation related to restricted rights — Use, duplication or disclosure is subject to restrictions.

74LS164N DATASHEET PDF

AIX/6000 : Internals and Architecture

.

ANESTESICOS LOCALES EN ODONTOLOGIA PDF

IBM AIX device driver development

.

ARUN BAHL ORGANIC CHEMISTRY PDF

Of Dials and Switches: An Introduction to Tuning the AIX Kernel

.

Related Articles