И каким образом заставить работать две задачи на процессоре не имеющим ни защиты памяти, ни возможностей сохранения состояния задачи? Интересно, почему это UNIX была перенесена на IBM PC совместимое железо только после появления i386?
Давай порассуждаем. Вот процессор, у него есть набор регистров и некоторый объем ОЗУ с прямым доступам к адресам. У процессора есть набор прерываний, немного команд вроде mov, add, sub, mul, imul, load, unload, push и pop (поместить значение в ячейку/регистр, сложение, вычитание, умножение, деление, загрузить значение по адресу, записать значение по адресу, ну и положить в стек значение и вытащить из стека значение), есть регистры a, b, c, d например и набор прерываний вызываемых через int. Ну, классический Z80 короче говоря.
Как ты реализуешь многозадачность на нем?