Spec-Zone.ru › Node.js 8 LTS

ОС

Устойчивость: 2 - Стабильно

Модуль os предоставляет ряд методов, связанных с операционной системой. К нему можно получить доступ, используя:

const os = require('os');

os.EOL

Добавлен в: v0.7.8
  • <строка>

Константа-строка, определяющая маркер конца строки, специфичный для операционной системы:

  • \n на POSIX
  • \r\n на Windows

os.arch()

Добавлен в: v0.5.0
  • Возвращает: <строка>

Метод os.arch() возвращает строку, идентифицирующую архитектуру процессора операционной системы, для которой был скомпилирован бинарный файл Node.js.

Возможные текущие значения: 'arm', 'arm64', 'ia32', 'mips', 'mipsel', 'ppc', 'ppc64', 's390', 's390x', 'x32', и 'x64'.

Эквивалентно process.arch.

os.constants

Добавлен в: v6.3.0
  • <Объект>

Возвращает объект, содержащий часто используемые константы, специфичные для операционной системы, для кодов ошибок, сигналов процесса и т. д. Определённые в данный момент константы описаны в Константах ОС.

os.cpus()

Добавлен в: v0.3.3
  • Возвращает: <Массив>

Метод os.cpus() возвращает массив объектов, содержащих информацию о каждом логическом ядре процессора.

Свойства каждого объекта включают:

  • model <строка>
  • speed <число> (в МГц)
  • times <объект>
    • user <число> Количество миллисекунд, потраченных процессором в режиме пользователя.
    • nice <число> Количество миллисекунд, потраченных процессором в режиме nice.
    • sys <число> Количество миллисекунд, потраченных процессором в режиме sys.
    • idle <число> Количество миллисекунд, потраченных процессором в режиме простоя.
    • irq <число> Количество миллисекунд, потраченных процессором в режиме irq.

Например:

[
  {
    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
    }
  }
]

Примечание: Поскольку значения nice специфичны для UNIX, на Windows значения nice для всех процессоров всегда равны 0.

os.endianness()

Добавлен в: v0.9.4
  • Возвращает: <строка>

Метод os.endianness() возвращает строку, идентифицирующую порядок байтов процессора для которого был скомпилирован бинарный файл Node.js.

Возможные значения:

  • 'BE' для big endian
  • 'LE' для little endian.

os.freemem()

Добавлен в: v0.3.3
  • Возвращает: <целое>

Метод os.freemem() возвращает количество свободной оперативной памяти в байтах в виде целого числа.

os.homedir()

Добавлен в: v2.3.0
  • Возвращает: <строка>

Метод os.homedir() возвращает домашний каталог текущего пользователя в виде строки.

os.hostname()

Добавлен в: v0.3.3
  • Возвращает: <строка>

Метод os.hostname() возвращает имя хоста операционной системы в виде строки.

os.loadavg()

Добавлен в: v0.3.3
  • Возвращает: <Массив>

Метод os.loadavg() возвращает массив, содержащий среднее время загрузки за 1, 5 и 15 минут.

Среднее время загрузки — это мера активности системы, рассчитываемая операционной системой и выражаемая в виде дробного числа. Как правило, среднее время загрузки должно быть меньше, чем количество логических процессоров в системе.

Среднее время загрузки — это понятие, специфичное для UNIX, без реального эквивалента на платформах Windows. В Windows возвращаемое значение всегда [0, 0, 0].

os.networkInterfaces()

Добавлен в: v0.6.0
  • Возвращает: <Объект>

Метод os.networkInterfaces() возвращает объект, содержащий только сетевые интерфейсы, которым был назначен сетевой адрес.

Каждый ключ в возвращаемом объекте идентифицирует сетевой интерфейс. Соответствующее значение — массив объектов, каждый из которых описывает назначенный сетевой адрес.

Свойства объекта назначенного сетевого адреса включают:

  • address <строка> Назначенный IPv4 или IPv6 адрес
  • netmask <строка> Маска сети IPv4 или IPv6
  • family <строка> Либо IPv4 или IPv6
  • mac <строка> MAC-адрес сетевого интерфейса
  • internal <логическое> true если сетевой интерфейс является петлевым или подобным интерфейсом, который недоступен удалённо; в противном случае false
  • scopeid <число> Числовой идентификатор области IPv6 (указан только тогда, когда family равен IPv6)
  • cidr <строка> Назначенный IPv4 или IPv6 адрес с префиксом маршрутизации в нотации CIDR. Если префикс netmask некорректен, это свойство установлено в null
{
  lo: [
    {
      address: '127.0.0.1',
      netmask: '255.0.0.0',
      family: 'IPv4',
      mac: '00:00:00:00:00:00',
      internal: true,
      cidr: '127.0.0.1/8'
    },
    {
      address: '::1',
      netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      internal: true,
      cidr: '::1/128'
    }
  ],
  eth0: [
    {
      address: '192.168.1.108',
      netmask: '255.255.255.0',
      family: 'IPv4',
      mac: '01:02:03:0a:0b:0c',
      internal: false,
      cidr: '192.168.1.108/24'
    },
    {
      address: 'fe80::a00:27ff:fe4e:66a1',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: '01:02:03:0a:0b:0c',
      internal: false,
      cidr: 'fe80::a00:27ff:fe4e:66a1/64'
    }
  ]
}

os.platform()

Добавлен в: v0.5.0
  • Возвращает: <строка>

Метод os.platform() возвращает строку, идентифицирующую платформу операционной системы, установленную во время компиляции Node.js.

Возможные текущие значения:

  • 'aix'
  • 'darwin'
  • 'freebsd'
  • 'linux'
  • 'openbsd'
  • 'sunos'
  • 'win32'

Эквивалентно process.platform.

Примечание: Значение 'android' также может быть возвращено, если Node.js был скомпилирован на операционной системе Android. Однако поддержка Android в Node.js в настоящее время считается экспериментальной.

os.release()

Добавлен в: v0.3.3
  • Возвращает: <строка>

Метод os.release() возвращает строку, идентифицирующую выпуск операционной системы.

Примечание: В системах POSIX выпуск операционной системы определяется путём вызова uname(3). В Windows используется GetVersionExW(). Дополнительную информацию см. в https://en.wikipedia.org/wiki/Uname#Examples.

os.tmpdir()

История
Версия Изменения
v2.0.0

Эта функция теперь является кроссплатформенной и больше не возвращает путь с конечным слэшем ни на одной платформе

v0.9.9

Добавлен в: v0.9.9

  • Возвращает: <строка>

Метод os.tmpdir() возвращает строку, определяющую стандартную директорию операционной системы для временных файлов.

os.totalmem()

Добавлен в: v0.3.3
  • Возвращает: <целое>

Метод os.totalmem() возвращает общее количество системной памяти в байтах в виде целого числа.

os.type()

Добавлен в: v0.3.3
  • Возвращает: <строка>

Метод os.type() возвращает строку, идентифицирующую имя операционной системы, как возвращается функцией uname(3). Например, 'Linux' в Linux, 'Darwin' в macOS и 'Windows_NT' в Windows.

Дополнительную информацию об выводе выполнения uname(3) в различных операционных системах см. на странице https://en.wikipedia.org/wiki/Uname#Examples.

os.uptime()

Добавлен в: v0.3.3
  • Возвращает: <целое число>

Метод os.uptime() возвращает время активности системы в секундах.

Примечание: В Windows возвращаемое значение включает дробные доли секунды. Используйте Math.floor() для получения целых секунд.

os.userInfo([options])

Добавлен в: v6.0.0
  • options <Объект>
    • encoding <строка> Кодировка символов, используемая для интерпретации результирующих строк. Если encoding установлено в 'buffer', значения username, shell, и homedir будут Buffer экземплярами. По умолчанию: 'utf8'.
  • Возвращает: <Объект>

Метод os.userInfo() возвращает информацию о текущем эффективном пользователе — в POSIX платформах, это обычно подмножество файла паролей. Возвращаемый объект включает username, uid, gid, shell, и homedir. В Windows поля uid и gid являются -1, и shell является null.

Значение homedir возвращаемое os.userInfo(), предоставляется операционной системой. Это отличается от результата os.homedir(), который запрашивает несколько переменных окружения для домашнего каталога, прежде чем обратиться к ответу операционной системы.

Постоянные значения ОС

Следующие константы экспортируются os.constants.

Примечание: Не все константы будут доступны на каждой операционной системе.

Константы сигналов

История
Версия Изменения
v5.11.0

Добавлена поддержка SIGINFO.

Следующие константы сигналов экспортируются os.constants.signals:

