Что должна делать программа C в простое при работе в Linux?

Я написал много программ на языке C для микроконтроллеров, но ни одной из них не работал под ОС типа Linux. Как linux решает, сколько времени на обработку нужно дать моему приложению? Есть ли что-то, что мне нужно сделать, когда у меня есть время простоя, чтобы сказать ОС, чтобы она занялась чем-то другим и вернулась ко мне позже, чтобы другие процессы также могли работать? Или ОС делает это автоматически?

Редактировать :Добавление деталей В моей программе c есть планировщик задач. Некоторые задачи выполняются каждые 100 мс, некоторые — каждые 50 мс и так далее. В моем основном программном цикле я вызываю ProcessTasks, который проверяет, готовы ли какие-либо задачи к запуску, если ни одна из них не готова, она вызывает функцию ожидания. Функция простоя ничего не делает, но она есть, чтобы я мог переключать контакт GPIO и контролировать время простоя с помощью O'scope... или чего-то еще, если я того пожелаю. Так что, может быть, мне следует вызвать sched _yield ()в этой функции бездействия???

6
задан PICyourBrain 16 August 2012 в 16:58
поделиться