Since a process can be run in real-time on Windows, I don't see why the process/threads shouldn't be able to tell the OS how often or when it's allowed to switch out of a thread. i.e., if it's being run in real time, the consideration of a thread not exiting and blocking other apps on the computer is moot, so let the app do its own 'cooperative multitasking'.
also, for a real-time app you should be able to define which cores and cpus your threads and processes execute on. let's say you have four cores. you could make four threads or processes, but there's no guarantee they'll go on the respective cores, or that if they do they'll stay there. if you were running an app in real-time and wanted the greatest parallel efficiency, that wouldn't do.
but i'm not trying to suggest how an operating system should be made, my question is.. Can these things be done in windows?
also, i need to know about doing these in *nix systems.