Константа Описание
SIGHUP Отправляется, чтобы указать, когда закрывается контролирующий терминал или родительский процесс завершается.
SIGINT Отправляется, чтобы указать, когда пользователь хочет прервать процесс ((Ctrl+C)).
SIGQUIT Отправляется, чтобы указать, когда пользователь хочет завершить процесс и выполнить дамп ядра.
SIGILL Отправляется процессу, чтобы сообщить, что он попытался выполнить незаконную, неправильную, неизвестную или привилегированную инструкцию.
SIGTRAP Отправляется процессу, когда произошла исключительная ситуация.
SIGABRT Отправляется процессу для запроса прерывания.
SIGIOT Синоним для SIGABRT
SIGBUS Отправляется процессу, чтобы уведомить о ошибке шины.
SIGFPE Отправляется процессу, чтобы уведомить о неверной арифметической операции.
SIGKILL Отправляется процессу, чтобы немедленно завершить его.
SIGUSR1 SIGUSR2 Отправляется процессу для идентификации пользовательских условий.
SIGSEGV Отправляется процессу, чтобы уведомить об ошибке сегментации.
SIGPIPE Отправляется процессу, когда он пытался записать в отключенную трубу.
SIGALRM Отправляется процессу, когда истекает системный таймер.
SIGTERM Отправляется процессу, чтобы запросить завершение.
SIGCHLD Отправляется процессу, когда дочерний процесс завершается.
SIGSTKFLT Отправляется процессу, чтобы указать ошибку стека на сопроцессоре.
SIGCONT Отправляется, чтобы продолжить приостановленный процесс.
SIGSTOP Отправляется, чтобы остановить процесс.
SIGTSTP Отправляется процессу, чтобы запросить остановку.
SIGBREAK Отправляется, чтобы указать, когда пользователь хочет прервать процесс.
SIGTTIN Отправляется процессу, когда он читает из TTY, находясь в фоновом режиме.
SIGTTOU Отправляется процессу, когда он записывает в TTY, находясь в фоновом режиме.
SIGURG Отправляется процессу, когда сокет имеет срочные данные для чтения.
SIGXCPU Отправляется процессу, когда он превысил лимит использования ЦП.
SIGXFSZ Отправляется процессу, когда он увеличивает размер файла больше, чем разрешено.
SIGVTALRM Отправляется процессу, когда истек виртуальный таймер.
SIGPROF Отправляется процессу, когда истек системный таймер.
SIGWINCH Отправляется процессу, когда контролирующий терминал изменил свой размер.
SIGIO Отправляется процессу, когда доступен ввод-вывод.
SIGPOLL Синоним для SIGIO
SIGLOST Отправляется процессу, когда блокировка файла была потеряна.
SIGPWR Отправляется процессу, чтобы уведомить о сбое электропитания.
SIGINFO Синоним для SIGPWR
SIGSYS Отправляется процессу, чтобы уведомить о плохом аргументе.
SIGUNUSED Синоним для SIGSYS

Константы ошибок

Следующие константы ошибок экспортируются os.constants.errno:

Константы ошибок POSIX

Константа Описание
E2BIG Указывает, что список аргументов длиннее ожидаемого.
EACCES Указывает, что операции не хватает разрешений.
EADDRINUSE Указывает, что сетевой адрес уже используется.
EADDRNOTAVAIL Указывает, что сетевой адрес в данный момент недоступен для использования.
EAFNOSUPPORT Указывает, что семейство сетевых адресов не поддерживается.
EAGAIN Указывает, что в данный момент данных нет, и следует попробовать операцию позже.
EALREADY Указывает, что у сокета уже есть ожидающее подключение.
EBADF Указывает, что дескриптор файла недействителен.
EBADMSG Указывает недействительное сообщение данных.
EBUSY Указывает, что устройство или ресурс занят.
ECANCELED Указывает, что операция была отменена.
ECHILD Указывает, что нет дочерних процессов.
ECONNABORTED Указывает, что сетевое подключение было прервано.
ECONNREFUSED Указывает, что сетевое подключение было отклонено.
ECONNRESET Указывает, что сетевое подключение было сброшено.
EDEADLK Указывает, что тупиковая ситуация с ресурсами была предотвращена.
EDESTADDRREQ Указывает, что требуется адрес назначения.
EDOM Указывает, что аргумент находится вне области определения функции.
EDQUOT Указывает, что квота на диск превышена.
EEXIST Указывает, что файл уже существует.
EFAULT Указывает недействительный адрес указателя.
EFBIG Указывает, что файл слишком большой.
EHOSTUNREACH Указывает, что хост недоступен.
EIDRM Указывает, что идентификатор был удален.
EILSEQ Указывает нелегальную последовательность байтов.
EINPROGRESS Указывает, что операция уже выполняется.
EINTR Указывает, что вызов функции был прерван.
EINVAL Указывает, что был предоставлен неверный аргумент.
EIO Указывает другую неопределённую ошибку ввода/вывода.
EISCONN Указывает, что сокет подключен.
EISDIR Указывает, что путь является каталогом.
ELOOP Указывает слишком много уровней символических ссылок в пути.
EMFILE Указывает, что слишком много файлов открыто.
EMLINK Указывает, что слишком много жёстких ссылок на файл.
EMSGSIZE Указывает, что предоставленное сообщение слишком длинное.
EMULTIHOP Указывает, что была попытка многоходового соединения.
ENAMETOOLONG Указывает, что имя файла слишком длинное.
ENETDOWN Указывает, что сеть отключена.
ENETRESET Указывает, что подключение было прервано сетью.
ENETUNREACH Указывает, что сеть недоступна.
ENFILE Указывает, что слишком много файлов открыто в системе.
ENOBUFS Указывает, что нет доступного буферного пространства.
ENODATA Указывает, что нет сообщений в очереди чтения головки потока.
ENODEV Указывает, что такого устройства нет.
ENOENT Указывает, что такого файла или каталога нет.
ENOEXEC Указывает ошибку формата exec.
ENOLCK Указывает, что нет доступных блокировок.
ENOLINK Указывает, что соединение разорвано.
ENOMEM Указывает, что не хватает места.
ENOMSG Указывает, что нет сообщения нужного типа.
ENOPROTOOPT Указывает, что данный протокол недоступен.
ENOSPC Указывает, что нет места на устройстве.
ENOSR Указывает, что нет доступных ресурсов потока.
ENOSTR Указывает, что данный ресурс не является потоком.
ENOSYS Указывает, что функция не реализована.
ENOTCONN Указывает, что сокет не подключен.
ENOTDIR Указывает, что путь не является каталогом.
ENOTEMPTY Указывает, что каталог не пуст.
ENOTSOCK Указывает, что данный элемент не является сокетом.
ENOTSUP Указывает, что данная операция не поддерживается.
ENOTTY Указывает неподходящую операцию управления вводом/выводом.
ENXIO Указывает, что такого устройства или адреса нет.
EOPNOTSUPP Указывает, что операция не поддерживается для сокета. Обратите внимание, что, хотя ENOTSUP и EOPNOTSUPP имеют одинаковое значение в Linux, согласно POSIX.1 эти значения ошибок должны быть различными.
EOVERFLOW Указывает, что значение слишком велико для хранения в данном типе данных.
EPERM Указывает, что операция запрещена.
EPIPE Указывает разрыв трубы.
EPROTO Указывает ошибку протокола.
EPROTONOSUPPORT Указывает, что протокол не поддерживается.
EPROTOTYPE Указывает неверный тип протокола для сокета.
ERANGE Указывает, что результаты слишком большие.
EROFS Указывает, что файловая система только для чтения.
ESPIPE Указывает неверную операцию поиска.
ESRCH Указывает, что такого процесса нет.
ESTALE Указывает, что дескриптор файла устарел.
ETIME Указывает истечение таймера.
ETIMEDOUT Указывает, что соединение истекло.
ETXTBSY Указывает, что текстовый файл занят.
EWOULDBLOCK Указывает, что операция заблокирует выполнение.
EXDEV Указывает неправильную ссылку.

Константы ошибок, специфичные для Windows

Следующие коды ошибок специфичны для операционной системы Windows:

