On 7/10/2011 11:07 AM, Martin Gregorie wrote:
On Sun, 10 Jul 2011 10:53:09 -0400, David Lamb wrote:
On 08/07/2011 12:30 AM, Eric Sosman wrote:
On 7/7/2011 8:51 PM, Peter Duniho wrote:
[...]
I would not worry about the "simple" or "efficient" criteria.
IMHO, if one is deciding to apply overflow checking to every
computation, one has already abandoned the hope of efficiency.
I've used machines that raised overflow traps "for free,"
...
(The machines I speak of were from forty-odd years ago
When microprocessors started to arrive on the scene, a lot of
old-timey hardware folks said they'd forgotten 30+ years of hardware
design. When operating systems for computers based on said
processors came out, a lot of old-timey software folks said they'd
forgotten 30+ years of operating system design. We seem to still be
suffering the consequences.
That happened not once, but twice.
The first great leap backward was the minicomputer era, when the
likes of the PDP-8 arrived with a single user, single tasking OS
reminiscent of early computers, except they generally had teletypes
instead of banks of switches and flashing lights. By then the better
mainframes were multi- user, multitasking beasts.
Then the first microcomputers arrived in the mid/late '70s. By this
time the better minis had multi-tasking operating systems, but micros
had re- implemented the earliest mini OSes - CP/M was near as dammit
a copy of the old PDP-8 OS (RSTS?) from the late 60s - and the
earliest micros even had switches and flashing lights (KIM-1, IMSAI
8080). By 1980 the minis were running UNIX but the latest and
greatest micros had - drumroll - MS- DOS!
Only twice? Aren't you forgetting "smart" phones. One of the great
advances in Android is (Drum roll!) multitasking!!!
They don't count since, unlike minis and micros, their builders didn't
retreat to the techno-stone age, ignore progress made to date, and
build primitive OS by rubbing (metaphorical) sticks together.
AFAIK all smartphones started an a more advanced level because they
inherited better operating systems. IIRC these all originated on
electronic memo pads such as Psion, HP and Palm Pilot made, and were
all a lot more advanced than the likes of RSTS, CP/M, Flex09, etc.
Leastwise, I don't think you can consider Symbian and whatever MS was
calling the iPAQ OS at that stage any more primitive than the
contemporary versions of MacOS, OS/2 or even Windows, though admittedly
they were rather behind UNIX and its distant relations such as
OS-9/68K.
If they don't support multi-tasking I would say that they in at least
one aspect is behind the desktop OS'es.
Well, the OSen I quoted RSTS, CP/M, Flex09 and contemporaries on small
minicomputers and early microcomputers, are all single tasking, and all
had worse display handling than the smartphone OSen, because they all
were basically green screen 24x80 systems.
In my mind the improved graphical interfaces of the early smartphones
(and even on the Palm Pilots) puts the latter ahead on points, and if any
are multitasking then they're streets ahead.
IIRC first small and cheap multitasking OSes were:
- Microware's OS/9 in 1981, so precedes even the PC/DOS incarnation
of MS/DOS and would support multiple users on a 64K 6809 box
- TSC's uniFlex also ran on SWTPc 6809 boxes. Similar capability to OS/9
but not nearly as flexible or portable as OS/9
- SCO UNIX was also running on 8086 hardware around the same time -
multi-user operation on around 128 KB RAM I think
All of these appeared around the same time and all supported simultaneous
multiple users with 24x80 green screens terminals such as VT100,
Hazeltine, Beehive, etc. I think Wyse were later but I could be wrong.
(how important multitasking is on a smartphone is a different
discussion)
Agreed: apart from anything else you'd have problems using more than one
interactive app at a time on those tiny screens. In fact those early
smart phones had to have some rudimentary multitasking ability, at least
equivalent to what the early Macs could do, or the phone couldn't accept
an incoming call if its owner was using an app.
Palm Pilots were and are extremely useful despite having no multitasking
ability whatever.