В nts сборке при изменении параметров окружения - они меняются реально. Смена chdir поменяет её во всех местах, включая связанные dll.
В ts сборке все эти операции делают вид что меняются и смена того же каталога повлияет только на значение внутренней переменной, которую можно прочитать через getcwd. Но никакой реальной смены окружения не произойдёт.
Тоже самое происходит и со всем остальным - просто изоляция всего окружения и имитация похожего поведения для того, что б один поток в программе не влиял на соседний.