const os = require('os');
Object.getOwnPropertyNames(os);
EOL 操作系统相关行末标志 \n 在POSIX 系统上,\r\n 在 Windows 系统上
arch() 操作系统CPU架构,等价于process.arch,取值: 'arm'、'arm64'、'ia32', 'mips'、'mipsel'、'ppc'、'ppc64'、's390'、's390x'、 'x32'、'x64'、 'x86'
endianness() 二进制编译环境的字节顺序
freemem() 空闲的系统内存字节数(整数)
homedir() 当前用户的 home 目录,如 '/Users/username'
hostname() 操作系统主机名,如 'usernamedeMacBook-Pro.local'
loadavg() 1、5、15分钟平均负载,一般少于CPU的数目,如 [ 1.9755859375, 2.13037109375, 2.75 ],Windows上为 [0,0,0]
platform() 操作系统平台,等效于 process.platform(),'aix'、'darwin'、'freebsd'、'linux'、'openbsd'、'sunos'、'win32'
release() 操作系统发行版,如 macos上 '16.7.0',POSIX 系统上通过调用 uname(2) 得到
tmpdir() 操作系统临时文件目录
totalmem() 所有系统内存的字节数
type() 操作系统名,由 uname(2) 返回
uptime() 操作系统上线时间
userInfo([{encoding: 'buffer|username|shell|homedir']) 当前有效用户的信息,options.encoding 默认为 utf8,除 utf8 以外 value 输出为 buffer 实例
{
uid: 501,
gid: 20,
username: 'zhuyudong',
homedir: '/Users/zhuyudong',
shell: '/bin/zsh'
}
cpus() 每个 CPU/CPU 核的信息[{
model: 'Intel(R) Core(TM) i5-5257U CPU @ 2.70GHz',
speed: 2700,
times: {
user: 90362040,
nice: 0,
sys: 74733740,
idle: 428609030,
irq: 0
}
}]
- networkInterfaces() 赋予网络地址的网络接口,如下
{
lo0: [{
address: '127.0.0.1',
netmask: '255.0.0.0',
family: 'IPv4',
mac: 'fe:80:00:00:00:00',
internal: true
}],
en0: [{
address: 'fe80::4db:eafd:da4d:b912',
netmask: 'ffff:ffff:ffff:ffff::',
family: 'IPv6',
mac: '00:00:00:00:00:00',
scopeid: 5,
internal: false
}],
awdl0: [{
address: 'fe80::e412:aff:fe35:bade',
netmask: 'ffff:ffff:ffff:ffff::',
family: 'IPv6',
mac: 'fe:80:00:00:00:00',
scopeid: 9,
internal: false
}],
utun0: [{
address: 'fe80::9723:df9a:2761:f7a7',
netmask: 'ffff:ffff:ffff:ffff::',
family: 'IPv6',
mac: 'fe:80:00:00:00:00',
scopeid: 11,
internal: false
}],
utun1: [{
address: 'fe80::8cc6:a82a:8bcd:df0e',
netmask: 'ffff:ffff:ffff:ffff::',
family: 'IPv6',
mac: 'fe:80:00:00:00:00',
scopeid: 12,
internal: false
}],
en4: [{
address: 'fe80::3b:160d:fe15:5753',
netmask: 'ffff:ffff:ffff:ffff::',
family: 'IPv6',
mac: '00:00:00:00:00:00',
scopeid: 4,
internal: false
}]
}
- constants 错误码、处理信号等定义常量
{
UV_UDP_REUSEADDR: 4,
errno: {
E2BIG: 7,
EACCES: 13,
EADDRINUSE: 48,
EADDRNOTAVAIL: 49,
EAFNOSUPPORT: 47,
EAGAIN: 35,
EALREADY: 37,
EBADF: 9,
EBADMSG: 94,
EBUSY: 16,
ECANCELED: 89,
ECHILD: 10,
ECONNABORTED: 53,
ECONNREFUSED: 61,
ECONNRESET: 54,
EDEADLK: 11,
EDESTADDRREQ: 39,
EDOM: 33,
EDQUOT: 69,
EEXIST: 17,
EFAULT: 14,
EFBIG: 27,
EHOSTUNREACH: 65,
EIDRM: 90,
EILSEQ: 92,
EINPROGRESS: 36,
EINTR: 4,
EINVAL: 22,
EIO: 5,
EISCONN: 56,
EISDIR: 21,
ELOOP: 62,
EMFILE: 24,
EMLINK: 31,
EMSGSIZE: 40,
EMULTIHOP: 95,
ENAMETOOLONG: 63,
ENETDOWN: 50,
ENETRESET: 52,
ENETUNREACH: 51,
ENFILE: 23,
ENOBUFS: 55,
ENODATA: 96,
ENODEV: 19,
ENOENT: 2,
ENOEXEC: 8,
ENOLCK: 77,
ENOLINK: 97,
ENOMEM: 12,
ENOMSG: 91,
ENOPROTOOPT: 42,
ENOSPC: 28,
ENOSR: 98,
ENOSTR: 99,
ENOSYS: 78,
ENOTCONN: 57,
ENOTDIR: 20,
ENOTEMPTY: 66,
ENOTSOCK: 38,
ENOTSUP: 45,
ENOTTY: 25,
ENXIO: 6,
EOPNOTSUPP: 102,
EOVERFLOW: 84,
EPERM: 1,
EPIPE: 32,
EPROTO: 100,
EPROTONOSUPPORT: 43,
EPROTOTYPE: 41,
ERANGE: 34,
EROFS: 30,
ESPIPE: 29,
ESRCH: 3,
ESTALE: 70,
ETIME: 101,
ETIMEDOUT: 60,
ETXTBSY: 26,
EWOULDBLOCK: 35,
EXDEV: 18 },
signals: {
SIGHUP: 1,
SIGINT: 2,
SIGQUIT: 3,
SIGILL: 4,
SIGTRAP: 5,
SIGABRT: 6,
SIGIOT: 6,
SIGBUS: 10,
SIGFPE: 8,
SIGKILL: 9,
SIGUSR1: 30,
SIGSEGV: 11,
SIGUSR2: 31,
SIGPIPE: 13,
SIGALRM: 14,
SIGTERM: 15,
SIGCHLD: 20,
SIGCONT: 19,
SIGSTOP: 17,
SIGTSTP: 18,
SIGTTIN: 21,
SIGTTOU: 22,
SIGURG: 16,
SIGXCPU: 24,
SIGXFSZ: 25,
SIGVTALRM: 26,
SIGPROF: 27,
SIGWINCH: 28,
SIGIO: 23,
SIGINFO: 29,
SIGSYS: 12
}
}