Это команда cook_rsh, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
приготовить - балансировка нагрузки rsh
СИНТАКСИС
готовить [ вариант...] архитектура команду [ аргумент...]
готовить -Помощь
ОПИСАНИЕ
" готовить программа - это оболочка вокруг RSH(1), который выполняет простую балансировку нагрузки. Он получает
информацию о загрузке, запустив RUP(1) команда и выбирает наиболее подходящий хост
на указанную вами архитектуру, и наименьшая нагрузка из всех хостов этой
архитектура.
Первый аргумент командной строки - это имя архитектуры, которое используется для получения списка
возможные хосты. Из этого списка RUP(1) запускается команда для определения хоста с
самая низкая нагрузка, которая, в свою очередь, используется в качестве первого аргумента возможного RSH(1) команда.
КУХНИ
Чтобы использовать эту программу где-нибудь в вашей кулинарной книге, вам нужно добавить строку
который читает
parallel_rsh = "готовить";
Если выбранный хост совпадает с вызывающим (хост сборки), тогда эта программа просто выполняет
команда пропускает rsh. Так что использовать это в сети из одной машины ничего не стоит!
Для каждого рецепта, который вы хотите передать на удаленный хост, вам нужно добавить привязку хоста
приписывать. Типичное использование - это сборка с многоуровневой архитектурой.
% 1 /% 0% .o:% 0% .c
привязка к хосту% 1 {
cc -o [цель] -c [разрешение% 0% .c]; }
В приведенном здесь рецепте каждая архитектура имеет свои объектные файлы, помещенные в отдельный
дерево каталогов, зависящее от архитектуры. Имя архитектуры (% 1) используется в хосте
привязка, так что компиляция может быть сбалансирована по нагрузке для всех машин этой архитектуры.
Если вам нужна команда для запуска на определенном хосте (скажем, потому что именно там
лицензия на приложение находится), затем просто используйте имя хоста в привязке хоста
атрибут, а не имя архитектуры.
ОПРЕДЕЛЯЮЩИЕ КЛАССЫ
" /host_lists.pl файл должен существовать и содержать определения переменных, используемых для
определить, являются ли хосты членами определенных архитектур.
" /host_lists.pl файл определяет Perl HOL "хеш списков". Хеш - это% ArchNames, и это
отображает имена архитектур так, как хочет их видеть пользователь, для перечисления ссылок как фактических
списки хранятся.
Имена каждой архитектуры могут быть любой формы по вашему желанию, но по соглашению следует использовать
имена GNU, такие как "sparc-sun-solaris2.8".
Для каждой архитектуры определите один или несколько списков машин в зависимости от функции
каждый набор машин может сделать. Это может быть как простое, так и сложное по мере необходимости. Форма
имя переменной списка может быть любым допустимым идентификатором Perl, но также может быть как
имя архитектуры с тире заменено на подчеркивание, точка удалена и тип добавлен. Для
Например, можно определить хосты solaris как:
@ sparc_sun_solaris28_hosts = (
«микки», «минни», «скрудж»);
И хосты linux как:
@ i386_linux22_hosts = (
"тупой", "скрудж");
Если необходимо определить разные наборы машин для разных типов работ, тогда
добавить суффикс к именам в привязка к хосту директива по каждому рецепту, и
перечисляет здесь с тем же суффиксом.
Хэш для сопоставления имен аргументов спискам определяется следующим образом:
% ArchNames = (
"sparc-solaris2.8", => @ sparc_solaris28_hosts,
"i586-unknown-linux22", => @ i386_linux22_hosts,);
Конечно, если у пользователей разные мнения относительно того, как должны выглядеть имена архитектуры
например, вы также можете определить сопоставления «псевдонимов».
"sun4-SunOS-5.8", => @ sparc_solaris28_hosts,
Или, может быть, уровень не имеет значения, тогда определите
"sparc-solaris", => @ sparc_solaris28_hosts,
"sparc-solaris2.7", => @ sparc_solaris28_hosts,
Кроме того, этот список не может быть пустым.
И, наконец, из Perl, последняя строка файла должна читать
1; по непонятным и магическим причинам.
СИСТЕМНЫЙ ЛОГ ВЕДЕНИЕ ЖУРНАЛА
Типичные команды, которые можно увидеть во время сборки, будут выглядеть так:
ш -c 'cd /aegis/dd/gumby2.2.C079 && \ sh -ce /aegis/dd/gumby2.2.C079/.6.1; \
эхо $? > /aegis/dd/gumby2.2.C079/.6.2 '
Таким образом, мы можем легко извлечь проект / изменение из команды и зарегистрировать его через
syslog был бы тривиальным дополнением.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Эта команда обычно не имеет никаких опций.
-h Справка - показать информацию об использовании
-вП Подробный - выбор отчета
-Tn Значение трассировки для тестирования
Используйте cook_rsh в Интернете с помощью сервисов onworks.net