Please consider IQS2 production quality on Linux, and beta on MacOS (2024-01-28), and under the license GPLv2 or later version of the GPL, at your option.
Operating system | Support |
---|---|
Linux | Developed and tested on Linux |
MacOS | Only lightly tested, but seems to work. psutil supports it, and MacOS appears to have the right signals. |
Windows | Untested, and probably won't work. psutil supports it, but Windows doesn't support many signals. |
Path | Description | Who/what populates it |
---|---|---|
/var/IQS | this directory is created automatically by IQS2 if it does not exist | IQS2 |
/var/IQS/managed | this file is a list of PID's being managed by IQS2, one PID per line | IQS2, sometimes modified by the System Administrator |
/var/IQS/exempt-users | this file is a list of usernames whose processes will never be managed by IQS2, one username per line. | The system administrator |
/var/IQS/exempt-programs | this file is a list of programs, one per line, that will never be managed by IQS2. It uses a simple substring search. Note that once you enable this for a program, if your users figure out that this has been done, they can be ornery by changing their program's argv somehow to look like one of the exempt programs!. Do not put "ps -ef" or "ps auxww" names in this file; instead run the ./show program in the IQS2 source to identify what name(s) you should use in this file. | The system administrator |
Signal | What it's used for in an IQS2 context |
---|---|
SIGCONT | used internally by IQS2 to resume a process |
SIGHUP | sent by an administator to IQS2, to make IQS2 reread its list of managed PID's from /var/IQS/managed. Using this facility and a text editor, you can easily add or remove a PID from IQS2's management |
SIGINT | sent by an administrator to IQS2, to make IQS2 tell all managed processes to resume, and IQS2 then exits. Because the list of managed PID's is left in /var/IQS/managed, you can conveniently stop and restart IQS2, without IQS2 losing track of which PID's it should be managing. |
SIGSTOP | used internally by IQS2 to pause a process |
SIGTERM | same as SIGINT |
Option | Purpose |
---|---|
-v | Run verbosely |
-n x | Run a maximum of x IQS2-managed processes concurrently |
--time-slice t | How frequently to check the process table and changes processes in seconds; defaults to 60.0 |
--fraction f | What fraction of the time slice must be seen before commencing IQS2 management; defaults to 0.18 |
Condition under which you would give an exemption | The processes' names to exempt in /var/IQS/exempt-programs |
---|---|
If you browse the web on an IQS2 machine | chrome, firefox, etcetera |
If you use graphics on an IQS2 machine | Xorg or Wayland (unsure of the Wayland name at this time) |
If you do file transfers over sshfs on an IQS2 machine | sshfs and ssh |
If you're using IQS2 on a modern Linux system with systemd. This is "init" on most Linux systems today. | systemd |
Pretty much always, but especially on a system that swaps a lot | kswapd |
You can e-mail the author with questions or comments: