Welcome! This is the home of CMEX, the Co-operative Multi-tasking Executive.
"So! . . ." you may ask, "What is a Co-operat. . . (what a mouthful)? . . . What can it do for me?."
If any of the following apply, then CMEX is for you.
- Re-entrancy difficulties working with signal handlers and threads.
- Sychnronization and blocking difficulties co-ordinating the execution of threads and processes.
- Concern about the operating system's overhead with task switching.
- Being overwhelmed by the options and complexity of interprocess communications.
- Wished for a more direct way to map object oriented designs to C code.
Faced with the above, I started thinking: "There must be a simpler way to do this." Instead of attempting to find more elegant solutions to re-entrancy and task switching, I decided to move away from these conventional operating system concepts. "Heretic!" you may shout. "How can you go against conventional wisdom". Heretic I may be, but I have come up with a totally non pre-emptive solution that abstracts all re-entrancy aspects from programmers. The CMEX concept is equally at home as an operating system process or as a kernel running directly on hardware.
CMEX for Linux is made available as "open source", together with documentation.
If you find CMEX useful or are willing to contribute, I am eager to hear from you. Give it a try and let me know what you think. Be sure to visit often as CMEX has a long To Do list, and is continually improving.
Have a look at some of the other Linux and Open Source stuff I do.