Что, если я превращу свой компьютер x86_64 с ядром Opteron 24 (4 numa x 6 ядер) в машину с одной задачей?

Можно ли будет достичь следующих целей:

  1. Прямой доступ к памяти для всех уровней памяти.
  2. Отсутствие прерываний, кроме взаимодействия с пользователем. Видео работает через отдельный чип VGA Aspeed. Также возможен доступ через консоль COM.
  3. Запуск рукописной ассемблерной программы, которая будет работать с меньшим количеством переводов памяти.
  4. Имея небольшой код, контролирующий каждое ядро.

Это избавило бы от фрагментации памяти и траты ресурсов процессора / памяти?

Позволит ли это максимально возможную вычислительную мощность? Насколько больше по сравнению с обычным пользовательским программным обеспечением? Мало процентов? Какое микроядро работает лучше всего для этой цели?

PS. Я нашел это http://www.templeos.org/Wb/Home/Wb2/TempleOS.html Это работает?

PS2. Я частично согласен с Терри с его подходом - виртуальная память - вещь, которая не нужна большинству современных серверов. Каждая обычная серверная плата имеет 16 слотов памяти.

1 ответ1

0

Вы можете проверить операционную систему BareMetal с полностью написанным на ассемблере BareMetal exokernel, обеспечивающим однопроцессный процесс с многоядерными возможностями и прямым отображением памяти, x86_64 только с крошечным пространством.

https://github.com/ReturnInfinity/BareMetal-kernel

Прерывания ядра для взаимодействия с пользователем и API для программирования на Си.

Если вам нравятся хардкорные вещи, вы хотите посмотреть на это.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .