To clarify Ray Arachelian's comments:
>> It did have memory protection and virtual memory via the MMU. I believe
>> that the multitasking wasn't pre-emptive due to LisaGraf being
>> non-reentrant, but I'm not 100% sure. (LisaGraf became QuickDraw on the
>> Mac.)
I believe Lisa's graphics library (QuickDraw) was re-entrant and that this library did not cause the Lisa to have non-pre-emptive process scheduling. All of the Lisa's libraries were re-entrant.
All Lisa applications had their own copy of the QuickDraw global parameters in what was called something like the APPLICATION PROGRAM AREA. As such, every Lisa application used dedicated memory for the global variables which QuickDraw used to maintain its environment.
The original Mac QuickDraw though contained only a single copy of the QuickDraw global variables. These were stored near the beginning of the Mac address space with all the other Mac toolbox library global variables. This was done on the Mac since 1) it originally had a small amount of memory (128KB in 1984, 512KB in 1985) and 2) the Mac originally ran just a single application at a time (even the Mac Finder was swapped out when an application ran since the Mac with 128KB of memory really had around 90KB at most available for application use).
Also, QuickDraw was the public name of this library on the Lisa, not LisaGraf. Its original name was LisaGraf during its development but that was changed before the Lisa was released in 1983. Note that the Mac for a short time called this library MacGraf (at least in 1982), I have a QuickDraw manual from that year which says this.
For a great discussion of QuickDraw's history see Dough McKenna's QUICKDRAW ENTOMOLOGY paper which connects QuickDraw to Jef Raskin (Mac's first project lead) and Bill Atkinson (QuickDraw programmer) and Raskin's 1967 thesis about computer graphics which Raskin called QuickDraw. I have a copy of this history I can email to whoever wants a copy.
--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "LisaList" group. To post to this group, send email to lisalist_at_email.domain.hidden To unsubscribe from this group, send email to lisalist-unsubscribe_at_email.domain.hidden For more options, visit this group at http://groups.google.com/group/lisalist?hl=en -~----------~----~----~----~------~----~------~--~--- Received on 2006-12-20 07:11:17
This archive was generated by hypermail 2.4.0 : 2020-01-13 12:15:20 EST