Для каждого сеанса ДОС создается своя виртуальная машина, управление же виртуальными машинами осуществляет менеджер вирт. машин (VMM), который работает на нулевом уровне привилегий в плоской модели памяти. Может быть у VMM есть какие-то сервисы для сеансов ДОС, ну вообщем-то тебе нужно написать виртуальный драйвер, который может работать с сеансами ДОС через старшие линейные адреса на которые отображена физическая память сеансов ДОС, а затем из проги пользовательского режима обращаться к своему драйверу. Вообщем-то делов на неделю?