Я читал много о фиксации заряда и что - то все еще давало мне покоя. На моем mac (и, вероятно, на linux), какова связь между размером виртуальной машины и коммитом памяти (windows). Я думаю, что я полностью понимаю commit после некоторого тестирования, но в Windows не кажется, что объем виртуальной памяти когда-либо превышает пространство подкачки + оперативная память. В OSX (и Linux) размер виртуальной машины почти превышает размер моего жесткого диска! Я предполагаю, что он либо включает общую память более одного раза, либо включает выделенную, но нетронутую или записанную в память. Допустим, я делаю malloc (2 ГБ) (очевидно, не так), отличается от фактической записи всего 2 ГБ.
Таким образом, это подводит меня к моему вопросу, что именно измеряет размер виртуальной машины в OSX и Linux. Это, например, сумма всех вызовов malloc (или общего количества возможных виртуальных машин, включая практически 4 ГБ для каждого процесса на 64-битной машине), и как это соотносится с Commit (limit, peak, use) в Windows? Разве Windows не позволяет вам выделять больше, чем ваш предел swap + ram, как OSX и Linux и почему?
На изображениях ниже вы можете видеть, что в windows swap + ram равно commit (2gb). В OSX размер моей виртуальной машины составляет более 200 ГБ на жестком диске около 200 ГБ.