Как взаимодействуют компилируемые языки программирования и операционные системы?
Поясните как работают компилируемые языки в взаимодействии с операционной системой.
Во всех источниках написано что код компилируется для того чтобы мог сразу отправляться на процессор. Т.е. я это представляю так что у нас физически лежит файл скомпилированный в котором подряд записаны двоичные команды условно 110101010101 - отправили на процессор, дальше 1010100110 - отправили на процессор и т.д. пока программа не закончится.
Но ведь это не так, в моей программе ведь может быть код который запрашивает выделение оперативной памяти или выделение дисковой памяти и я могу туда что-то записывать и читать. При этом мы знаем что этим занимается операционная система, а не напрямую код.
Так вот собственно вопрос, как это можно представить ? Что именно будет в скомпилированном файле ? И получается что он все таки не напрямую отправляет команды на процессор, а через операционную систему которая уже решает что делать с командой выполнять самой или отправить на процессор ? или как?
Можно ссылку\книгу где подробно почитать? Спасибо.