Я создаю много простых программ, которые не нуждаются в какой-либо памяти, но они всегда показывают около 1 МБ-1,6 МБ памяти в столбце частной памяти в диспетчере задач.
Я прочитал, что размер стека по умолчанию составляет 1 МБ для связи с link.exe, я попытался поиграть с / STACK следующим образом:
/STACK:65536 (64kb)
/STACK:16777216 (16mb)
когда я запускаю программу, память совсем не изменилась ..
Даже такая простая программа, как 1.6MB, скомпилированная как 64-битная с link.exe и без libs (simple.c):
#include <stdio.h>
int main() {
puts("hello world\n");
getchar();
return 0;
}
Может кто-нибудь сказать мне, как я могу уменьшить память на простых программах? я знаю, что 1 МБ не так много, но мне очень любопытно, так как есть некоторые процессы Windows, которые показывают очень мало памяти в Taskman, например smss.exe использует 0,4 МБ личной памяти с 2 потоками.
Спасибо!