RAM - это RAM. static - это ключевое слово, которое заставляет компилятор что-то сделать. Стек - структура данных. Структура данных - это данные и способ взаимодействия с ними. Например, OS использует стек для размещения программ в памяти, а компилятор использует стек для организации выделения памяти для переменных и вызовов функций.
Зачем используют понятия "статическая память" и "автоматическая" - я не знаю. На мой (возможно, ошибочный взгляд) это лишь порождает запутанность. Особенно, в Си и С++, где анализ static зависит от контекста... В принципе, можно вообще запросить огромный кусок памяти с помощью static и размещать все данные только там. Сделать какой-нибудь указатель, имитирующий SP и размещать данные в таком же стиле, как это делает OS и компилятор.