Si queres desarrollar tu SO primero aprende a programar y luego te metes en el tema, es como querer correr y no saber caminar, no se puede!

...
Linux esta programado en gran parte en C, por lo que es buena opción par aprender, hacer ejercicios.. y una vez que manejes bien tanto el lenguaje como la lógica, ahi te metes..
2 cosas: "A programar se aprende programando" (dijo un profe mio), estoy 100% de acuerdo, es sentarse y hacer ejercicios... Muchos ejercicios...
Y la otra, es que aprender a programar no es aprender la sintaxis y ya! Sino yo en 1 dia te aprendo 3 lenguajes... Total todos los lenguajes que derivan de AGOL son parecidos. Es tambiém aprender a pensar de forma lógica, es hermoso!

Porque te dicen por ejemplo desarrolla un algoritmo (sucesión de pasos finitos) en C (por ejemplo) que dado un numero determine si es par.
Y vos tenes que pensar como hacer eso (primero pedir un numero, validar que lo que te pasan es un numero, fijarte si el resto al dividirlo por 2 es cero), y recien ahi cuando comprendiste como se hace ir al lenguaje!
Una práctica muy recomendada es primero aprender pseudocódigo y despues a programar.. Pero nadie lo hace por una cuestion de atolondramiento! jajaja
Saludos
Bienvenido al foro!