Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!oliveb!amiga!boing!dale From: dale@boing.UUCP (Dale Luck) Newsgroups: comp.windows.x Subject: Re: Contents of windows Message-ID: <730@boing.UUCP> Date: 3 May 89 17:57:16 GMT References: <4009@ficc.uu.net> <8904281155.AA02450@expire.lcs.mit.edu> <723@boing.UUCP> <8079@phoenix.Princeton.EDU> Reply-To: dale@boing.UUCP (Dale Luck) Distribution: na Organization: Boing, Milpitas, Ca. Lines: 55 In article <8079@phoenix.Princeton.EDU> mbkennel@phoenix.Princeton.EDU (Matthew B. Kennel) writes: >In article <723@boing.UUCP> dale@boing.UUCP (Dale Luck) writes: > >Correct me if I'm wrong, but I have heard that the Amiga only allocates >nonrelocatable blocks of memory. Without the use of hardware memory >mapping (does it do that?) You are correct here. That there is no hardware mapping. Being that there is no hardware mapping though, we take advantage of the fact that any hunk of memory that needs to be allocated to a process is only as big as it needs to be. This avoids internal fragmentation which is a problem in memory mapped systems. If a process needs to allocate 40 bytes for a Pixmap structure we don't need to allocate a 1k page for 40 bytes. I would guess that frequent changes of the >windows combined with many allocates/deallocates would result in memory >fragmentation that would cause memory requests to fail (needed for >backing store etc.) even when there is enough actual memory left. (But not >contiguously) This is true on memory mapped systems as well. Except that all allocations from the global memory pool are the size of a page. Much of this depends on how close to the edge you are living. If there is normally 256k free then the deallocations are normally balanced with the allocations. The basic structures don't change that describe the topology, usually it is just different windows that get them and other windows that loose them. The Amiga also has two types of memory. Graphics memory (accessable by the blitter and processor) and expansion memory(accessable only by the processor). So only the actual bitmaps are placed in 'graphics memory' whereas the structures the define them and control the operation of the processor are stashed in another memory pool. It's really hard to believe that 512k would hold up long >for server, clients, and display in this situtation. The server exists in ROM. The display takes up about 32k-64k. Clients are about 2k-100k. We are talking Amigados now, not X-windows. The amiga has shared libraries like floating point, graphics, toolkit wm(Intuition), and much of the support functions are found in shared libraries. I guess you can start believing now, software technology moves on. Maybe you should check an Amiga out sometime to see what it actually offers. > >Matt Kennel >mbkennel@phoenix.princeton.edu -- Dale Luck GfxBase/Boing, Inc. {uunet!cbmvax|pyramid}!amiga!boing!dale