Browse Prior Art Database

Method And System For Detecting Looping Tasks In An Operating System (OS)

IP.com Disclosure Number: IPCOM000194605D
Publication Date: 2010-Apr-03
Document File: 2 page(s) / 23K

Publishing Venue

The IP.com Prior Art Database

Abstract

A method and system for detecting looping tasks in an Operating System (OS) having preemptable, priority driven dispatching mechanisms is disclosed.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 56% of the total text.

Page 1 of 2

Method And System For Detecting Looping Tasks In An Operating System (OS)

Disclosed is a method and system for detecting looping tasks in an Operating System (OS) having preemptable, priority driven dispatching mechanisms. The looping tasks are detected using bottleneck analysis. The bottleneck analysis periodically samples

what each and every task in the operating system is doing. The state of each task is

categorized at the moment of observation. The state of a task may be one of, but not limited to, using CPU, using Integrated Facility Assist (IFA), using System z Integrated Information Processor (zIIP*), CPU wait, IFA wait, zIIP wait, using Input / Output (I/O),

waiting for I/O, enqueue wait.

Based on the categorization of the states, a profile of state popularity over time is built. The states of using CPU, using IFA, using zIIP, CPU wait, IFA wait, and zIIP wait are the states indicating the tasks that the CPU wishes to run instructions for. These are collectively referred to as CPU usage. Remaining states imply that the task needs other system resources such as I/O or storage. The states that represent CPU usage are populated by a looping task. Thereafter, a new metric is formed by combining the percentages of the states on using CPU, CPU wait, using IFA, IFA wait, using zIIP, and zIIP wait. The percentage of each state is calculated by dividing that state's count by the total count summed over all the state buckets for the task. The new metric formed is called as loop index. For the remaining states, the percentage may be zero or negligible. Thresholds may be set for the loop index to indicate a looping task.

Additionally, other states representing CPU usage may also be created. Upon

identification of these created states, percentages associated with these states may be added to the loop index.

For example, in a scenario, several CPU looping...