From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,af0c6ea85f3ed92d X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.68.235.4 with SMTP id ui4mr397371pbc.3.1331204493497; Thu, 08 Mar 2012 03:01:33 -0800 (PST) Path: h9ni2129pbe.0!nntp.google.com!news1.google.com!news3.google.com!proxad.net!feeder1-2.proxad.net!weretis.net!feeder4.news.weretis.net!eternal-september.org!feeder.eternal-september.org!mx04.eternal-september.org!.POSTED!not-for-mail From: Brian Drummond Newsgroups: comp.lang.ada Subject: Re: Arbitrary Sandbox Date: Thu, 8 Mar 2012 11:01:33 +0000 (UTC) Organization: A noiseless patient Spider Message-ID: References: Mime-Version: 1.0 Injection-Date: Thu, 8 Mar 2012 11:01:33 +0000 (UTC) Injection-Info: mx04.eternal-september.org; posting-host="DkTdSjxOCm6DqG+Uf7eArg"; logging-data="9025"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/km6oMj3HdgvrbI9vGTO1EHaDKajri4iY=" User-Agent: Pan/0.134 (Wait for Me; GIT cb32159 master) Cancel-Lock: sha1:6OXTA73KrcI6i5B9IVIam7jpWbc= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Date: 2012-03-08T11:01:33+00:00 List-Id: On Wed, 07 Mar 2012 19:50:03 -0500, Robert A Duff wrote: > > I agree that a 48-bit offset is big enough. I don't agree that a 16-bit > segment number is big enough. OK, so maybe split 24/40 instead of > 16/48? Still not enough segments. That's the problem -- however you > split those 64 bits, you have not enough segments or not big enough > segments, or both. OK, divide the object space further. Reserving one bit of the object number as a tag to distinguish between object types, 2^30 small objects (32-bit offset) and 2^15 large (48-bit offset) objects is probably enough. Using more bits in the tag can distinguish more object types : perhaps allocated from different storage pools either for common sizes or different lifetimes (or remote objects). Reserve one tag value for "compact objects" (well, the architect was an astronomer!) where the type and value are encoded into the object number. Ancient history: http://en.wikipedia.org/wiki/Rekursiv Object numbers there were just 40 bits; 64 gives much more room. (I had not realised someone re-engineered it in 1992!) alexandria.tue.nl/extra1/afstversl/E/374655.pdf - Brian