LINUX.ORG.RU

История изменений

Исправление www_linux_org_ru, (текущая версия) :

Так push(10005000) откатит стек на 10005000 (> 1024 * 1024) uint-ов и запишет (куда-то) 10005000 (то есть SIGSEGV)

а с каких это пор «железный стек» сам че-то проверяет и не допускает SIGSEGV ?!

нет уж, «софтовый стек» для benchmark-а должен работать так же

отмечу, что я тестил «софтовый стек» на основе кода drBatty, где malloc реализован мной через push *с проверкой* и pop — у меня получилось небльшая разница (в пределах 10%, gcc -O2)

то, что написал drBatty, это тест, *совершенно* не относящийся к вопросу «железный стек vs. софтовый стек», и поэтому даже модифицированную его версию я постить НЕ БУДУ, чтобы не уводить разговор в сторону

Исходная версия www_linux_org_ru, :

Так push(10005000) откатит стек на 10005000 (> 1024 * 1024) uint-ов и запишет (куда-то) 10005000 (то есть SIGSEGV)

а с каких это пор «железный стек» проверяет на SIGSEGV ?!

нет уж, «софтовый стек» для benchmark-а должен работать так же

отмечу, что я тестил «софтовый стек» на основе кода drBatty, где malloc реализован мной через push *с проверкой* и pop — у меня получилось небльшая разница (в пределах 10%, gcc -O2)

то, что написал drBatty, это тест, *совершенно* не относящийся к вопросу «железный стек vs. софтовый стек», и поэтому даже модифицированную его версию я постить НЕ БУДУ, чтобы не уводить разговор в сторону