Задать вопрос
  • Как разместить бинарный файл и передать ему управление?

    @senorodion Автор вопроса
    jcmvbkbc, Спасибо. Тогда ещё вопрос если вдруг есть на него ответ: какую платформу/cpu/target нужно выбрать чтобы со всем этим было проще (без линковки, собрал, указал и запустил)?
    Написано
  • Как разместить бинарный файл и передать ему управление?

    @senorodion Автор вопроса
    jcmvbkbc С параметром -d in_asm,exec последние два блока IN содержат illegal (адрес 0x80000000). Я верно понимаю что без линковки всё таки не обойтись? Запускал через -kernel (-bios none)
    Написано
  • Может ли операционная система быть UEFI-приложением?

    @senorodion Автор вопроса
    Соглашусь с ответом, но частично.

    1. UEFI можно рассматривать как ограничение, но можно рассматривать и как возможности; а то, чего недостаточно - делать самому.
    2. Допускаю что UEFI-сервисы работают медленнее, чем если мы напишем подобные самостоятельно; тогда уж нужно сравнивать. Предполагаю, что поскольку эти сервисы почти что часть железа - наверняка они будут работать всё таки быстрее самописных.

    "UEFI изначально разрабатывался для инициализации аппаратного обеспечения": тут спорить бесполезно, но опять таки это можно рассматривать и как ограничение и как возможности. Почему то что сделано изначально для инициализации АО не может инициализировать (и поддерживать) и саму систему?

    3. Бесспорно, но вопрос изначально в другом :)

    4. Думаю, в этом ответе здесь самое важное. Хотя почти уверен что если выстроить верную архитектуру то проблем с безопасностью может быть меньше чем в Linux.

    Что скажете?
  • Может ли операционная система быть UEFI-приложением?

    @senorodion Автор вопроса
    Но это, как я понимаю, классический пример современной ОС: есть загрузчик поверх UEFI и есть образ системы который этим загрузчиком разворачивается в память и запускается; или нет..?

    А я же скорее про то чтобы вся операционная система собиралась в один .efi файл с типом 10, загружалась стандартным UEFI-загрузчиком, им же распределялась в памяти, затем ей же передавалось управление и она с помощью стандартных UEFI-сервисов, для начала, меняла способ обращения с памятью с физического на виртуальный, а затем выполняла всю остальную магию (вывод на экран, взаимодействие с пользователем и так далее).