Want to make Throttlestop like app for college project

Feb 12, 2025
10
0
10
So yeah the title
We are told to choose something new so I thought since I am using Throttlestop so why not just try to make.
I have some experience in C#.

Can I do it?
 
Something new is a pretty loose description, recreating an existing product wouldn't seem to fit. Still, it is a good exercise.

Have you tried?

Even something simple like your own application and displaying some data from the hardware sensors?
 
Can I do it?
You need a signed driver to access the registers within the CPU. See if you can find a copy of the old WinRing0 driver. I think it has been out of development for over 15 years so it might be hard to find. There are few if any free alternatives.

The WinRing0 driver has some known security vulnerabilities. Some antivirus software might block this driver which will prevent you from using it.

Without Ring 0 access to the CPU, you will not be able to read any hardware related data from any of the model specific registers within the CPU.

Edit - Good news. I just did a search and found that the WinRing0 driver is still being maintained by German Aizek.

https://github.com/GermanAizek/WinRing0

You will also need Volume 4 of the Intel Software Developer Manuals. It lists many hardware registers but a lot of information is hidden from the public.

https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html
 
Last edited:
  • Like
Reactions: Someone_Else02
Something new is a pretty loose description, recreating an existing product wouldn't seem to fit. Still, it is a good exercise.

Have you tried?

Even something simple like your own application and displaying some data from the hardware sensors?
I have tried making like reading the system information like cpu ram and gpu like stuff and lately added a button to get real time temperatures.
 
i
You need a signed driver to access the registers within the CPU. See if you can find a copy of the old WinRing0 driver. I think it has been out of development for over 15 years so it might be hard to find. There are few if any free alternatives.

The WinRing0 driver has some known security vulnerabilities. Some antivirus software might block this driver which will prevent you from using it.

Without Ring 0 access to the CPU, you will not be able to read any hardware related data from any of the model specific registers within the CPU.

Edit - Good news. I just did a search and found that the WinRing0 driver is still being maintained by German Aizek.

https://github.com/GermanAizek/WinRing0

You will also need Volume 4 of the Intel Software Developer Manuals. It lists many hardware registers but a lot of information is hidden from the public.

https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html
have tried yet WinRing0.dll and WinRing0.sys is not able to run on the cpu. I am trying to get the PL1 and PL2 Limits.
Also what is like signing a driver?
 
signing a driver
This process involves sending a bag of money to a driver signing company.

WinRing0.dll and WinRing0.sys is not able to run on the cpu
The WinRing0 driver can run on any CPU. The problem is that Windows or an antivirus program can decide to block this old driver at any time.

I just downloaded RealTemp from TechPowerUp. It uses the old WinRing0 driver. It installed correctly and is working correctly on my laptop which is running Windows 11 23H2. I am using Microsoft Defender. It probably should have said something but there were no complaints.

You will have to learn how to correctly open and use this driver. The information I posted might show some examples.
 
Can you use something other than C#?

You could try supporting AMD, running on a different OS or UEFI. UEFI has an advantage that it doesn't need 3rd party drivers and can change things before the OS locks things down.
 
This process involves sending a bag of money to a driver signing company.


The WinRing0 driver can run on any CPU. The problem is that Windows or an antivirus program can decide to block this old driver at any time.

I just downloaded RealTemp from TechPowerUp. It uses the old WinRing0 driver. It installed correctly and is working correctly on my laptop which is running Windows 11 23H2. I am using Microsoft Defender. It probably should have said something but there were no complaints.

You will have to learn how to correctly open and use this driver. The information I posted might show some examples.
thanks you so much.I will try
 
Can you use something other than C#?

You could try supporting AMD, running on a different OS or UEFI. UEFI has an advantage that it doesn't need 3rd party drivers and can change things before the OS locks things down.
I know C# right now.
I am completely unaware how the UEFI works? I have to do research on this topic further.
 
Yeah, maybe a bit to much going that way to start with.

I thought throttlestop stopped using Winring0? Not that you cant still use Winring0 or use self signing / testsigning if you want to write your own driver.