Thanks @luz & @Zheng-Han !
During the "duty" of my application, I do not need any O/S support; I merely need to run machine code (which makes no O/S calls), access small amounts of memory, and and accurately control the output timing of my signals (with no exceptions). Normal "duty" would mostly be 10's of seconds, sometimes 10's of minutes, and occasionally as long as 2 hours nonstop - but always ending with enough time to re-enable interrupts and let the O/S service anything it might want to do, before (hopefully) allowing my code to make a couple of O/S calls to (for example) update some files from the stats accumulated in it's memory.
"End of duty" times would always be many seconds at least. I do not need to keep track of time.
So yeah - while I don't need any O/S for my main purpose; it would be nice to have it available "in between" duty times for other purposes, like displaying stats, doing updates, and so on.
My purpose for "bit bashing PWM" is confidential (sorry!) but suffice-it-to-say, it is non-linear, non-conventional, non-constant, and "human safety critical" - battling other peoples code and hardware to try and get my application to work with existing tools will be too much work and too high safety risk (one unexpected interrupt doing something unusual could have catastrophic consequences). Or in short: I need "real time" for my code, in the old-school genuine meaning of that phrase.
Do you guys believe the O/S would really "crash" like that Marc guy said? Nothing can "crash" when it has no control - I can't figure out if he's smart or stupid, because he says a mix of both things in his answer! (e.g. "nice" is irrelevant, but he seems to know that, and "Waste electricity" is just plain insulting)