Spec-Zone.ru › Node.js 6 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)
{
  lo: [
    {
      address: '127.0.0.1',
      netmask: '255.0.0.0',
      family: 'IPv4',
      mac: '00:00:00:00:00:00',
      internal: true
    },
    {
      address: '::1',
      netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      internal: true
    }
  ],
  eth0: [
    {
      address: '192.168.1.108',
      netmask: '255.255.255.0',
      family: 'IPv4',
      mac: '01:02:03:0a:0b:0c',
      internal: false
    },
    {
      address: 'fe80::a00:27ff:fe4e:66a1',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: '01:02:03:0a:0b:0c',
      internal: false
    }
  ]
}

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()

Добавлен в: 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.

См. https://ru.wikipedia.org/wiki/Uname#Примеры для дополнительной информации об выводе команды uname(3) на различных операционных системах.

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. Примечание: Не все константы будут доступны на каждой операционной системе.

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

Следующие константы сигналов экспортируются 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 Specific Error Constants

Следующие коды ошибок специфичны для операционной системы 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 Constants

Постоянная Описание
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-v6.x/docs/api/os.html

Spec-Zone.ru

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