<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.ejudge.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=Serve.cfg%3Atester%3Astart_cmd</id>
	<title>Serve.cfg:tester:start cmd - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.ejudge.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=Serve.cfg%3Atester%3Astart_cmd"/>
	<link rel="alternate" type="text/html" href="https://www.ejudge.ru/wiki/index.php?title=Serve.cfg:tester:start_cmd&amp;action=history"/>
	<updated>2026-04-21T05:58:32Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://www.ejudge.ru/wiki/index.php?title=Serve.cfg:tester:start_cmd&amp;diff=3907&amp;oldid=prev</id>
		<title>Anna at 09:46, 20 February 2012</title>
		<link rel="alternate" type="text/html" href="https://www.ejudge.ru/wiki/index.php?title=Serve.cfg:tester:start_cmd&amp;diff=3907&amp;oldid=prev"/>
		<updated>2012-02-20T09:46:51Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 09:46, 20 February 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l27&quot; &gt;Line 27:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 27:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;процесса вспомогательной программы (то есть не допускается использование &amp;lt;tt&amp;gt;fork, system,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;процесса вспомогательной программы (то есть не допускается использование &amp;lt;tt&amp;gt;fork, system,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;popen&amp;lt;/tt&amp;gt; и т. д.), так как в противном случае не гарантируется корректное завершение тестируемой программы по истечению лимита времени.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;popen&amp;lt;/tt&amp;gt; и т. д.), так как в противном случае не гарантируется корректное завершение тестируемой программы по истечению лимита времени.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Если данная конфигурационная переменная не установлена, но абстрактный тестировщик, указанный в переменной &amp;lt;tt&amp;gt;[[serve.cfg:tester:super|super]]&amp;lt;/tt&amp;gt;, устанавливает эту переменную, используется значение переменной из описания абстрактного тестировщика, при этом выполняются [[форматные подстановки]]. Если значение переменной &amp;lt;tt&amp;gt;start_cmd&amp;lt;/tt&amp;gt; не начинается с символа &amp;lt;tt&amp;gt;’/’&amp;lt;/tt&amp;gt;, то есть&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Если данная конфигурационная переменная не установлена, но абстрактный тестировщик, указанный в переменной &amp;lt;tt&amp;gt;[[serve.cfg:tester:super|super]]&amp;lt;/tt&amp;gt;, устанавливает эту переменную, используется значение переменной из описания абстрактного тестировщика, при этом выполняются [[форматные подстановки]]. Если значение переменной &amp;lt;tt&amp;gt;start_cmd&amp;lt;/tt&amp;gt; не начинается с символа &amp;lt;tt&amp;gt;’/’&amp;lt;/tt&amp;gt;, то есть&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;является относительным путём, оно добавляется к значению глобальной конфигурационной&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;является относительным путём, оно добавляется к значению глобальной конфигурационной&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Anna</name></author>
		
	</entry>
	<entry>
		<id>https://www.ejudge.ru/wiki/index.php?title=Serve.cfg:tester:start_cmd&amp;diff=3906&amp;oldid=prev</id>
		<title>Anna: Created page with &quot;Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/[[serve...&quot;</title>
		<link rel="alternate" type="text/html" href="https://www.ejudge.ru/wiki/index.php?title=Serve.cfg:tester:start_cmd&amp;diff=3906&amp;oldid=prev"/>
		<updated>2012-02-20T09:46:28Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Навигация: &lt;a href=&quot;/wiki/index.php/Main_Page&quot; title=&quot;Main Page&quot;&gt;Главная страница&lt;/a&gt;/&lt;a href=&quot;/wiki/index.php/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_ejudge&quot; title=&quot;Система ejudge&quot;&gt;Система ejudge&lt;/a&gt;/&lt;a href=&quot;/wiki/index.php/%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5&quot; title=&quot;Использование&quot;&gt;Использование&lt;/a&gt;/&lt;a href=&quot;/wiki/index.php/%D0%9A%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D1%84%D0%B0%D0%B9%D0%BB%D1%8B&quot; title=&quot;Конфигурационные файлы&quot;&gt;Конфигурационные файлы&lt;/a&gt;/[[serve...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Конфигурационные файлы]]/[[serve.cfg]]/[[serve.cfg:tester|Конфигурационные параметры тестирования]]/[[Serve.cfg:tester:start_cmd|start_cmd]]&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| '''Имя переменной''':   || &amp;lt;tt&amp;gt;'''start_cmd'''&amp;lt;/tt&amp;gt; &lt;br /&gt;
|-&lt;br /&gt;
|  '''Содержится в:'''    || &amp;lt;tt&amp;gt;[[serve.cfg:tester|tester]]&amp;lt;/tt&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| '''Используется:''' || &amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt; &lt;br /&gt;
|-&lt;br /&gt;
| '''Тип содержимого:''' || ''путь к файлу'' &lt;br /&gt;
|-&lt;br /&gt;
|'''Может отсутствовать:''' || ''да'' &lt;br /&gt;
|-&lt;br /&gt;
| '''Наследуется:'''||''да''&lt;br /&gt;
|-&lt;br /&gt;
|'''Значение по умолчанию:''' ||''не установлено''&lt;br /&gt;
|-&lt;br /&gt;
|'''Может повторяться:''' || ''нет'' &lt;br /&gt;
|}&lt;br /&gt;
'''Описание.''' Данная конфигурационная переменная устанавливает путь к вспомогательной&lt;br /&gt;
программе, используемой для запуска тестируемой программы участника. Эта вспомогательная программа должна выполнить необходимые подготовительные операции, а затем вызвать&lt;br /&gt;
тестируемую программу с помощью системного вызова &amp;lt;tt&amp;gt;execv&amp;lt;/tt&amp;gt; или &amp;lt;tt&amp;gt;execve&amp;lt;/tt&amp;gt;. Полный путь&lt;br /&gt;
к тестируемой программе передаётся первым аргументом командной строки, а дополнительные аргументы для тестируемой программы — последующими параметрами. Простейший&lt;br /&gt;
способ вызова тестируемой программы из вспомогательной программы заключается в вызове функции execv со следующими параметрами.&lt;br /&gt;
 execv(argv[1], argv + 1);&lt;br /&gt;
Идентификатор процесса тестируемой программы должен быть равен идентификатору&lt;br /&gt;
процесса вспомогательной программы (то есть не допускается использование &amp;lt;tt&amp;gt;fork, system,&lt;br /&gt;
popen&amp;lt;/tt&amp;gt; и т. д.), так как в противном случае не гарантируется корректное завершение тестируемой программы по истечению лимита времени.&lt;br /&gt;
Если данная конфигурационная переменная не установлена, но абстрактный тестировщик, указанный в переменной &amp;lt;tt&amp;gt;[[serve.cfg:tester:super|super]]&amp;lt;/tt&amp;gt;, устанавливает эту переменную, используется значение переменной из описания абстрактного тестировщика, при этом выполняются [[форматные подстановки]]. Если значение переменной &amp;lt;tt&amp;gt;start_cmd&amp;lt;/tt&amp;gt; не начинается с символа &amp;lt;tt&amp;gt;’/’&amp;lt;/tt&amp;gt;, то есть&lt;br /&gt;
является относительным путём, оно добавляется к значению глобальной конфигурационной&lt;br /&gt;
переменной &amp;lt;tt&amp;gt;[[serve.cfg:global:script_dir|script_dir]]&amp;lt;/tt&amp;gt;. Если после всех указанных выше действий значение переменной &amp;lt;tt&amp;gt;start_cmd&amp;lt;/tt&amp;gt; не определено, никакая вспомогательная программа запускаться не будет, а&lt;br /&gt;
программа &amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt; будет запускать тестируемую программу непосредственно.&lt;br /&gt;
&lt;br /&gt;
'''Пример.'''&lt;br /&gt;
 start_cmd = &amp;quot;capexec&amp;quot;&lt;/div&gt;</summary>
		<author><name>Anna</name></author>
		
	</entry>
</feed>