> Может ли GCC компилировать программы для исполнения без операционной систем, например при загрузки компьютера?
частично. гцц поддерживает freestanding, но не полностью. например, даже в этом режиме он генерирует вызовы к таким стандартным сишным функциям, как memset и memcpy, хотя в стандарте ясно написано, что в режиме freestanding предполагается, что никаких стандартных библиотек/функций не существует, как и большинства заголовочных файлов. по этому поводу bsd-шники одно время сильно ругались, когда пытались собрать ядро с помощью гцц.
Всем огромное спасибо! Первый раз на этом форуме, не ожидал такой отдачи! Всем еще раз спасибо. Переходя по ссылкам нашел решение вот The Real «Hello World!» (на русском кстати :))
Если вам это нужно не в образовательных целях, а для дела, то рекомендую изучить multiboot specification и грузить свой модуль из grub. Сэкономите кучу времени.