Xref: utzoo comp.sys.isis:566 comp.lang.modula3:262 Newsgroups: comp.sys.isis,comp.lang.modula3 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!batcomputer!cornell!ken From: ken@CS.Cornell.EDU (Ken Birman) Subject: Re: Modula-3 and Isis, memory smashes Message-ID: <1991May26.023715.8748@cs.cornell.edu> Keywords: Modula-3 Isis Sender: news@cs.cornell.edu (USENET news user) Nntp-Posting-Host: turing2.cs.cornell.edu Organization: Cornell Univ. CS Dept, Ithaca NY 14853 References: <1991May14.115813.1349@cl.cam.ac.uk> Date: Sun, 26 May 1991 02:37:15 GMT Lines: 21 In article <1991May14.115813.1349@cl.cam.ac.uk> smgf@cl.cam.ac.uk (Steve Freeman) writes: > ... memory smash after O(hundreds of messages) ... I talked to some people at DEC SRC and the problem is likely to be in the way that M3 garbage collects. To make a long story short, you need to get ISIS to use the M3 tasking primitives. Although ISIS may seem to work when its own threads are combined with the M3 scheme, M3 won't know that ISIS has pointers to your dynamically allocated M3 objects on its stacks and hence may not relocate things correctly. On the other hand, you should NOT change ISIS to use the M3 allocator instead of malloc. The SRC M3 people can help you do the mapping (in cl_task.h, .c) if you have problems. See the CTHREADS example... -- Kenneth P. Birman E-mail: ken@cs.cornell.edu 4105 Upson Hall, Dept. of Computer Science TEL: 607 255-9199 (office) Cornell University Ithaca, NY 14853 (USA) FAX: 607 255-4428