Skip to content

Releases: lowleveldesign/process-governor

Process Governor v4.1

Choose a tag to compare

@lowleveldesign lowleveldesign released this 08 Jul 22:10

Release notes

  • efficiency mode now also changes priority (this is in accordance with what Task Manager expects) (#86)

File hashes

procgov.exe

MD5 = 5C0FFED152B070932B1C80E38963A492
SHA1 = 628AA3930278ED35EF721CC5AF53BDB8E1AFFEF9
SHA256 = FA59212A32306CA22C22680A36C047CA3FFEA52F511ACB09DD9D7145C1673069

Process Governor v4.0

Choose a tag to compare

@lowleveldesign lowleveldesign released this 04 Jun 10:36

I thought I will make smaller changes required by the efficiency mode settings, but ended up rewriting many parts of the application, including the monitoring engine 😅.

Release notes

  • a new parameter to control efficiency mode: --efficiency-mode (#80)
  • a new parameter to run processes in isolated jobs: --isolate
  • a new parameter to reset job limits: --unset-limits (#75) (only named jobs)
  • a new parameter to limit the maximum number of processes in a job: --max-process-count
  • empty environment variable will remove the variable from the process environment
  • better handling of process hierarchies in the procgov service
  • new tests + started moving old tests to the new tunit-based project
  • ⚠️ breaking: --nomonitor parameter removed
  • ⚠️ breaking: updating jobs is possible only when using procgov with the --job-name parameter, otherwise jobs are anonymous (as stated in the Raymond Chen's post, using anonymous jobs is safer and recommended)
  • ⚠️ breaking: when updating process limits, they are no longer merged, but new limits will override the old ones
  • ⚠️ breaking: when updating process limits, they are no longer merged, but new limits will override the old ones

File hashes

procgov.exe

MD5 = 4FB9235AE3F938DE0F47E7BE65527853
SHA1 = 04AD43D84ABFE404E8F5C4DEAE21CA2A88F7D7C1
SHA256 = 739ECCF1A2E6834AD756D0C3D31B8EE0FD0ED0BEFF8F01077AF3DEA8E006381A

Process Governor v3.2

Choose a tag to compare

@lowleveldesign lowleveldesign released this 02 Oct 17:40

Release notes

  • added user's SID to the monitor named pipe name to avoid permission issues (#81)
  • fix for wrong CPU ranges display (#82)
  • fix in uninstall, so procgov properly removes the install folder
  • fix install command to properly set the procgov path
  • a new parameter (--job-name) to provide name for the created job
  • new monitor API methods to support upcoming functionalities
  • updates in tests to improve stability
  • updated nuget dependencies

File hashes

procgov.exe

MD5 = 90B3B4C38AAD67D1788E952A34068A6A
SHA1 = 8C198D4D68FDF08E096E3C1510DA5EE33AB0D604
SHA256 = 49B8272966FB4A900E8DA5211B837F148790D14CADFC4F37EDF0899985656388

Process Governor v3.1

Choose a tag to compare

@lowleveldesign lowleveldesign released this 06 Feb 17:11

Release notes

File hashes

procgov.exe

MD5 = 419A329CA8C193BA3DCA1A37E8544B98
SHA1 = 2F9D31E9E83BD3014C06B3A01A5F61C2F81E373F
SHA256 = C1F8BF44CDAFC0B574D13ADB07AA189AD1CFDF091BB5E662662AE75113561345

Process Governor v3.0

Choose a tag to compare

@lowleveldesign lowleveldesign released this 07 Dec 11:47

Release notes

  • Procgov is now one executable (procgov.exe). It is 64-bit (compiled with NativeAOT) but works with both 32-bit and 64-bit applications.
  • Added support for machines with more than 64 CPUs (#72). It is now possible to set affinities using processor groups and NUMA nodes. As --cpu parameter supports NUMA nodes, the --numa parameter became obsolete and confusing so it's removed.
  • Added support for priority class (#59)
  • Introducing run modes:
    • monitor to observe the governed processes and keep handles to the procgov jobs (procgov no longer injects special environment variables into monitored processes)
    • service (beta) to automatically apply limits to newly started processes (--install option) (#58)

File hashes

procgov.exe

MD5 = B00FD4F1DDA01DC33B985655D8B9CA51
SHA1 = E26EA61F8631D8B7A13E66ADDFFA11AA711CCE65
SHA256 = 3DF77AFF3D396B14EBA3F36E974B637C2F616681FC8937C96E43A58F89CB0F86

Process Governor v2.13

Choose a tag to compare

@lowleveldesign lowleveldesign released this 11 Apr 22:55

Changes

  • After launching a new process, if --nowait is not set, procgov will exit with the same code as the launched process (#66)
  • With --terminate-job-on-exit procgov will terminate the job (including all processes assigned to it) when you press Ctrl+C (#62)

File hashes

procgov32.exe

MD5 = 2AF11E2C786A3180DE85EE270E8A0A74
SHA1 = 69276EDE78DD93A67926DFD699ABF07186BD23A5
SHA256 = B57783DE6EB32D8BCA07203E39DCD903090FFF8931A133BE3788408A0FB73DAF

procgov64.exe

MD5 = AF15901CA4275D56BB9ED5B8DAC9F718
SHA1 = 38444192E0F952330978FE6C4BCD25B5FB8F2248
SHA256 = ADDC4C1AFEA0B30F8C56921B33CB60C4FD1F16C251260EA1D7E2F419360A5350

Process Governor v2.12

Choose a tag to compare

@lowleveldesign lowleveldesign released this 04 Mar 16:58

Changes

  • It is now possible to assign multiple (even unrelated) processes to the same procgov job object (--pid option accepts a list of PIDs separated by commas) (fixes #50)
  • The --env option for modifying process environment variables also works for the already started processes. It means you may update process(es) limits and set/update their environment variables.

Minor changes:

  • Procgov shows only the updated limits (when you update existing limits, the old ones won't be visible). Use System Informer (former Process Hacker) or Process Explorer to find all the job limits
  • As multiple processes are supported, procgov no longer shows results of privilege adjustments - if there was an error it will be visible in the log output

File hashes

procgov32.exe

MD5 = 69C298EC720373FBBF94DC6708F5C4A6
SHA1 = 1D8FC2C36001AD2CA40A33F867E13D6D9E5EA7BB
SHA256 = 628F22D38440BCECA2E52BD41ED794DC0232F4383BA2D44725CA6FBAB86F4DB3

procgov64.exe

MD5 = B3D80C72377CCA27D4CF903A770303E0
SHA1 = 5188F956230FC7152BBBCC3189584C27578FFB53
SHA256 = 9A29C129ED7E21DA77C07167EA52C6480AFEFE50FE8DD6D24CA79E3EFF7E043F

Process Governor v2.11

Choose a tag to compare

@lowleveldesign lowleveldesign released this 04 Nov 10:39

Changes:

  • it is now possible to update the CPU affinity for an already limited process (issue #46) (does not work if the process spans multiple processor groups - please create an issue if you hit this problem)

File hashes

procgov32.exe

MD5 = BD5EB09200C1DA31ECDAAC2ECE0A0F44
SHA1 = 702DD31F1B71CD7C807B2C248D0511B484C29B53
SHA256 = 328380D2099F2BE11C92E1F0CF48E693C82ED98B8D5521C18CD2AC17818F53D7

procgov64.exe

MD5 = 75623A0E72B07813F213FD309DB1A9ED
SHA1 = 476CDDB20D7D6BC069FE76E51537F91F44946BA6
SHA256 = 9C50463BB6A703D1C3A941D35DA3E26A9F662692E53CEBB0C64CBEB4AE9109D7

Process Governor v2.10

Choose a tag to compare

@lowleveldesign lowleveldesign released this 17 May 18:06

Changes:

  • BREAKING: procgov 32-bit is now named procgov32.exe (instead of procgov.exe). This change was made to make the naming consistent and avoid confusion when picking the right version (suggestion from the #34 issue)
  • added a --enable-privileges command-line option. It allows users to enable privileges in the target process (solves #35)
  • source code migrated to .NET 6.0 (please report if you run into any compatibility issues)

File hashes

procgov32.exe

MD5 = 202879C033C9D43A35F6297667A88A2D
SHA1 = AEED4E3AD22ABFA312A545FFA381B245726425A8
SHA256 = B4B5443E8EEBC3F16059A84D004DF54EF0AD16B83C97E850625C6DD0101BBC55

procgov64.exe

MD5 = 01C7C28252F8C1D04C3471F3F06F53DC
SHA1 = 9F3682E955ABB6F012F1FD4E60E3021B8877E119
SHA256 = A305038FFC7C5BDAB5C13BFB6C519D535886922EB145E673AE3C29AA88DED994

Process Governor v2.9

Choose a tag to compare

@lowleveldesign lowleveldesign released this 13 Oct 11:31

Changes:

  • added a --nowait command-line option. If set, procgov won't wait for the target process(es) to complete
  • added a --maxjoblimit command-line option to limit the committed memory usage for all the processes within the job

File Hashes:

procgov.exe

MD5 = 17F3796458859F9B502FD6346AC3C7A2
SHA1 = D9C70E0A8B8B9CA7E6E5F82889A4EB0398DB9930
SHA256 = 0A2C99B94D53964537375E2B3B1D2E867F85A13A6D1559F2157836E7D5C1FF17

procgov64.exe

MD5 = A281C02D4F414365BB8B420A30E0FFF2
SHA1 = 1190389901D11934EE2DF4A909D6EE2BCC712BA5
SHA256 = A145210796CF2838E6B7D9005682768D4D2E0092700BDDDF81D05800FA778ACC