[mkc2008] Thread Creation, Destruction and Synchronization - side effects of task destruction
s3306700 at mail.inf.tu-dresden.de
Sun Apr 5 22:15:14 CEST 2009
What happens to mappings created by a (thread of a) task that is
destroyed? Intuitively I'd say they continue to exist and in the mapping
data base the "parent task inherits the mappings". That sounds a bit
awkward, so I'll try a picture:
A --> B ---> C
Some thread in task A established a mapping (of some page) to task B.
Task B did map that page to tasks C and D afterwards. Now we destroy
task B. Does the MDB look like this afterwards?
A ---> C
On slide 32, as a solution to the problem of trying to access an invalid
thread lock, there's the approach to "Check [the] validity of [any]
thread lock before every try [to acquire it]". How is this done? How can
the validity of a lock be checked without actually touching it in memory?
BTW: There's a typo on the very first slide ;-)
More information about the mkc2008