Як виглядає операційна система перед запуском оболонки?
Залежить від ОС та способу її налаштування. Linux може бути налаштований для запису завантажувального тексту на консольний пристрій, будь то консоль текстового режиму, консоль framebuffer або послідовний порт. Він також може бути налаштований на бездоганне мовчання. Деякі ОС / системи можуть записувати діагностичну інформацію в енергонезалежну пам'ять, доступ до якої можна отримати, перевівши систему в режим розробника, налагодження чи діагностики. Багато операційних систем підтримують вихідну завантажувальну та діагностичну інформацію до якоїсь форми UART, яка може якось бути доступною на пристрої, навіть якщо прихована від користувача (google "Додати послідовний порт до DD-WRT", наприклад, де виробники приховують послідовні порти та як можна дістатися до них).
У ОС взагалі не повинно бути зовнішнього дисплея - це лише інший пристрій для ОС.
Як використовувались системи до розробки першої оболонки (наприклад, UNIX на початку 1970-х)?
По суті (і залишаєш багато, але це має дати тобі уявлення) - ти завантажив свою програму, або перевертаючи перемикачі на панелі, або використовуючи зчитувач паперових стрічок (ці пристрої записуватимуть у пам'ять безпосередньо без втручання процесора), а потім запускають процесор з іншим комутатором. ЦП запустив би цю програму, генерував би її вихід та зупинився. Це пакетна обробка на відміну від інтерактивної обробки. Якщо ви хотіли запустити іншу програму, вам довелося це зробити заново.
Якщо комп'ютер навіть не може приймати команди (немає командного рядка), як користувач може взаємодіяти з ним?
Я не фахівець у цій галузі, але старі, старі комп’ютери, такі як Altair, IMSAI та PDP-8, мали такі вимикачі на передній панелі, які безпосередньо керували процесором і могли безпосередньо читати та записувати пам'ять без втручання процесора.
Що це за найосновніший інтерфейс?
Я вважаю, що, якщо не всі сучасні процесори мають "порт JTAG", який дозволяє однотипні прямі операції. Майте на увазі, що тривалий час, як очікується, більшість комп’ютерів мають ПЗУ або мікропрограмне забезпечення, яке приймає контроль над системою, коли вона вмикається, перш ніж передавати її в ОС. Тут можуть існувати утиліти перед завантаженням або існує мінімальний механізм завантаження таких утиліт. До деяких завантажувачів, таких як U-Boot, можна отримати доступ через послідовний порт. Завантажувачі не працюють «позаду» ОС, вони завантажують ОС, передають їй управління вручну, а потім вони більше не працюють.
Чи можу я запустити цей інтерфейс в емуляторі терміналу або немає можливості перейти за оболонку?
Ні, вам потрібен інтерфейс JTAG. Це занурення у сферу електроніки, і я визнаю, що я не дуже багато про це знаю, за винятком того, що мій GuruPlug поставляється з одним, і я можу безпосередньо запрограмувати флеш-чіп на платі GuruPlug з ним - це означає, якщо щось вбиває завантажувач на GuruPlug, у мене є "незалежний від процесора" спосіб відбити його назад.