Page 330 - Браун Э. - Изучаем JavaScript. Руководство по созданию современных веб-сайтов - 2017
P. 330

И н формация об операционной системе

          Модуль  os предоставляет  некую  специфическую для платформы  информацию
       о компьютере, на котором выполняется приложение. Вот пример, демонстрирующий
       самую полезную информацию,  предоставляемую  модулем  os  и  их  значения,  полу­
       ченные на моем компьютере.
       const  os  =  require ( ' o s  ' }  ;

       console . l og ( "Имя  хоста :  "  +    os . hostname ( } } ;     1 1   prometheus
       console . log  " Тип  ОС :  "  +  os . type ( }   } ;   1 1   Lin ux
                  (
                                           m
       соnsоlе . lоg ( "Платформа :  "  +    os . platfor ( } } ;     1 1   linux
       console . l og ( "Bepcия :  "  +  os . release ( } } ;     1 1   3 . 1 3 . 0-52-generic
       console . l og ( "Bpeмя  работы :  "  +
           (os . u ptime ( ) /60/60/ 2 4 )   . t oFixed ( l }   +  " day " } ;   1 1   8 0 . 3  days
                                                  s
                                                    h
       console . l og ( "Apxитeктypa  процессора :  "  +    os . arc ( }  }  ;    //  х64
       соnsоlе . l оg ( " К оличество  процессоров :  "  +    os . cpus ( }   . l ength} ;  //  1
       console . l og ( "Oбъeм  памяти :  "  +
                     m
           (os . totalme ( } / l e 6 }   . t oFixed ( l }   +  "  М  В " } ;   1 1   1 0 42  . 3    мв
       console . l og ( " C вoбoднo :  "  +
           (os . freeme ( } / l e 6 } . t oFixed ( l }   +  "  М  В " } ;   1 1   1 9 5  . 8    м в
                    m
       Доче р н и е   процессы

          Модуль  child_process  позволяет  вашему приложению запускать другие  про­
       граммы, будь то другие программы Node, а также исполняемые файлы или сценарии
       на другом языке. Описание всех  подробностей управления дочерними  процессами
       выходит за рамки этой книги, но простой пример мы рассмотрим.
          Модуль child _process предоставляет три  основные  функции:  ехес, execF i l e
       и  fork. Как и у модуля  fs, здесь есть синхронные версии этих функций  (execSync,
       execFileSync и forkSync). Функции ехес и execFile могут запустить любой выпол­
       няемый  файл,  поддерживаемый  вашей  операционной системой.  Функция  ехес вы­
       зывает оболочку (это то, что лежит в основе командной строки вашей операционной
       системы; если вы можете запустить нечто из командной строки, вы можете запустить
       это с помощью функции ехес). Функция execFile позволяет запустить исполняемый
       файл непосредственно; она обеспечивает немного улучшенное использование памяти
       и ресурсов, но требует большего  внимания. Наконец функция fork позволяет запус­
       кать другие сценарии Node (что также может быть сделано функцией ехес).

                  Функция  fork запускает отдельный процессор Node,  поэтому расход
                  ресурсов  будет  таким  же,  как и  при  использовании  функции  ехес;
                  но функция fork позволяет обращаться к некоторым возможностям
                  взаимодействия между процессами (interprocess communication). Более



                                               Ин ф ормация об операционной системе   333
   325   326   327   328   329   330   331   332   333   334   335