On 20-3-2012 19:59, Kip Warner wrote:
On Tue, 2012-03-20 at 16:57 +0200, Khaled Hosny wrote:
Older TeX engines had hard memory limit, so in case of such
"syntactical" errors the engine would consume all its allocated memory
and die (with a misleading error message), LuaTeX dynamically allocates
memory (for good reasons) so it won't stop before consuming all your
available memory, its the responsibility of an operating system to
prevent such a faulty application from taking the whole system down.

I'd be very interested in seeing the operating system memory manager's
algorithm that could do such a remarkable thing.

well you can try what happens if you run stock lua:

local t = { }
while true do
    t[#t+1] = "just a bogus string: " .. (#t+1)
end

at some point your system will run out of (virtual) memory or lua will run out of whatever its limits are

Hans


-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
    tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------

Reply via email to