Сегодня ПК имеют большой объем физической памяти, но все же размер стека С# составляет всего 1 МБ для 32-битных процессов и 4 МБ для 64-битных процессов (Стековая емкость в С#).
Почему размер стека в CLR все еще так ограничен?
И почему именно 1 МБ (4 МБ) (а не 2 МБ или 512 КБ)? Почему было решено использовать эти суммы?
Меня интересуют соображения и причины этого решения.