Постоянная Описание
WSAEINTR Указывает на прерванный вызов функции.
WSAEBADF Указывает на недопустимый дескриптор файла.
WSAEACCES Указывает на недостаточные права для выполнения операции.
WSAEFAULT Указывает на недопустимый адрес указателя.
WSAEINVAL Указывает на то, что был передан недопустимый аргумент.
WSAEMFILE Указывает на то, что слишком много файлов открыто.
WSAEWOULDBLOCK Указывает на то, что ресурс временно недоступен.
WSAEINPROGRESS Указывает на то, что операция в настоящее время выполняется.
WSAEALREADY Указывает на то, что операция уже выполняется.
WSAENOTSOCK Указывает на то, что ресурс не является сокетом.
WSAEDESTADDRREQ Указывает на то, что требуется адрес назначения.
WSAEMSGSIZE Указывает на то, что размер сообщения слишком большой.
WSAEPROTOTYPE Указывает на неверный тип протокола для сокета.
WSAENOPROTOOPT Указывает на неверный параметр протокола.
WSAEPROTONOSUPPORT Указывает на то, что протокол не поддерживается.
WSAESOCKTNOSUPPORT Указывает на то, что тип сокета не поддерживается.
WSAEOPNOTSUPP Указывает на то, что операция не поддерживается.
WSAEPFNOSUPPORT Указывает на то, что семейство протоколов не поддерживается.
WSAEAFNOSUPPORT Указывает на то, что семейство адресов не поддерживается.
WSAEADDRINUSE Указывает на то, что сетевой адрес уже используется.
WSAEADDRNOTAVAIL Указывает на то, что сетевой адрес недоступен.
WSAENETDOWN Указывает на то, что сеть отключена.
WSAENETUNREACH Указывает на то, что сеть недоступна.
WSAENETRESET Указывает на то, что сетевое соединение было сброшено.
WSAECONNABORTED Указывает на то, что соединение было прервано.
WSAECONNRESET Указывает на то, что соединение было сброшено удалённым узлом.
WSAENOBUFS Указывает на то, что доступно недостаточно буферной памяти.
WSAEISCONN Указывает на то, что сокет уже подключен.
WSAENOTCONN Указывает на то, что сокет не подключен.
WSAESHUTDOWN Указывает на то, что данные не могут быть отправлены после закрытия сокета.
WSAETOOMANYREFS Указывает на то, что слишком много ссылок.
WSAETIMEDOUT Указывает на то, что соединение истекло по таймауту.
WSAECONNREFUSED Указывает на то, что соединение было отклонено.
WSAELOOP Указывает на то, что имя не может быть переведено.
WSAENAMETOOLONG Указывает на то, что имя было слишком длинным.
WSAEHOSTDOWN Указывает на то, что сетевой хост недоступен.
WSAEHOSTUNREACH Указывает на то, что маршрута к сетевому хосту нет.
WSAENOTEMPTY Указывает на то, что каталог не пуст.
WSAEPROCLIM Указывает на то, что слишком много процессов.
WSAEUSERS Указывает на то, что квота пользователя превышена.
WSAEDQUOT Указывает на то, что квота диска превышена.
WSAESTALE Указывает на устаревшую ссылку на дескриптор файла.
WSAEREMOTE Указывает на то, что элемент удалённый.
WSASYSNOTREADY Указывает на то, что сетевой подсистема не готова.
WSAVERNOTSUPPORTED Указывает на то, что версия winsock.dll находится вне допустимого диапазона.
WSANOTINITIALISED Указывает на то, что успешная инициализация WSAStartup ещё не выполнена.
WSAEDISCON Указывает на то, что выполняется плавное завершение работы.
WSAENOMORE Указывает на то, что больше результатов нет.
WSAECANCELLED Указывает на то, что операция была отменена.
WSAEINVALIDPROCTABLE Указывает на то, что таблица вызовов процедур неверна.
WSAEINVALIDPROVIDER Указывает на неверного поставщика услуг.
WSAEPROVIDERFAILEDINIT Указывает на то, что поставщик услуг не смог завершить инициализацию.
WSASYSCALLFAILURE Указывает на ошибку системного вызова.
WSASERVICE_NOT_FOUND Указывает на то, что служба не найдена.
WSATYPE_NOT_FOUND Указывает на то, что тип класса не найден.
WSA_E_NO_MORE Указывает на то, что больше результатов нет.
WSA_E_CANCELLED Указывает на то, что вызов был отменён.
WSAEREFUSED Указывает на то, что запрос к базе данных был отклонен.

Постоянные libuv

Постоянная Описание
UV_UDP_REUSEADDR

© Joyent, Inc. and other Node contributors
Licensed under the MIT License.
Node.js is a trademark of Joyent, Inc. and is used with its permission.
We are not endorsed by or affiliated with Joyent.
https://nodejs.org/dist/latest-v8.x/docs/api/os.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API