Другие языки программирования и технологии

Обьясните ламеру

Как компьютер обеспечивает установку операционной системы? Ведь (возможно я ошибаюсь) пока на нем нет этой самой операционной системы, он не способен понимать какой либо программный язык? Как же тогда он получает команду о старте установки? Двоичным кодом? Или возможно у компьютера изначально есть какая то функция позволяющая понимать определенный язык и если это так, то какой? Предупреждаю, я не программист и возможно мой вопрос глупость, но мне вдруг стало очень интересно.
БИОС никакой роли не играет.

В компе главная роль у процессора, который состоит из набора вычислительных блоков (мат операции, перемещение) и декодера команд.
Процессор также имеет микро-систему-, которая им управляет (у интела своя, у amd - agesa).
После старта и внутренних тестов, процессор загружает в память микрокод (называемый UFI или OpenCore, биос УЖЕ мертв) обитающий часто на материнской плате (его положение жестко прописано в AGESA/внутреннем микрокоде процессора) , который состоит из ядра и "полезных нагрузок".
Одной из таких "полезных нагрузок" является код для проверки функциональность самого процессора, простой проверки памяти, загрузки драйверов сети и диска.
Затем осуществляется применение настроек аппаратуры и поиск носителя для старта.

Если стоит, что запуск должен осуществляться с допустим жесткого диска, то ищется жесткий диск и считывается стартовый кусок. Если кусок имеет ожидаемую структуру, этот кусок загружается в память и ему отдается управление процессором. Часто такой кусок является загрузчиком, загрузчик просто ищет ядро операционной системы по своим настройкам, загружает это ядро в память и отдает ему управление.

А вот операционная система начинает все заново, только более тщательно - проверка процессора, проверка базовых микросхем, обнаружение железа, загрузка модулей ядра, обнаружение корневого раздела, подсоединение разделов, запуск разнообразных сервисов - вплоть до запуска рабочего окружения.

Процессор понимает только один язык - язык на который он расчитан и который он декодирует для своих блоков исполнения.
Для Intel и AMD на рабочих столах это часто x86 ассемблер (не путать с ассемблером языком программирования, хотя он близок) .
Структура этого языка это длинные сложные инструкции, содержащие номер комманды процессора и часто данные. Данные могут быть адресами памяти, состояниями итд.

Нужно понимать, что все очень многослойно. Сам процессор и железо изготавливаются из песка и меди - создаются крайне маленькие переключатели на группах проводов.
В зависимости от области, они играют роль или единиц исполнения, или единиц хранения, или комбинированную. Из таких групп создают целевые блоки, блоки организованы в цепи, цепи подчиняются определенным развитиям состояний, все варианты развития состояний заранее очень детально обрабатываются. Но иногда бывают ошибки и на этом низком уровне - тогда испольуют "полезную нагрузку" UFI/Opencore чтобы "залатать" чип уже в полете, это называется "microcode update" и происходит прозрачно.

Все раскручивается по спирали и все (большинство разветвлений состояний) изначально просчитаны при системном дизайне.

Если что - спрашивайте. На ответах 99,9% оболтусы обитают.
Андрей Мартынов
Андрей Мартынов
30 330
Лучший ответ
В железе прошита простенькая программа
BIOS (базик инпут оутпут систем)
она делает стартовый тест железа и указывает откуда грузить операционку
Языков в ней нет
Есть несколько функций обеспечивающих работу с железом которые дёргаются изнутри неё или потом из ОС
Артур Валеев
Артур Валеев
75 320
На компьютере всегда есть ОС - это BIOS. Ну собственно это не совсем ОС, но тем не менее. Она дает команду для, в зависимости от того что выбрано, для загрузки с hdd или CD/DVD. На установочном CD/DVD присутсвует специальная служебная область где записан лоадер, который инициирует загрузку ядра ОС и необходимых программ в ОЗУ.... Ну гдето так в двух словах и весьма приблизительно...
Saha Krajduba
Saha Krajduba
34 334
В компутере есть специальная микросхема BIOS и именно с нее начинается загрузка любой операционной системы. Питается, как известно, от аккумулятора. Собственно, она и проводит тестирование компонентов перед запуском и выбирает диск с которого произойдет загрузка, будь то хард или сидюк с пиратской виндой.
*(Ванька)* .
*(Ванька)* .
10 086
БИОС.
И вопрос, в отличие от >95% здесь очень и очень неглупый.
я тоже не программист, но наверно это Биос всё решает и понимает
AA
Aleks Ahmedov
984