Xref: utzoo comp.sys.ibm.pc:28480 comp.sys.amiga:33473 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!bloom-beacon!mit-eddie!killer!elg From: elg@killer.Dallas.TX.US (Eric Green) Newsgroups: comp.sys.ibm.pc,comp.sys.amiga Subject: Re: OS/2 vs AmigaDOS Message-ID: <8050@killer.Dallas.TX.US> Date: 9 May 89 01:03:17 GMT References: <5664@microsoft.UUCP> Organization: The Unix(R) Connection, Dallas, Texas Lines: 45 in article <5664@microsoft.UUCP>, t-stephp@microsoft.UUCP (Stephen Poole) says: > I am certainly no big Windows fan and am not defending it. You, however, > completely missed the point. Windows is a more intelligent OS in that it > demand loads code and resources. In terms of memory management in general > it certainly qualifies as a second-generation PC operating system, > regardless of other problems it may have. Overlays on the Amiga are a > laughable substitute for VM or demand loading. From the Manx "C" documentation: " +O[_I_] option: The linker now handles segmentation (overlay) using this option. THe executable code in the object modules that follow will be placed in code sgement _i_. If _i_ is not specified, use the first empty segment number. If the segment already exists, append the code to its end. When segments are used, the linker generates a reference to the symbol .segload which is defined in a library module, _segload.o_. This module MUST be in the root segment for the program to function properly. The module is also available directly in the _lib_ directory. "Segments are loaded into memory as needed and remain in memory until explicitly removed by the program. The program does this by calling the _freeseg()_ routine with the address of a function which is in the segment to be unloaded. "For more information, see the new Code Segmentation section of the Technical Information Chaptor." So, Mr. Microsloth, does this sound a lot like what Windows is doing? I don't know if AmigaDOS itself supports segmentation of this sort, but Manx "C" certainly does, and for quite a while Manx was the choice of the developer community (until Lattice came out with 5.0... I don't know if 5.0 has a similar functionality, not having used Lattice). Amiga programmers haven't generally used this capability, probably because most Amiga programs run quite well in 1 meg of RAM (the Amiga has not yet spawned the mega-program, although Excellence and its ilk are coming close). In any event, all that's required for this kind of thing is an OS that allocates all data structures and programs dynamically, the OS doesn't necessarily have to directly support it. -- | // Eric Lee Green P.O. Box 92191, Lafayette, LA 70509 | | // ..!{ames,decwrl,mit-eddie,osu-cis}!killer!elg (318)989-9849 | | // Join the Church of HAL, and worship at the altar of all computers | |\X/ with three-letter names (e.g. IBM and DEC). White lab coats optional.|