A small footprint device can securely run multiple programs from unrelated
vendors by the inclusion of a context barrier isolating the execution of
the programs. The context barrier performs security checks to see that
principal and object are within the same namespace or memory space and to
see that a requested action is appropriate for an object to be operated
upon. Each program or set of programs runs in a separate context. Access
from one program to another program across the context barrier can be
achieved under controlled circumstances by using an entry point object.
The entry point object can either perform accesses across the context
barrier on behalf of a requesting program or can pass the request to the
program to be accessed and switch contexts to the program to be accessed.