Nein, du kannst nicht einfach ein C-Programm schreiben. Wenn du mit deinem OS beginnst hast du erstmal _garkeine_ c-library. Also keine der C-Standardfunktionen (zB printf, scanf, memcpy, strlen, fopen, ...). Das musst du dir früher oder später alles selbst schreiben (oder eine vorhandene clibrary portieren, zB pdclib, glibc, newlib, dietlibc, ....), indem du im kernel die Hardware richtig ansprichst (zB liegt der textmode bildschirm an der Adresse 0xB8000 als array vor). Aber bevor du deinen C-Kernel überhaupt beginnen kannst musst du noch einiges in Assembler implementieren:zB in den Protected-Mode, Paging aktivieren und den kernel woanders hin mappen, ... Dann kannst du mit einfacheren Funktionen wie einer simplen Textausgabe weitermachen (Wobei man das eigentlich auch wieder zum debuggen des codes brauchen könnte
).
Ich habe momentan nur eine kleine Textmode-Shell, aber ich könnte (wenn ich das wollte) mit einer gui beginnen, aber ich feile lieber noch ein bisschen an dem Rest meines Systems.
Am besten liest du dir so viele tutorials wie möglich durch und
diesen FAQ (engl.)edit2: Wie taljeth unten schon sagt, ist es sehr empfehlenswert Grub zu nehmen.