The Symbian OS (779886), страница 11
Текст из файла (страница 11)
It was a multitasking operating system with asynchronousservices. Colly Myers was the architect and we decided to make our systempre-emptive multitasking.While these ideas began to influence the Organiser operating systems,they became central to the design of the next iteration 16-bit system. Thiswas the operating system which eventually made its way into the Series3, from its first iteration for the MC400 laptop.Charles Davies:The strong drivers were firstly, ‘always on’, in other words, no bootup – the ideathat the operating system ran forever – and, secondly, that you could switchfrom one application to another without waiting, which was the multitasking.One of the early design principles was that we started to play with servers andthat was a direct VMS influence.
So if you have a multitasking operating systemand if applications are executables in that operating system, then the numberof applications is extensible and you can switch between those applicationswithout exiting the current application. We take multitasking for granted now,but DOS PCs at that time were single tasking, you ran an application and youhad to exit it to run another application. Remember TSRs, Terminate And StayResident programs which allowed you to switch in and out? We thought thatwas crazy! We thought the main system should be like that.OPERATING SYSTEM INFLUENCES39The VMS influence was sufficiently visible in the final system to benoticeable, for those who cared to look. Peter Jackson had worked withVMS while at BP Exploration and recognized the influence even in thefirst iteration 8-bit Organiser system.
He quickly became a Psion fan.Peter Jackson:I was attracted to Psion in the first place because I got hold of the internaldocumentation for the Organiser. This was the 8-bit operating system andI read the documentation and thought, ‘That looks familiar. This has beeninfluenced by VMS’. And I also thought, ‘This is very clever. This is a companythat could be worth paying attention to’.The Organiser operating system displayed many of the properties ofconsistent and elegant design that Jackson had admired in VMS and hadfound wanting in other systems, for example Unix.Peter Jackson:I would characterize Unix as being something that wasn’t really designed, itevolved. So, by contrast, VMS was a system that was much more carefullydesigned from the beginning and it was carefully designed in parallel with theemergence of the VAX hardware architecture.
So when you look at the designof VMS, it’s quite rigorous in terms of API definition and quite consistent interms of patterns of use of those APIs. For example, typically in VMS all APIsare asynchronous and they all have ways of monitoring the outcome of arequest made to the operating system or to the I/O system and so on. So onceyou’ve learnt a corner of the VMS system and you want to explore anothercorner of it, you don’t have to climb the same learning curve all over again.And that level of consistency applies all the way up to the command interface.By the time Psion produced its first 16-bit systems, the key VMSinspired patterns were well entrenched.Peter Jackson:It was harder to get into the 16-bit system, but there was still that consistencyand elegance in how they had implemented things and I would say that theattention being paid to asynchronous interfaces was a good example of that.The whole event-driven programming model was very strong in Psion in thosedays.Jackson attributes those patterns not just to VMS, but also to a moregeneral mainframe influence.
While the hobbyist culture typified by40THE HISTORY AND PREHISTORY OF SYMBIAN OSCPM and early DOS gravitated upwards from micros to PCs, the moresophisticated professional programming culture of multiple-peripheral,multiuser, ‘big-iron’ computing began to drift down towards smallersystems, first to minis (including VAX, as well as the PDP family on whichUnix first evolved), micros and then PCs, but also to new classes of devicesuch as those being pioneered by Psion.Peter Jackson:On mainframes and mini-computers, such as VAXs, where everything is eventdriven, you don’t put in a synchronous I/O request.
You don’t say ‘write thisdata to disk’ and have the call return when the write is completed. You issuean instruction to write data to the disk and you get on with the rest of your lifeand at some point you’ll get notified that the write is actually complete.The asynchronous, server-based model has evolved to be one of theprimary patterns in Symbian OS. Servers provide for serialized access toshared resources and are used throughout the system, wherever multipleusers (client programs, including other system services) require accessto a system resource, whether a logical resource such as a process or aphysical resource such as the physical device screen (or screens).For Jackson, the visible influence of VMS on the Psion operating systemseemed to present a perfect opportunity.Peter Jackson:People who learned how to program on PCs, specifically on DOS, came froma different culture where that asynchronous, event-driven model did not hold.There were people that knew about event-driven programming and there werepeople that didn’t.
So I had this vision that said, all my mainframe expertisenow applies here, I understand stuff that these PC programmers aren’t at allfamiliar with. And the way I saw it then, when I was coming into the company,is that there’s a whole set of software idioms to do with mainframe computing,and the way technology was evolving meant that you could now apply thoseidioms to smaller and smaller devices.
And I was able to capitalize on myknowledge of mainframe software architecture.The 16-bit system was a classic C API operating system, exposing asmall number of system calls as C functions. Higher up in the system,object-oriented ideas had been widely applied. Initially, the operatingsystem appeared in the new laptop-like product. Jackson recalls it withthe enthusiasm of a convert. The MC400 in his view was way ahead ofits time in terms of its hardware design, a perfect match for an operatingsystem which was also distinctive and innovative.OPERATING SYSTEM INFLUENCES41Peter Jackson:It was a really nice machine.
It looked like a laptop computer, only slightlythicker than laptops are today, but on almost every face of this thing, everyway you turned it you’d find an interface that you could plug something into.It was way ahead of its time. There was a speech synthesizer sound modulethat was quite sophisticated; it had a module that was a built-in modem; it hada superb keyboard and a long battery life.
You could put batteries in it and itwould be good for 90 hours and this was in the era when for laptops, threehours was your limit.Unfortunately, the MC400 didn’t sell, which was a substantial set-backfor the company. However, Psion responded with a complete softwareoverhaul (to reduce ROM size and improve all-round performance) andwith a new hardware product, the Series 3. Significantly, the Series 3played on the company’s core competence in creating and marketingcompelling small systems, which also avoided the DOS (and soon-to-beWindows) mainstream.In software terms, the Series 3 gave Psion a second chance to prove themerits of its new 16-bit operating system.
The most obvious conclusion todraw from its subsequent success seems to be that, while the market wasprepared to embrace a novel design in a new device space, it rejectedinnovation when it conflicted with the incumbent standard, which, in thecase of the laptop-like MC400, was DOS.David Wood also believes that the MC failed because it simply hadtoo many flaws, both hardware and software. It was less a questionof standards than of quality and fitness for purpose.
The digitizer wasawkward to use, for example and the machine would sometimes reset asa result of electrostatic discharge when the user touched the removablemedia door.Whatever the reason, its failure was compensated for by the hugesuccess of the Series 3.Peter Jackson:The Series 3 used the same basic software technology and it was fantasticallysuccessful.
Without the Series 3, none of us would be where we are today. Soit was all to do with packaging, what device the software was packaged in.The architecture of the early Psion operating systems and the patternswhich have evolved from them and in their turn influence Symbian OS,can be traced back to a few key principles.42THE HISTORY AND PREHISTORY OF SYMBIAN OSCharles Davies:If you start with the idea of going from one application to another and havingprocesses and tasks, processes more than tasks in fact, then you say, well thoseprocesses are running concurrently, they’re running all the time, even thoughonly one of them may be on the screen.