Article View: comp.sys.powerpc
Article #2290Handles. Was Re: Ask yourself these before you choosing a 32bit OS...
From: Rob Barris
Date: Fri, 22 Sep 1995 00:09
Date: Fri, 22 Sep 1995 00:09
41 lines
2679 bytes
2679 bytes
In article <43qddkINNpti@keats.ugrad.cs.ubc.ca>, c2a192@ugrad.cs.ubc.ca (Kazimir Kylheku) wrote: > I suspect that in the long run it would be easier to fix an application's > allocation pattern, should the need arise, than to force yourself to > complicate _every_ application with nonsense like memory handles and > double dereferencing. > > I think the original Mac designers should have stuck to pixel pushing, > and hired outside help to do the internals. I suspect that the > NIH (Not Invented Here) syndrome had a lot to do with it. I suspect the cost of RAM, and lack of an MMU for the 68000 might have had some influence as well. Recall that an app in those days had 75K of free RAM or so to play with on a 128K machine. The Mac's predecessor, the Lisa had a sort-of MMU - Apple worked around the inability of the original 68000 chip to do true VM (not all instructions were restartable!) by teaching the compilers not to use "bad" instructions, and using some external logic for an MMU mechanism. Not a solution with long legs. One of the key benefits of handles is the way with which they can be used to represent structures of varying size (that is they can grow and shrink- and none of the many references to such an item in data structures, the stack, local variables become invalid when that happens). And you can ask the system how big one is. I can think of a way to do that without actual double indirection, but it chews up an awful lot of address space and requires an MMU. Perhaps you could suggest a better way? You are given a Motorola 68000 motherboard and 512K of RAM. Go. For extra credit, describe how you would go about representing objects of variable-length on a system that does have an MMU. References to said objects are not allowed to become invalid at any time until the object is disposed. Rob Barris Quicksilver Software Inc. rbarris@quicksilver.com * Opinions expressed not necessarily those of my employer *
Technical Details
Message-ID:
<rbarris-2109951707350001@192.168.1.16>Path:
arc1-ca.pugleaf.net!news.intelenet.com!NewsWatcher!userReferences:
<3vh2hc$9dd@falcon.ccs.uwo.ca> <43n5maINNep0@keats.ugrad.cs.ubc.ca> <43nlc8$sll@orion.cybercom.net> <MLM.95Sep20011239@monaco.cs.brown.edu> <43qddkINNpti@keats.ugrad.cs.ubc.ca>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!news.intelenet.com!NewsWatcher!user From: rbarris@quicksilver.com (Rob Barris) Newsgroups: comp.sys.powerpc,comp.os.linux.advocacy,comp.sys.mac.advocacy,comp.os.os2.advocacy,comp.sys.amiga.advocacy,comp.sys.intel,comp.os.ms-windows.advocacy Subject: Handles. Was Re: Ask yourself these before you choosing a 32bit OS... Date: 22 Sep 1995 00:09:58 GMT Organization: Quicksilver Software, Inc. Message-ID: <rbarris-2109951707350001@192.168.1.16> References: <3vh2hc$9dd@falcon.ccs.uwo.ca> <43n5maINNep0@keats.ugrad.cs.ubc.ca> <43nlc8$sll@orion.cybercom.net> <MLM.95Sep20011239@monaco.cs.brown.edu> <43qddkINNpti@keats.ugrad.cs.ubc.ca> NNTP-Posting-Host: 205.162.90.249