mirror of
https://github.com/nodejs/node.git
synced 2024-12-01 16:10:02 +01:00
9a3a0ccc50
Add a short explanation of what the load average is and why it's
unavailable on Windows.
Also sneak in a fix for a typo that I introduced in commit 56c5806
.
153 lines
4.0 KiB
Markdown
153 lines
4.0 KiB
Markdown
# os
|
|
|
|
Stability: 4 - API Frozen
|
|
|
|
Provides a few basic operating-system related utility functions.
|
|
|
|
Use `require('os')` to access this module.
|
|
|
|
## os.tmpdir()
|
|
|
|
Returns the operating system's default directory for temp files.
|
|
|
|
## os.endianness()
|
|
|
|
Returns the endianness of the CPU. Possible values are `"BE"` or `"LE"`.
|
|
|
|
## os.hostname()
|
|
|
|
Returns the hostname of the operating system.
|
|
|
|
## os.type()
|
|
|
|
Returns the operating system name.
|
|
|
|
## os.platform()
|
|
|
|
Returns the operating system platform.
|
|
|
|
## os.arch()
|
|
|
|
Returns the operating system CPU architecture.
|
|
|
|
## os.release()
|
|
|
|
Returns the operating system release.
|
|
|
|
## os.uptime()
|
|
|
|
Returns the system uptime in seconds.
|
|
|
|
## os.loadavg()
|
|
|
|
Returns an array containing the 1, 5, and 15 minute load averages.
|
|
|
|
The load average is a measure of system activity, calculated by the operating
|
|
system and expressed as a fractional number. As a rule of thumb, the load
|
|
average should ideally be less than the number of logical CPUs in the system.
|
|
|
|
The load average is a very UNIX-y concept; there is no real equivalent on
|
|
Windows platforms. That is why this function always returns `[0, 0, 0]` on
|
|
Windows.
|
|
|
|
## os.totalmem()
|
|
|
|
Returns the total amount of system memory in bytes.
|
|
|
|
## os.freemem()
|
|
|
|
Returns the amount of free system memory in bytes.
|
|
|
|
## os.cpus()
|
|
|
|
Returns an array of objects containing information about each CPU/core
|
|
installed: model, speed (in MHz), and times (an object containing the number of
|
|
milliseconds the CPU/core spent in: user, nice, sys, idle, and irq).
|
|
|
|
Example inspection of os.cpus:
|
|
|
|
[ { model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
|
|
speed: 2926,
|
|
times:
|
|
{ user: 252020,
|
|
nice: 0,
|
|
sys: 30340,
|
|
idle: 1070356870,
|
|
irq: 0 } },
|
|
{ model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
|
|
speed: 2926,
|
|
times:
|
|
{ user: 306960,
|
|
nice: 0,
|
|
sys: 26980,
|
|
idle: 1071569080,
|
|
irq: 0 } },
|
|
{ model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
|
|
speed: 2926,
|
|
times:
|
|
{ user: 248450,
|
|
nice: 0,
|
|
sys: 21750,
|
|
idle: 1070919370,
|
|
irq: 0 } },
|
|
{ model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
|
|
speed: 2926,
|
|
times:
|
|
{ user: 256880,
|
|
nice: 0,
|
|
sys: 19430,
|
|
idle: 1070905480,
|
|
irq: 20 } },
|
|
{ model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
|
|
speed: 2926,
|
|
times:
|
|
{ user: 511580,
|
|
nice: 20,
|
|
sys: 40900,
|
|
idle: 1070842510,
|
|
irq: 0 } },
|
|
{ model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
|
|
speed: 2926,
|
|
times:
|
|
{ user: 291660,
|
|
nice: 0,
|
|
sys: 34360,
|
|
idle: 1070888000,
|
|
irq: 10 } },
|
|
{ model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
|
|
speed: 2926,
|
|
times:
|
|
{ user: 308260,
|
|
nice: 0,
|
|
sys: 55410,
|
|
idle: 1071129970,
|
|
irq: 880 } },
|
|
{ model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
|
|
speed: 2926,
|
|
times:
|
|
{ user: 266450,
|
|
nice: 1480,
|
|
sys: 34920,
|
|
idle: 1072572010,
|
|
irq: 30 } } ]
|
|
|
|
## os.networkInterfaces()
|
|
|
|
Get a list of network interfaces:
|
|
|
|
{ lo0:
|
|
[ { address: '::1', family: 'IPv6', internal: true },
|
|
{ address: 'fe80::1', family: 'IPv6', internal: true },
|
|
{ address: '127.0.0.1', family: 'IPv4', internal: true } ],
|
|
en1:
|
|
[ { address: 'fe80::cabc:c8ff:feef:f996', family: 'IPv6',
|
|
internal: false },
|
|
{ address: '10.0.1.123', family: 'IPv4', internal: false } ],
|
|
vmnet1: [ { address: '10.99.99.254', family: 'IPv4', internal: false } ],
|
|
vmnet8: [ { address: '10.88.88.1', family: 'IPv4', internal: false } ],
|
|
ppp0: [ { address: '10.2.0.231', family: 'IPv4', internal: false } ] }
|
|
|
|
## os.EOL
|
|
|
|
A constant defining the appropriate End-of-line marker for the operating system.
|