[NTLK] Geek Question: TTask and TUTask
Matthias Melcher
mm at matthiasm.com
Wed Feb 18 17:53:11 EST 2015
Hi guys,
My simulation is stuck at task switching. Newton OS uses cooperative task switching. In order to get rid of limitations in the simulation during a DataAbort error, I need to implement task switching and make that transparent to the simulator.
I found a great cross-platform library that implements cooperative multitasking in user mode, just the way I need: GNU Pth. I know where exactly the task switching is happening within the ROM code, and I understand very well by now how this is used to implement faulty memory access and how it's fixed and used to the systems advantage (what a clever system!).
I know that everything revolves around the TTask class which is relatively easy to understand. What I don;t understand yet is the TUTask class.
Why did the engineers create TTask and TUTask?
TUTask ist not derived from TTask as I would have expected. It seems to be a more lightweight task system on top of the regular system tasks TTask. But does that mean that all TUTasks are running within the same TTask? Is that what a TUTaskWorld is?
Geee, I wish we had the complete documentation. Oh, wait, I wish weh had the full documented source code ;-)
Thanks,
Matthias
More information about the NewtonTalk
mailing list