Smartphone Operating System (779883), страница 2
Текст из файла (страница 2)
The explanation isreplete with examples and sets the context for the more detailedinformation contained in later chapters.• Chapters 4 to 6 describe the concepts of processes and threads anddefine the ways that these constructs organize a computer system.In addition to definitions, these chapters describe how processes andthreads interact, providing a look at system concurrency. They coverissues involved in scheduling, communication, synchronization andhandling of deadlocks.• Chapter 7 describes how operating systems manage a computer’smemory.
The focus here is on how main memory is managed duringprocess execution. It is here that differences between mainframes,desktops and mobile computers are evident. This chapter describesand discusses these differences.• Chapter 8 discusses files and the ways operating systems have beeninvented for presenting files to users. There are several differentsystems for managing files, but the file concept itself is the sameacross platforms. This chapter describes the classic file-managementalgorithms as well as the ways files are handled on different platforms.• Chapters 9 and 10 discuss computer input and output (I/O) and howimportant the management of I/O is to the running of a computersystem. I/O management is probably the most crucial to a computersystem because it deals with the slowest components of a computer system.
Chapter 9 describes I/O in depth, considering design,interfaces and internal structure. Chapter 10 extends the ideas fromChapter 9 to apply to a communications network.• Chapters 11 to 13 describe and exemplify how operating systems dealwith communication. It is in these chapters that Symbian OS beginsINTRODUCTIONxvto shine, because it is designed expressly for device communication.Chapter 11 deals with communication models in general, describingand discussing ways that operating systems build models for communications. Chapter 12 applies the concepts from Chapter 11 totelephony; Chapter 13 applies these concepts to messaging facilities.• Chapter 14 deals with system security. Security extends to all majorareas of a computer system and this chapter discusses the applicationof security ideas to processes through files and into communications.• Chapter 15 provides a case study of how the operating system concepts of the previous chapters can be applied to an interesting newarea of development.
Virtual machines provide an area that needsmanagement – through an operating system – but in special ways thatadapt to its unique implementation. This chapter describes virtualmachines and how operating systems address them.The Laboratory ExercisesThe laboratory exercises (which can be found at www.wiley.com/go/jipping) is designed to get students to experiment in the designand implementation of operating systems.
We focus on Symbian OS, butto do this we compare and contrast Symbian OS with other operatingsystems. In many cases, we compare Unix/Linux, Microsoft Windowsand Symbian OS.To follow the laboratory experiments, you need an implementationof Unix. This is for two reasons: Unix provides many comparisons toSymbian OS and other operating systems and there are concepts thatSymbian OS does not address that are neatly exemplified in Unix.Almost any implementation of Unix will do for this: Linux is the mostwidely used and works well. There are many ‘live CD’ implementationsthat do not require you to spend money (they are free) or to dedicatecomputing resources. You can boot a live-CD implementation directlyfrom a CD-ROM and it runs completely in memory.
It does not affect thePC hard drive and any installed software is not affected.The implementation we use in this manual is Knoppix version 4.0. Youcan download a CD image of Knoppix from www.knoppix.org. You canalso use Ubuntu Linux, which can be found at www.ubuntu.org.1Introduction to Mobile Phone SystemsThe phrase ‘viewing the world through rose-tinted glasses’ finds itsorigins in literature at least as far back as 1861. The phrase implies that‘viewers’ have a different – usually optimistic – view of the world fromthe ‘standard’ view, as if they are seeing it through a set of nicely tintedlenses.
Computer operating systems are like tinted glasses, allowing theviewer to see a collection of hardware and software – memory, diskdrives, CPU chips, Bluetooth transmitters, email programs and telephonyapplications in an ordered and controllable way: as a set of resourcesthat can be harnessed to accomplish various tasks. An operating system isthe model through which a computer’s hardware and software can worktogether and the structure that provides controlled access between them.Consider the many different sets of ‘tinted glasses’ that are in usetoday for manipulating computing resources. Many of today’s hardwareplatforms are used by multiple operating systems. For example, Intelbased hardware, such as the Pentium family of CPUs, can support severaldifferent operating systems.
The Microsoft Windows family of operatingsystems represents a set of many different operating systems – from Windows 95 to Windows XP – that run on the same hardware platform. TheLinux operating system and BeOS provide other examples. These differentsystems form a set of different models of resource allocation and usagethat operate on the same hardware. These operating systems are verydifferent in how they view a computer system, but they are very muchthe same in many respects.This book takes a close look at the variety of operating systemswith a focus on a specific type of operating system: that of mobile2INTRODUCTION TO MOBILE PHONE SYSTEMSphones. Mobile phone operating systems must embrace conventionalsystem components as well as additional components crucial to mobilephones: communications and interface design.
We look at each of theseadditional components. To be more specific, this book looks at mobilephone operating systems by examining Symbian OS. Symbian OS is anoperating system that was designed from its beginnings to be implementedon mobile phones. Its design comprises conventional operating systemmodeling, employs a strong communications model and has a veryflexible user interface model. Its origins are found in handheld computingand its usage on mobile platforms is growing dramatically. (It is predictedthat, by 2008, half of all mobile phones will have a full-featured operatingsystem, such as Symbian OS, running them.)It is difficult to study mobile phone operating systems, even giventhe plethora of mobile phones, without also looking at conventionaloperating systems.
We examine operating systems that power serversand desktop systems. We compare Symbian OS to these conventionalsystems, especially by comparing it to Linux.In order to study operating systems, we must first define what anoperating system is and understand the divide between an operatingsystem and a hardware device. This chapter defines operating systemsand the components that make them up. It then looks at the historyof operating systems, including a history of Symbian OS.
It finishes bylooking at how operating systems fit onto various computing platforms.1.1 What Is an Operating System?There are many definitions of an operating system. All definitions agreeon several points. First, an operating system is a software program. Nomatter where it is stored – on a hard drive, in ROM, on compact flashstorage – an operating system is eventually loaded into a computer’smemory and its instructions are executed just like any other softwareprogram.Secondly, an operating system is a resource model.
Operating systemsare designed to present the various hardware resources of a computer tosoftware and to a user. An operating system builds a model, a system, ofhow to deal with the resources of a computer. Software must work withthis model to access and use those resources. The model provides a lensthrough which users view resources such as the communications systemand the user interface.WHAT IS AN OPERATING SYSTEM?3Thirdly, an operating system binds the hardware and the softwaretogether. Because it presents the hardware to the software, an operatingsystem is the glue that holds the two sides together.
The software seesand accesses the hardware as it is presented through the operating systemmodel. The hardware deals with the software through the same operatingsystem model. A good operating system is based on an intuitive model thatallows effective communication between the software and the hardware.Finally, an operating system is essential. Without an operating system,a computer would not function. Its software could not be executed; itshardware would not be utilized. Any general-purpose computer has anoperating system in some form. Thus, learning about operating systemsmeans learning about an essential part of the computer.The Operating EnvironmentTo understand operating systems as the glue between hardware andsoftware, let us examine these two elements and how they relate throughthe operating system.Hardware is the physical part of the computer.