---
name: "mosctl"
section: "1"
platform: "linux"
package: "mosix"
version: "1.5.7-2"
release: "Debian 3.0 (Woody)"
platforms: ["linux"]
url: "https://new.carta.tech/mosctl"
---

# mosctl(1)

MOSIX system administrator's tools

## NAME

**mosctl** – MOSIX system administrator's tools

## SYNOPSIS

**mosctl** { *stay* \| *nostay* \| *lstay* \| *nolstay* \| *block* \| *noblock* \| *quiet* \|         *noquiet* \| *nomfs* \| *mfs* \| *expel* \| *bring* \| *gettune* \| *getyard* \| *getdecay* }

**mosctl** *whois* \[ *MOSIX-ID* \| *IP-address* \| *hostname* \]

**mosctl** { *getload* \| *getspeed* \| *status* \| *isup* \| *getmem* \| *getfree* \| *getutil* } \[ *MOSIX-ID* \]

**mosctl** *setyard* \[ *processor-type* \| *number* \| *this* \]

**mosctl** *setspeed* *numeric-value*

**mosctl** *setdecay* *interval* *slow* *fast*

## DESCRIPTION

**Mosctl** provides a variety of MOSIX system-administration and information tools.

*stay* prevents automatic migration of processes out from the current node. *nostay* or *-stay* cancels the effect of *stay.*

*lstay* prevents only local processes from migrating away automatically, but still allows remote/guest processes to do so. *nolstay* or *-lstay* cancels the effect of *lstay.*

*block* prevents remote/guest processes from arriving in. *noblock* or *-block* cancels the effect of *block.*

*quiet* stops the background activity of the node providing other nodes with its load-information. *noquiet* or *-quiet* cancels the effect of *quiet.*

*nomfs* disables access to this node's files via the MFS file-system (if configured). *mfs* re-enables access to this node's files via MFS.

*expel* sends away all remote/guest processes.  It does not return until all remote/guest processes were evacuated (or until interrupted). It also acts as *block,* preventing new remote/guest processes from arriving.

*bring* brings back to the node all processes that are running away from it. It does not return until all processes were brought back (or until interrupted). It also acts as *lstay* in preventing local processes from migrating away automatically.

*getdecay* displays the current decay parameters, which control the gradual decay of old process-statistics for the use of load-balancing. Every given number of seconds, only a given portion of the statistics is kept. That portion is different for slow-decaying (the default) and for fast-decaying processes.

*setdecay* loads a new set of decay parameters:

\* Interval in seconds.\
 \* How much out of 1000 to keep for slow-decaying processes.\
 \* How much out of 1000 to keep for fast-decaying processes.

The *interval* must be within the range of 1-65535, the *slow* and *fast* parameters must be in the range of 0-1000 and the *slow* parameter must be greater or equal than the *fast* parameter.

*gettune* displays the overhead parameters used by the kernel to estimate the "I/O factor" in its load-balancing.  These paramters are:

- \* Deputy overhead in processing a demand-page

  - \* Remote overhead in processing a demand-page

  - \* Deputy overhead in processing a system call

  - \* Remote overhead in processing a system call

  - \* Basic deputy overhead for reading data

  - \* Deputy overhead per 1KB read

  - \* Basic remote overhead for reading data

  - \* Remote overhead per 1KB read

  - \* Basic deputy overhead for writing data

  - \* Deputy overhead per 1KB written

  - \* Basic remote overhead for writing data

  - \* Remote overhead per 1KB written

  - \* Migration time of an empty process

  - \* Extra migration time per dirty page

  All integers express microseconds.

*getyard* displays the *yardstick* in use.  This is the processor-speed of the most typical MOSIX node. By default, it is 10000 speed-units, representing a Pentium-III at 1GHz. *setyard* sets the *yardstick* according to the argument, which can be either numeric (speed-units), the word "this", implying the node's own processor-speed, or the name of a recognised processor, such as: 386/33, 486/66, Pentium/133 (or p/133), ppro/200, pII/300 (or Pentium2/300), pIII/1000, PIV/1400.

the processor names are case-insensitive and the '/' may also be replaced by '-' or '\_'.

*whois* converts MOSIX-ID numbers to current IP addresses and vice-versa (See *[setpe(1)](/setpe/1.md)).* If given an integer, it assumes a MOSIX-ID and displays the corresponding IP-address.  If given an IP address (a.b.c.d), it converts it to a MOSIX-ID. If given a hostname that is either listed in */etc/hosts* or deteceted by [named(8)](/named/8.md), it finds its IP addresses and converts it to a MOSIX-ID.  Without a second argument, the local node's MOSIX-ID is displayed.

*getload* displays the load on the given *MOSIX-ID* (or the current node if the second argument is missing).  Although the load is a rather complex function, under normal conditions, a load of 100 represents one process, constantly requiring the CPU on a node with a *yardstick* processor-speed.  On faster processors, the load caused by a similar process would be less than 100 and accordingly, on slower processors it would be more than 100.

*getspeed* displays the processor speed of the given *MOSIX-ID* (or the current node if the second argument is missing).  The speed is relative to a Pentium-III at 1GHz being 10000 units.

*getmem* (or *memory* or *mem)* displays the logically-free and total memory on the given *MOSIX-ID* (or the current node if the second argument is missing).  The free memory may not necessarily correspond with "[vmstat(8)](/vmstat/8.md)", as it also takes other factors into account.

*getfree* (or *getrawmem* or *rawfree)* displays the raw free and total memory on the given *MOSIX-ID* (or the current node if the second argument is missing).  The free memory should correspond with "[vmstat(8)](/vmstat/8.md)".

*getutil* displays the processor utilizability percentage on the given *MOSIX-ID* (or the current node if the second argument is missing). This means how much of the time either the node is serving some process, or there are no processes on that node waiting for swapped-pages.  Under normal operating conditions on a single-processor node, utilizability should be 100%, dropping only when the memory is being pressured.  On SMPs, the utilizability should be 100% times the number of processors.

*status* (or *stat)* displays whether the given *MOSIX-ID* node (or the current node if the second argument is missing) is up and connected, and whether any of the following conditions described above is set on that node: "stay", "lstay", "block" or "quiet".

*isup* responds whether the node specified by *MOSIX-ID* is running and connected or not.

*setspeed* overrides the node's idea of its own speed.  The speed must still be defined so that a Pentium-III at 1GHz yields 10000 units, but this option is provided to allow for systems that always run the same (or very similar) computation-intensive application, for which the ratio of the speeds between different processors is other than with the mixed benchmark used by MOSIX.

## SEE ALSO

[mosix(7)](/mosix/7.md), [setpe(1)](/setpe/1.md), [tune(1)](/tune/1.md), [mon(1)](/mon/1.md), [mosrun(1)](/mosrun/1.md), [migrate(1)](/migrate/1.md).

## HISTORY

*mosctl* is a MOSIX utility.  It was previously known under the name of "dist".
