Как процессор понимает ОС?

Объясните пожалуйста. Если к примеру ядро unix написано на Си, а процессор понимает только двоичную систему счисления, то как тогда всё это работает?
Процессор же не может понимать компилятор который тоже написан на яп.
  • Вопрос задан
  • 2707 просмотров
Решения вопроса 1
@pfg21
ex-турист
процессор понимает только небольшой набор команд, которые описываются архитектурой процессора. также архитектурой описываются среда исполнения команд, наличие и размерность регистров, способы доступа к памяти и прочим внешним устройствам.

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

для адекватного понимания и редактирования программы пишут на языках, которые специально созданы для "человека" :)
для исполнения в процессоре программы из "человеческого языка" компилируют в исполняемый двоичный код.

компиятор тоже написан на "человеческом языке" и потом скомпилирован в исполняемый файл.
Ответ написан
Пригласить эксперта
Ответы на вопрос 6
Если к примеру ядро unix написано на Си, а процессор понимает только двоичную систему счисления, то как тогда всё это работает?

Компилятор, компиляция
Операционная Система
Ответ написан
BuriK666
@BuriK666
Компьютерный псих
Комментировать
mindtester
@mindtester
http://iczin.su/hexagram_48
далеко не всегда правильно ))

(по тому так часты патчи/апдейты во всех системах)

однако вы не верно циклитесь на языке "на котором написана ОС".. после того как "ОС написана" - она скомпилирована

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

есть особый случай - jit-компиляция (обычно это означает компиляцию "на лету") (node.js, .Net).. а еще есть "интерпретация" (js, python)
Ответ написан
Jump
@Jump
Системный администратор со стажем.
Если к примеру ядро unix написано на Си, а процессор понимает только двоичную систему счисления, то как тогда всё это работает?
Работает очень просто- процессор исполняет машинный код.

Машинный код содержит инструкции - указания процессору выполнить определенные операции над данными и сами данные.
Любая программа написанная на любом языке преобразовывается в машинный код.
Язык программирования это удобный для человека язык, а на выходе - всегда машинный код.
Ответ написан
Как процессор понимает ОС?
С трудом это делает. ОС универсальные рассчитанные под всевозможные и даже невозможные задачи, процессоры тоже. И не всегда это совпадает.

процессор понимает только двоичную систему счисления
Брехня! Процессор поднимает только перепады потенциала в строго определённом уровне. Что там будет какая логика, камню до лампочки.

Процессор же не может понимать компилятор который тоже написан на яп.
Обычно вначале идёт ОС, а потом компилятор. Операционка абстрагирует полностью оборудование от кода приложений. Поэтому голову, над тем что выложил компилятор, ломает операционка. Вначале себе, потом процессору.
Ответ написан
Комментировать
Olek1
@Olek1
Как процессор понимает ОС?

Только через драйвер
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы