What Is Context-Sensitive Generation?
Context-sensitive generation is the ability of the tejacc compiler to generate minimal and optimized system calls based on global context information provided from: Hardware architecture Software architecture Mapping Function parameters User guidelines In the traditional model, the operating system is completely separated from the compiler and the operating system calls are fixed in precompiled libraries. In the tejacc compiler, each system call is generated based on the context. For example, if a shared memory communication channel is declared in the software architecture as having only one producer and one consumer, the tejacc compiler can generate that channel as a mutex-free circular buffer. On a traditional operating system the mutex would have to be included because the usage of the function call was not known when the library was built. See Overview of the Late-Binding API for more information on the Late-Binding API.