Страница 1 из 1

Включить компьютер без операционной системы

Добавлено: 11 ноя 2017, 15:52
mordovia1958mail
Страдал бессонницей, вот думал, можно ли включить обычный интеловский компьютер (или хотя бы процессор) без операционной системы, типа как атмелку.
Атмелка и иже с ними микроконтроллеры начинают после включения считывать команды из флеш-памяти, с нулевого адреса и подряд дальше (пока не нарвутся на переходы или зацикливания).
А откуда считывает команды обычный процессор при включении? У него же, в отличие от микроконтроллера, памяти нет.
Из биоса? Из кеша? (из планок оперативной памяти или жесткого диска вряд ли, это сложные устройства, которые начинают работать намного позже).

Re: Включить компьютер без операционной системы

Добавлено: 11 ноя 2017, 15:54
mordovia1958mail
По идее, что такое операционная система? Это обычная программа, которая при включении запускается как-то достаточно сложно. Типа биос (или какой-то там пускатель) загружает ее в оперативную память с жесткого диска. А если я выдерну микросхему биоса?

Re: Включить компьютер без операционной системы

Добавлено: 11 ноя 2017, 15:54
BSVi
Из биоса, очевидно. Выдернуть можешь попробовать - компьютер не запустится.

Re: Включить компьютер без операционной системы

Добавлено: 11 ноя 2017, 16:04
mordovia1958mail
Посмотрел распиновку современного процессора. Очень много линий питания и земли, буквально целые ряды. А все остальное - обычные линии данных и линии адреса.
То есть процессор - просто большое арифметическое устройство , типа КР1533ИП3. Которое можно попробовать подергать с помощью вспомогательного микроконтроллера и вспомогательной памяти.

Изображение
Processor_Pinout.gif

Re: Включить компьютер без операционной системы

Добавлено: 11 ноя 2017, 20:25
iEugene0x7CA
mordovia1958mail писал(а):То есть процессор - просто большое арифметическое устройство , типа КР1533ИП3.

Честно скажу, в самых современных процессорах не разбираюсь, но могу подсказать как работали более классические, вроде Z80/i8085/i8086-i80386/MC6800/MOS6502 и т.д.
Фактически, они представляли собой в одном корпусе: дешифратор инструкций, АЛУ, группу регистров быстрого доступа(в т.ч. и подсоединенных к АЛУ), регистры с флагами прерываний, шину данных и адреса(прямо физическую, ножки в параллель), и вход такта, который продвигал шину адреса на одно значение вперед по выполнению машинного цикла.

Кто шарит внутреннюю структуру микроконтроллеров — микропроцессорные системы фактически и представляли собой микроконтроллер в современном смысле, просто располагался он на плате, а не на одном чипе.
Микропроцессорный подход имел свои определенные ништяки, так как можно было фактически из конструктора(микропроцессорного набора) собрать в аккурат такую систему как надо.
Т.е. повесить таймеров сколько нужно, оперативы, ROM'ы, UART'ов, GPIO, были всякие хитрые чипы вроде готовых генераторов звука, генераторов видео, внешних контроллеров оперативной памяти, готовых экранчиков(кстати, до сих пор многие поддерживают подключение к шинам i8080/MC6800), т.д.

Насчет более современных систем, они имеют примерно вот такую структуру:

Motherboard_diagram.svg.png

Северный мост — система, подвязывающая динамическую оперативную память и высокоскоростные шины вроде PCI Express к CPU.
Южный мост — это контроллер низкоприоритетной периферии, через неё ведется обмен данными со всякими USB, жесткими дисками, и периферией вроде звуковой карты, Ethernet-контроллера, т.д.
Почитать про обе системы можно тут: https://en.wikipedia.org/wiki/Northbridge_(computing) и https://en.wikipedia.org/wiki/Southbridge_(computing)

Тут кстати упоминалось вытаскивание BIOS'а. Стоит уточнить, что микросхема эта является не более чем прошивкой для южного моста — это прямо физически просто SPI'ная флешка, которую можно вытащить и записать туда что угодно.
 Когда-то баловался, мож кому будет любопытно. Плеер на микросхеме из материнки:

P.S. Насчет задумки, дергать современный CPU микроконтроллером можно, но фактически создавать ты будешь тот самый Northbridge и Southbridge, обычно представляющие из себя быстрые ASIC. ;)

Re: Включить компьютер без операционной системы

Добавлено: 12 ноя 2017, 13:08
super_bum
У современных компьютеров блок-схема слегка отличается, в основном за счет того, что наиболее критичные к быстродействию узлы были внедрены в сам процессор.
Изображение

Re: Включить компьютер без операционной системы

Добавлено: 13 ноя 2017, 16:51
N1X
iEugene0x7CA писал(а):Стоит уточнить, что микросхема эта является не более чем прошивкой для южного моста — это прямо физически просто SPI'ная флешка, которую можно вытащить и записать туда что угодно.
 Когда-то баловался, мож кому будет любопытно. Плеер на микросхеме из материнки:

P.S. Насчет задумки, дергать современный CPU микроконтроллером можно, но фактически создавать ты будешь тот самый Northbridge и Southbridge, обычно представляющие из себя быстрые ASIC. ;)

Неа, в этой флехе BIOS. Базовая система ввода-вывода. И стартовый адрес как раз в ней. Т.е. код с нее выполняет ЦП. А уже в этом коде - стартовая проверка системы, установка управляющих регистров чипсета, настройка и старт контроллера ОЗУ, подсистемы видео и прочего, потом что надо копируется в ОЗУ, выполняется куча всего и заканчивается передачей управления загрузчику ОС.

Re: Включить компьютер без операционной системы

Добавлено: 14 ноя 2017, 10:57
iEugene0x7CA
Super_bum, в совсем современных системах действительно — либо северный мост внедрен в сам процессор, а на материнской плате находится южный...
Либо северный и южный мосты объединяются на одном внешнем кристалле. В общем, зависит от конкретной реализации.

N1X писал(а):Неа, в этой флехе BIOS. Базовая система ввода-вывода. И стартовый адрес как раз в ней. Т.е. код с нее выполняет ЦП. А уже в этом коде - стартовая проверка системы, установка управляющих регистров чипсета, настройка и старт контроллера ОЗУ, подсистемы видео и прочего, потом что надо копируется в ОЗУ, выполняется куча всего и заканчивается передачей управления загрузчику ОС.

Ну, имелось в виду, что BIOS — это не физический объект, а просто прошивка.
Физическим объектом, который вытаскаивается — являются микросхемы вот такого типа: https://www.winbond.com/resource-files/ ... 242015.pdf
Очень легко читаюстя микроконтроллером, всем их рекомендую. :)

А вот уже как и откуда процессор читает данные — не знаю, в этом вопросе не шарю.