"RO is presently a N:1 multi-threaded system, that is all thread are mapped onto a sinlge processor, and the application itself schedules those threads. In most cases, it does so in response to reasoncodes retruned by Wimp_Poll."
Well, there are no threads at all.
"I wonder if the pre-filter mechanism could be used (by the kernel) to prevent blocking. Simtec's Hydra was introduced before prefiltering, I think."
Possibly, but the work is best done centrally. Hydra only worked in RiscPCs, which meant they must have been running RISC OS 3.5 at minimum. Filters were introduced in 3.1 IIRC (and are noticeably absent from 3.0)
"Killermike's suggestion is called "forking" in which the OS creates a new instance of itself and starts a process (application) within that instance, thus giving each application its own OS context."
Forking almost always refers to a process, not the OS. ie, the call fork() makes a copy of the process (copy on write in all modern operating systems), and returns one value to on process, and the PID of the newly spawned process to the other.
Please login before posting a comment. Use the form on the right to do so or create a free account.
Search the archives
Today's featured article
Star Fighter 3000: The Next Generation review Star Fighter 3000: The Next Generation was born from the 3D0 version of the original SF3K that was ported back to RISC OS and this year freed from programmers' hard discs for the platform to enjoy, writes Andrew Weston. In this review Andrew weighs up much-improved graphics and sound against playability and stability. 19 comments, latest by AW on 9/12/08 8:45PM. Published: 17 Nov 2008