Applications must either load an OS and exit boot services, or return from the main function (in which case the boot loader will look for the next app to load).
читаю исходники дров из какой-то ос и наткнулся на какой-то atomic_thread_fence, погуглил это типа какая-то внутренняя штука от компилятора, но не понял зачем оно тут используется