Smartphone Operating System (779883), страница 4
Текст из файла (страница 4)
Called BESYS, thisoperating system was implemented by Bell Labs to handle the executionof many short programs, queued up so that the operators did not haveto load each program just prior to its execution. BESYS shared CPUtime between several jobs at once, thus making it the first multitaskingoperating system.Operating system research and implementation moved very fast in the1960s.
Two influential examples were OS/360, released by IBM in 1964,and MULTICS, released by Bell Labs, MIT and General Electric in 1965.OS/360 was influential because it combined a powerful commandlanguage with the ability to run many jobs at once. The commandlanguage controlled job execution and specified how each job wasto access resources. In addition, OS/360 worked on various computermodels; it became the standard among batch processors.MULTICS was influential because it took a very different approach fromOS/360: it allowed users to use the operating system directly. It had aunique structure – using a central core of software called a ‘kernel’ – andallowed users to extend the operating system through software basedon the kernel.
Based on the foundational ideas introduced in MULTICS,Unix was invented at Bell Labs by a man named Ken Thompson in 1972.Thompson teamed with Dennis Ritchie, the author of a programminglanguage called ‘C’, to produce the source code of the Unix operatingsystem in that language. Unix was distributed almost free of charge and,in the 1970s, it spread to many platforms.Since the spread of Unix, there have been many developments in operating systems.
One of the biggest was brought about by a development incomputers: the personal computer. The ideas invented by MULTICS andhoned by Unix were streamlined to fit into a personal computer with theintroduction of MS-DOS in 1981. MS-DOS ran on an IBM PC using theIntel 8088 chipset. Its first version was indeed primitive, but as hardwareresources were improved upon and faster processors with more memoryHISTORY OF OPERATING SYSTEMS9were packaged as desktop computers, MS-DOS evolved into MicrosoftWindows and has taken on many of the foundational concepts embeddedin Unix.As we look at the evolution of operating systems, it is interesting to seethe progression of computer resources that also evolved:• computers started by running one task at a time and have progressedto running many tasks at the same time• storage hardware has evolved from needing a large physical size foronly 100 KB of data to packing 100 GB into a matchbox-sized disk• electronic storage has made access much faster• memory has progressed from only a few kilobytes to many gigabytes;even handheld and mobile phone platforms sport 128 MB (and larger)memories• communication has gone from none to a large collection of possibilities: wired and wireless, serial and parallel, radio and infrared.Operating systems have developed to take advantage of all of theseaspects of computer hardware.Symbian OSHandheld devices were developed in the late 1980s as a way to capturethe usefulness of a desktop device in a smaller, more mobile package.Although the first attempts at a handheld computer (for example, the AppleNewton) were not met with much excitement, the handheld computersdeveloped in the mid-1990s were better tailored to the user and the waythat they used computers ‘on the go’.
By the turn of the 21st century,handheld computers had evolved into smartphones – a combination ofcomputer technology and mobile phone technology. Symbian OS wasdeveloped specifically to run on the smartphone platform.The heritage of Symbian OS begins with some of the first handhelddevices. The operating system began its existence in 1988 as SIBO (anacronym for ‘16-bit organizer’).
SIBO ran on computers developed byPsion Computers, which developed the operating system to run on smallfootprint devices. The first computer to use SIBO, the MC laptop machine,died when it was barely out of the gate, but several successful computermodels followed the MC. In 1991, Psion produced the Series 3: a small10INTRODUCTION TO MOBILE PHONE SYSTEMScomputer with a half-VGA-sized screen that could fit into a pocket.
TheSeries 3 was followed by the Series 3c in 1996, with additional infraredcapability; the Sienna in 1996, which used a smaller screen and hadmore of an ‘organizer’ feel; and the Series 3mx in 1998, with a fasterprocessor. Each of these SIBO machines was a great success, primarilyfor three reasons: SIBO had good power management, included light andeffective applications, and interoperated easily with other computers,including PCs and other handheld devices.
SIBO was also accessibleto developers: programming was based in C, had an object-orienteddesign and employed application engines, a signature part of SymbianOS development. This engine approach was a powerful feature of SIBO;it made it possible to standardize an API and to use object abstractionto remove the need for the application programmer to worry about dataformats.In the mid-1990s, Psion started work on a new operating system.This was to be a 32-bit system that supported pointing devices ona touch screen, used multimedia, was more communication-rich, wasmore object-oriented, and was portable to different architectures anddevice designs.
The result of Psion’s effort was the introduction of EPOCRelease 1. Psion built on its experience with SIBO and produced acompletely new operating system. It started with many of the foundationalfeatures that set SIBO apart and built up from there.EPOC was programmed in C++ and was designed to be objectoriented from the beginning.
It used the engine approach pioneeredby SIBO and expanded this design idea into a series of servers thatcoordinated access to system services and peripheral devices. EPOCexpanded the communication possibilities, opened up the operatingsystem to multimedia, introduced new platforms for interface items suchas touch screens, and generalized the hardware interface. EPOC wasfurther developed into two more releases: EPOC Release 3 (ER3) andEPOC Release 5 (ER5).
These ran on new platforms such as the PsionSeries 5 and Series 7 computers.As EPOC was being developed, Psion was also looking to emphasizethe ways that its operating system could be adapted to other hardwareplatforms. From mobile phones to Internet appliances, many devicescould work well with EPOC. The most exciting opportunities were inthe mobile phone business, where manufacturers were already searchingfor a new, advanced, extensible and standard operating system for itsnext generation of devices. To take advantage of these opportunities,Psion and the leaders in the mobile phone industry – for example, Nokia,COMPUTER SYSTEMS AND THEIR OPERATING SYSTEMS11Ericsson, Motorola and Matsushita (Panasonic) – formed a joint venture,called Symbian, which was to take ownership of and further develop theEPOC operating system core, now called Symbian OS.Symbian OS was explicitly targeted at several generalized platforms.It was flexible enough to meet the industry’s requirements for developing a variety of advanced mobile devices and phones, while allowingmanufacturers the opportunity to differentiate their products.
It was alsodecided that Symbian OS would actively adopt current, state-of-the-artkey technologies as they became available. This decision reinforced thedesign choices of object orientation and a client–server architecture.1.3 Computer Systems and their Operating SystemsIn addition to following computers and their history, a different way toappreciate the relationship between operating systems and hardware isto look at them from a system perspective. Each type of computer systemhas an operating system that was designed for it – to take advantage of itsunique features.Mainframe SystemsMainframe systems are characterized by a large central computer witha large number and wide variety of possible peripherals.
These typesof computers were the first to be used to run scientific and commercialapplications.Initially, mainframe systems needed to run only a single program ata time. The operating system would accept jobs – packages consistingof control commands, program code and data. The control commandsdictated how to compile the program, how much memory it would take,what other resources would be used, etc. Operating systems for thesetypes of computers could be quite simple. An operating system needed toread in the job, use the control commands to configure how the programwould be loaded up and executed, and manage the program’s accessto resources and data.
When a program executed, the operating systemwould remain in memory, tucked away in its own section. The BESYSoperating system was created in this environment.Mainframe systems became more complex for two reasons. First,running multiple jobs in sequence became desirable. A sequence ofjobs – called a batch – would be sorted into groups based on what12INTRODUCTION TO MOBILE PHONE SYSTEMSresources would be used.
Often, using a resource required that theresource be on and configured in a certain way. Secondly, disk technologydeveloped to the point where jobs could be placed on a disk driverather than recorded on punched cards. This was a great step forward,because mistakes were easier to correct, and jobs could be submitted andprocessed more rapidly. Once disk access was available, an operatingsystem could sort the jobs and choose which was most appropriate to runat a given time. This type of job scheduling allowed more efficient useof computer resources in addition to faster turnaround time for programexecution.In this kind of environment, idle time becomes an issue. There wasa large difference between the speed of the CPU processor and theI/O speed of each device connected to the computer.