Как запустить 16 -битный код на 32 -битном Linux?
Вопрос
Я написал небольшую 16-битную программу сборки, которая записывает некоторые значения в некоторых местах памяти. Есть ли способ, которым я могу проверить ее в 32-разрядном защищенном режиме на Linux?
Другие советы
Да, 16-битный код поддерживается в пользовательских процессах в Linux. Системный вызов, чтобы сделать это, называется vm86()
(Есть страница человека, но в ней мало). Естественно, он работает только на платформах x86 (и 32-битный).
Если вам нужен пример, проект Elks имеет полный инструмент для запуска ELKS 8086 Binary на Linux, который использует его:
https://github.com/lkundrak/dev86/tree/master/elksemu
Ищите run_elks()
функция Это довольно просто.
Не связан с StackOverflow