Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!killer!tness7!tness1!sugar!peter From: peter@sugar.uu.net (Peter da Silva) Newsgroups: comp.sys.amiga.tech Subject: Re: Negative Open Counts (was Re: IEEE libraries) Keywords: open counts Message-ID: <2620@sugar.uu.net> Date: 13 Sep 88 11:00:59 GMT References: <1356@percival.UUCP> <39822@linus.UUCP> Distribution: na Organization: Sugar Land Unix - Houston, TX Lines: 26 In article <39822@linus.UUCP>, eachus@mitre-bedford.ARPA (Robert Eachus) writes: > When a library is opened by a task, if the (open) count is > non-negative, increment it by one. When a library is closed > decrement the count by one. Libraries may only be unloaded > when the count is zero. Not good enough: Task A opens guru.device. Task B opens guru.device. Task B closes guru.device. Task B closes guru.device again. Memory gets low, guru.device is purged. Task A accesses guru.device. GURU MEDITATION 00000004.00C50899 The open count never went negative. The only way to do this right is to track opens on a per-task basis. This requires long-term uniqueness of task ids which the current setup doesn't allow for: that message port might end up being created in the same place as the old one. The best way to implement this would be general resource tracking. 1.5? 2.0? -- Peter da Silva `-_-' peter@sugar.uu.net Have you hugged U your wolf today?