Make-файлы следуют этому формату (Make-файлы всегда должны использовать табуляцию вместо пробелов, поскольку это требуется в большинстве (если не во всех) реализациях make
):
target: dependencies
operations to build target
make
пытается построить, когда вы вызываете ее без аргументов. В этом Makefile у вас есть две цели:
Поскольку lex.yy.c
- это зависимость, необходимая для сборки test
, сначала он будет построен из test.l
. Как только он будет сгенерирован, можно будет скомпилировать тест
. В основном, make
...:
тест
. lex.yy.c
не существует (или был обновлен), его нужно сначала построить. lex.yy.c
. Выполняется сборка flex test.l
: lex.yy.c
. теста
соблюдены. Выполняется g ++ lex.yy.c -ll -o test
. тест
создан. Дополнительная информация: Для получения дополнительной информации о make-файлах я бы порекомендовал Платформу разработки Linux от Rafeeq Ur Rehman . Глава 4: Использование GNU Make .
Я четко вижу, что он ничего не делает между 40-105-ми годами.
Если вы имеете в виду, что использование процессора кажется низким, заметьте, что "I/O (wait)" очень высокое значение в течение этого периода времени, и ряд процессов затенены розовым цветом (по крайней мере, один на весь период), что указывает на то, что они находятся в [116165] "прерывистом сне" [116166].
"Прерывистый сон" не обязательно является пассивным состоянием для ядра - он может быть занят петлей все время, и это обычно включается в "sys" компонент процессорного времени, так что, возможно, приложение, которое произвело этот график, вычитает это. В любом случае, если процесс загрузки достиг точки, когда больше ничего не может начаться, потому что всё остальное требует чего-то другого, чтобы закончить сначала, и всё это ждёт ввода/вывода, то вот что может произойти.
#!/bin/bash
for i in {2..70}
do
echo Doing track number $i...
./HandBrakeCLI -t $i -i /Volumes/MX1-0N-NW1_DES --preset iPad -o X-Men_Vol1_Disk1_Title$i.mp4
done
Если это обычный рабочий стол, использующий локальное дисковое хранилище, то непрерывное ожидание ввода/вывода так долго может указывать на прерывистый сбой аппаратного обеспечения.[115802].