获取系统相关信息
使用 os
模块可以获取与操作系统相关的信息,如主机名、系统名、系统 CPU 架构等,其用到的方法如表8.2所示。

下面对表 8.2 中常用方法的具体使用进行讲解。
hostname()
hostname()
方法返回操作系统的主机名。
例如,获取笔者计算机的主机名,代码如下:
const os = require("os")
console.log("当前主机名:",os.hostname())
运行结果如下:
当前主机名:DESKTOP-R4VMEL1
type()
type()
方法返回操作系统名。在 Linux
上返回 Linux
;在 macOS
上返回 Darwin
;在 Windows
上返回 Windows_NT
。
例如,获取笔者计算机的操作系统名称,代码如下:
const os = require("os")
console.log("当前操作系统为:",os.type())
运行结果如下:
当前操作系统为:Windows_NT
platform()
platform()
方法返回编译时的操作系统名,其可能的值有 aix
、darwin
、freebsd
、linux
、openbsd
、sunos
和 win32
。
例如,获取笔者计算机当前操作系统编译时的操作系统名,代码如下:
const os = require("os")
console.log("当前操作系统编译时的名称为:",os.platform())
运行结果如下:
当前操作系统编译时的名称为: win32
arch()
arch()
方法返回操作系统的 CPU
架构,可能的值有 arm
、arm64
、ia32
、mips
、mipsel
、ppc
、ppc64
、s390
、s390x
、x32
和 x64
。
例如,获取笔者计算机当前操作系统的 CPU
架构,代码如下:
const os = require("os")
console.log("操作系统的CPU架构为:",os.arch())
运行结果如下:
操作系统的CPU架构为: x64
release()
release()
方法返回操作系统的发行版本,其值为字符串类型。
例如,获取笔者计算机操作系统的发行版本,代码如下:
const os = require("os")
console.log("当前操作系统的发行版本为:",os.release())
运行结果如下:
当前操作系统的发行版本为: 10.0.18363
version()
version()
方法返回标识操作系统内核版本的字符串。例如,获取笔者计算机操作系统的内核版本,代码如下:
const os=require("os")
console.log(os.version())
运行结果如下:
Windows 10 Education
cpus()
cpus()
方法的返回值为一个对象数组,其中包含各 CPU
内核的信息,并且每个对象包含以下属性。
-
model
:字符串类型,表示CPU
内核的型号。 -
speed
:整型,以兆赫兹(MHz)为单位,表示CPU
内核的速度。 -
times
:是一个对象,其包含的属性如表 8.3 所示。

例如,查看计算机的 CPU
内核信息,代码如下:
const os = require("os")
console.log(os.cpus())
uptime()
uptime()
方法返回操作系统的运行时间,以秒为单位。
例如,获取当前操作系统的运行时间,代码如下:
const os=require("os")
const time=os.uptime()
console.log("系统的运行时间为:"+os.uptime())
运行结果如下:
系统的运行时间为:10995
【例8.2】查看计算机的运行时间。(实例位置:资源包\源码\08\02)
新建一个 js.js
文件,该文件中使用 os
模块的 uptime()
方法获取计算机的运行时间,然后将其转换为时分秒的格式,代码如下:
const os = require("os")
var alltime = os.uptime() //获取总秒数
var sec = alltime % 60 //计算秒数
var allmin = parseInt(alltime / 60) //计算总分钟数
var min = allmin % 60 //计算分钟数
var hour = parseInt(allmin / 60) //计算小时数
console.log("当前计算机运行了" + alltime + "秒")
console.log("转换后为:%d时%d分%d秒", hour, min, sec)
getPriority()
getPriority()
方法获取指定进程的调度优先级,其语法格式如下:
os.getPriority([pid])
其中,参数 pid
为指定进程的 PID
,如果省略 pid
或者 pid
为 0
,该方法将返回当前进程的优先级。例如,查看 chrome.exe(pid 为 10904)
进程的优先级,代码如下:
const os = require("os")
console.log(os.getPriority(10904))
运行结果如下:
19
|
setPriority()
setPriority()
方法为指定的进程设置调度优先级。具体语法格式如下:
os.setPriority([pid,]priority)
其中,pid
为进程的 PID
,当省略 pid
或者 pid
为 0 时,表示当前进程;priority
为分配给该进程的调度优先级,该值的取值范围为 -20~19 的整数。
前面示例中 PID
为 10904 的进程的调度优先级为 19,下面通过 setPriority()
方法将其调度优先级调整为 10,代码如下:
const os = require("os")
os.setPriority(10904,10)
运行程序后,打开任务管理器,查看 PID
为 10904 的进程的优先级由原来的 “低” 变成了 “低于正常”,效果如图8.5和图8.6所示。

