Постепенно начали появляться методы, обеспечивающие независимость программирования от устройств конкретной ЭВМ. Были разработаны ОС с разделением времени, которые предоставляли сразу нескольким пользователям возможность взаимодействовать с компьютером в диалоговом (интерактивном) режиме: пользователь печатает запрос компьютеру на своем терминале, компьютер обрабатывает этот запрос с максимально возможной скоростью и выдает (если требуется) ответ на терминал пользователя. Диалоговый режим позволил в значительной степени повысить эффективность процесса разработки и отладки программ, дал возможность пользователю обнаруживать и исправлять ошибки за считанные секунды или минуты вместо того, чтобы ждать, пока будут получены результаты пакетной обработки.
ОС третьего поколения (70-е годы) были многорежимными. Некоторые из них обеспечивали работу сразу во всех известных режимах:
• в режиме пакетной обработки;
• в режиме разделения времени;
• в режиме реального времени и мультипроцессорном режиме.
Названные системы были громоздкими и дорогостоящими; кроме того, они значительно усложняли процедуру использо-
вания ЭВМ, так как пользователю, для того, чтобы заставить такую ОС выполнять простейшие действия, необходимо было изучать сложнейшие языки управления заданиями, чтобы описать задание и требуемые для него ресурсы.
К началу 80-х годов проблема совместимости различных компьютерных систем стала одной из серьезных проблем, которую можно было решить с помощью нового подхода к построению операционных систем. Основу системы должно было составлять микроядро (microkernel), написанное специально для данного процессора.