Select Page

Windows OS Processes and Common Issues

In this article, we’ll discuss the issues associated with Windows OS processes and the diagnostic tools used by DBServ specialists to address them.

Key Windows OS Process Categories

In the latest Windows versions, processes are grouped into three categories:

    • Application Processes. Processes of applications, including those built into the OS and third-party software.
    • Background Processes. Continuous processes without their own windows, which can include OS services and third-party software like antivirus programs or analytics collectors.
    • Windows Processes. Essential system processes responsible for the OS’s core functionality.

Causes of Windows OS Issues

There are numerous reasons why problems may arise in Windows OS. When focusing on processes affecting database management systems (DBMS), two primary issues emerge: an abnormal number of processes and an excessive number of running PowerShell or Command Prompt scripts.

Too Many Processes

Under normal conditions, the number of processes in Windows should not exceed 100. If this number reaches 1,000, it could indicate system malfunctions or significant changes. In such cases, it’s essential to identify these processes.

At DB-Service, our diagnostics are thorough, and since processes running on client machines are often critical to their business, we never stop any processes without explicit client approval.

High Number of Running Scripts (e.g., conhost.exe or powershell.exe)

A common source of problems is an excessive number of scripts running simultaneously, often linked to Command Prompt (conhost.exe) or PowerShell (powershell.exe) processes.

This typically occurs because scripts take too long to execute, leading to overlapping tasks in memory. Prolonged script execution can result from server issues or database errors, such as locks (discussed in a previous article).

The first step in addressing this issue is to identify its source. Next, the server and database must be checked for overall performance degradation.

If diagnosing the problem independently is not possible, it’s advisable to consult database support and administration experts, such as the engineers at DB-Service. Remember, finding the answer to “how to start a Windows process without causing issues” is not always straightforward.

How to Diagnose Issues

There are countless tools available for diagnosing OS process issues. In this article, we’ll focus on standard Windows tools rather than third-party utilities.

Task Manager

Task Manager is the default graphical tool for managing processes. Processes are displayed and managed on two tabs — “Processes” and “Details” — whose appearance may vary depending on the Windows version.

1.“Processes” Tab

As shown in the screenshot below, this tab provides essential process information and performance metrics.

In this Task Manager window, you can group, sort, add, and remove displayed information, making it easier to analyze performance effectively.

As shown in the screenshot below, this window also allows you to access detailed information about a specific process, navigate to its executable file, or force-terminate the process.

2.Details” Tab

As shown in the screenshot below, this tab provides more detailed information about the processes.

Command Prompt


The Command Prompt in Windows is a program that emulates an input field in the user interface. To manage processes via the Command Prompt, there are two utilities:

  • Tasklist. Displays a list of processes on a local or remote computer. For each process, it shows the image name, PID, session name, session number, and memory usage.
  • Taskkill. Allows you to terminate any process.

How to View Processes in Windows Using These Utilities?

By default, information is displayed in a table format, but the /fo key allows output in a list or CSV format, while the /v key provides more detailed information about the processes.

For example, the command:
Tasklist /v /fo LIST
will display a detailed description of all processes in a list format.

The list can be refined using the /fi key, which applies filters to the output. For instance:
Tasklist /fi “username eq dmitry.b” /fi “memusage le 40000”
This command displays processes for the user dmitry.b consuming no more than 40 MB of memory.

To access full help documentation for the Tasklist and Taskkill commands, use the /?’ key (e.g., Tasklist /?`).

PowerShell


Another key diagnostic tool is PowerShell, a powerful collection of cmdlets for managing processes on local or remote computers.

To retrieve a list of processes, use the Get-Process cmdlet. An example of the output can be seen in the screenshot below.

The Where-Object cmdlet applies filters to displayed information. For example, to list processes consuming CPU resources and sort them in ascending order of usage, use the command:
Get-Process | where {$_.cpu -gt 0} | sort cpu -Descending

PowerShell allows retrieving detailed information about any process. For instance, to examine the sqlservr process properties, run:
Get-Process -Name sqlservr | Get-Member -Membertype property

You can then extract specific properties (e.g., name, ID, file path, loaded modules, and start time) and display them as a list with:
Get-Process -Name sqlservr | Format-List name, id, path, modules, starttime

How To Stop Processes in Windows?

If you need to terminate a process, use the Stop-Process cmdlet in PowerShell. It stops the specified process by its name or ID. However, since DB-Service does not terminate processes without client approval, even in this example, we won’t terminate anything. Instead, we demonstrate passing the Get-Process results through the pipeline:
Get-Process | where {$_.name -match “Taskmgr”} | Stop-Process

Note: Get-Process cannot display processes on remote computers. To view remote processes, use the Get-WmiObject cmdlet. For example, to check processes on a remote computer, use:
Get-WmiObject win32_process -computername RUDC-D-DB63 | ft name, processid, description

Common Mistakes in Process Diagnostics

When diagnosing Windows process issues, users without a system administration background often encounter difficulties. To avoid jeopardizing business continuity, we recommend entrusting diagnostics to professionals. By contacting DBServ, you’ll receive expert support for your databases along with comprehensive 24/7 administration services.

Summary

We have discussed the main types of processes in Windows OS and the issues arising from their abnormal behavior. The article also covered how DBServ uses Windows built-in tools to diagnose and resolve problems effectively.