O infinito While loop ocupa recursos da CPU?

Pelo que entendi, você escreve seu Daemon do Linux que atende a um pedido em um loop infinito.
Algo como..

int main() {
    while(1) {
        //do something...
    }
}

ref:http://www.thegeekstuff.com/2012/02/c-daemon-process/

Eu li que dormir um programa faz com que ele entre no modo de espera para não consumir recursos.

1. Se eu quiser que o meu daemon verifique uma solicitação a cada 1 segundo, o seguinte seria um recurso importante?

int main() {
    while(1) {
        if (request) {
            //do something...
        }
        sleep(1)
    }
}

2. Se eu fosse remover o sono, isso significa que o consumo de CPU aumentará 100%?

3. É possível executar um loop infinito sem comer recursos? Diga .. se não fizer nada, mas apenas faz um loop. Ou apenas durma (1).

Loops sem fim e recursos de CPU são um mistério para mim.

questionAnswers(3)

yourAnswerToTheQuestion