>On Sun, May 29, 2005 at 04:33:34PM +0200, Christian Schoenebeck wrote: > >> But whatabout the stack? Even if you try to use the heap for local variables > >> as well, you (usually) won't be able to prevent usage of the stack due to AB >I >> definitions; e.g. on most platforms function arguments will be delivered >> through the stack. So what can you do to prevent physical pages to be >> allocated for the stack at RT critical time? Because this would lead to the >> same problems as calling malloc(), new and co. > >True, arguments (and local variables) live on the stack, but normally >they should not take too much space. The thing to avoid is functions >that have large local arrays or objects, and this is almost always >possible.
alternatively, allocate a huge stack based object early in the thread's life (preferably before RT-ness matters). if mlockall() has been called, any pages allocated to the stack will remain locked in physical RAM. problem solved. --p
