In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-03-26 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Servers >
Share
Shulou(Shulou.com)05/31 Report--
Today, I will talk to you about what to do when the Windows desktop stack is exhausted. Many people may not know much about it. In order to make you understand better, the editor has summarized the following content for you. I hope you can get something according to this article.
Each desktop object on the system has a desktop stack associated with it. Desktop objects use heaps to store menus, hooks, strings, and windows. The system allocates the desktop heap from a system-wide 48 MB buffer. This buffer is also used by desktop heap printers and font drivers.
The desktop will be associated with the window station. The window station can contain zero or more desktops. The size of the desktop heap assigned to the desktop with the window station can be changed in the following registry values.
Note that the / 3gb switch is not recommended for Microsoft. The / 3gb switch is specified in the boot.ini file.
HKEY_LOCAL_MACHINE\ System\ CurrentControlSet\ Control\ Session Manager\ SubSystems\ Windows
The default data for this registry value looks like the following (all on one line):
% SystemRoot%\ system32\ csrss.exe ObjectDirectory=\ Windows SharedSection=1024,3072512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16
How the following numeric value "SharedSection =" control is allocated on the desktop heap. These SharedSection values are specified in kilobytes. There are no separate settings for desktops with interactive and non-interactive window stations.
Note that if the SharedSection value in the registry is modified, the previous changes made by the system must reboot take effect.
Important this partition, method, or task contains steps that tell you how to modify the registry. However, serious problems can occur if the registry is not modified properly. Therefore, make sure that you follow these steps carefully. Back up the additional protection registry before you modify it. You can then restore the registry if there is a problem. For more information about how to back up and restore the registry, click the article number below to view the appropriate article in the Microsoft knowledge base:
322756 (http://support.microsoft.com/kb/322756/) how to back up and restore in the Windows registry
The first SharedSection value (1024) is the heap size shared by all desktops. This includes holding handle windows, menus, icons, cursors, and so on) and shared system settings global handle tables. It is impossible that you will need to change this value.
The second SharedSection value (3072) is the size of each desktop heap associated with the "interactive" window station WinSta0. User objects such as attachments, menus, strings, and windows consume memory in this desktop heap. It is impossible to change this second SharedSection value.
Each desktop created in the $Interactive window workstation uses the default 3072 KB desktop heap. By default, there are three desktop computers created by the system in Winsta0:
Winlogon
The Winsta0 default of the default application will specify the "default" to be used by all processes in the STARTUPINFO.lpDesktop structure members. The window station and desktop inherit from the parent process when there is an empty lpDesktop structure member. All services executed with the allow services to interact with the desktop option selected under the local system account will use "Winsta0\ Default". All of these processes will share the same desktop heap associated with the "default" application desktop.
When the screen saver is displayed, create the screen saver desktop of the screen saver in the interactive window station (WinSta0).
The third SharedSection value is the size of each desktop heap associated with the "non-interactive" window station. If this value does not exist, the size of the desktop heap for the non-interactive window station will be the same as the size specified for the interactive window station (the second SharedSection value).
If there are only two SharedSection values, you can add ", 512" as the third value to specify the size of the desktop desktop heap created on the non-interactive window workstation.
Each service process executed under the user account will receive a new desktop at the non-interactive window station that created the Service Control Manager (SCM). Therefore, performing each service under the user account consumes the kilobytes specified by the desktop heap in the value of the third SharedSection. The "default" desktop heap in the $non-interactive service window station (service-0x0 3e7 $) that allows services to interact with desktops that are shared with all services executed under the local system account.
The total desktop heap used in interactive and non-interactive window stations must be suitable for 48 MB system-wide buffers.
Decreasing the second or third SharedSection value increases the number of desktops that can be created at the corresponding window station. Smaller values limit hooks, menus, strings, and the number of windows that can be created on a desktop. On the other hand, increasing the second or third SharedSection value reduces the number of desktops that can be created, but it increases the number of hooks, menus, strings, and the number of windows that can be created in a desktop.
Because SCM creates a new desktop in each service process that runs under the user account of the non-interactive window station, the third SharedSection value of the larger desktop value reduces the number of user account services that the system can run successfully. The minimum value that can be specified as the second or third SharedSection value is 128. Any attempt to use a smaller value defaults to 128.
The desktop stack allocates the user objects needed for a process by User32.dll. If you do not rely on the User32.dll application, it will not consume the desktop heap.
Note that in Windows Server 2003, specific events are logged in the system event log when one of the following conditions is true:
If the desktop heap is full, the following events are logged:
Event type: warning
Event source: Win32k
Event category: none
Event ID: 243,
Date: Date
Time: Time
User: not applicable
Computer: ServerName
Description: a Desktop stack allocation failed.
Increase the size of the desktop heap in this case.
If the total desktop stack becomes a system-wide buffer size, the following events are logged:
Event type: warning
Event source: Win32k
Event category: none
Event ID: 244
Date: Date
Time: Time
User: not applicable
Computer: ServerName
Description: unable to create desktop heap depleted due to desktops.
In this case, reduce the heap size of the desktop.
On Windows Server 2003, the system-wide buffer is 20 MB when one of the following conditions is true:
You are in a Terminal Services environment.
The / 3gb switch is specified in the Boot.ini file.
Add: there are two reasons for desktop stack exhaustion: one is that there are no secure calls to the system dynamic link libraries User32.dll and kernel32.dll, and the other is that the desktop stack is really exhausted. According to the analysis, this problem is caused by the long-term use of remote Desktop Terminal Services, which leads to only 20MB in the buffer and no 48MB that meets the needs of interactive process calls.
With error message: Warning: 243rig A desktop heap allocation failed.
After reading the above, do you have any further understanding of what to do when the Windows desktop stack runs out? If you want to know more knowledge or related content, please follow the industry information channel, thank you for your support.
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.