Transcript
Page 1: Operating  system concepts

Operating system concepts

Lin ZhongELEC424, Fall 2010

Page 2: Operating  system concepts

Outline

• What is operating system?

• Important OS concepts

• Embedded OS

2

Page 3: Operating  system concepts

What is OS?• Different ways of computing implementation

3

Data Input (1100101000) Output

(0101101010)Fully customized circuit

Data Input (1100101000)

Output (0101101010)

Control Input (1100101000)

Programmable circuit (Processor)

Program in high-level language

Compilation

Program in high-level language

Program in high-level language

Executable/binary

Page 4: Operating  system concepts

What is OS? (Contd.)• A modern computer system

4

Output (0101101010)

Control Input (1100101000)

Programmable circuit (Processor)

Data Input (1100101000)

Hard disk

BIOS

Precompiled binaries

Basic I/O system to jumpstart

Page 5: Operating  system concepts

What is OS?

• “Software that manages the sharing of the resources of a computer”---Wikipedia– Sharing by what?

• Independent executables (programs)– What resources?

• Time-shared resources: CPU and network• Space-shared resources: memory and disk• Exhaustible: energy

5

Page 6: Operating  system concepts

OS concepts

• Scheduling (Process management)• Memory management• File system• Networking• Device drivers• Power management

6

Page 7: Operating  system concepts

Scheduling• Process

– Wiki: An instance (execution) of a computer program that is being sequentially executed

• Wiki: a collection of instructions that describes a task, or set of tasks, to be carried out by a computer

– Running program???• Execution of a single control flow

7

be done 00000010 10000000 00000000 00000110addcc %r1,-4,%r1 10000010 10000000 01111111 11111100addcc %r1,%r2,%r4 10001000 10000000 01000000 00000010ld %r4,%r5 11001010 00000001 00000000 00000000ba loop 00010000 10111111 11111111 11111011addcc %r3,%r5,%r3 10000110 10000000 11000000 00000101

Page 8: Operating  system concepts

Scheduling (Contd.)

8

Physical computer

Processes

OS creates the illusion that every process can own the whole computer

Page 9: Operating  system concepts

Scheduling (Contd.)

9

Time-sharing of CPU Admission control

Long-term scheduling Memory loading

Mid-term scheduling Who gets the CPU

Short-term scheduling Priority Preemptive Real-time

Ready

Run Blocked

Process status

Page 10: Operating  system concepts

Thread vs. Process

10

Physical computer

Processes

OS creates the illusion that every process can own the whole computer

Threads share the resources that is designated to a single process

Process: execution of a single control flow

Process: execution of multiple control flows that share the system resource

Page 11: Operating  system concepts

Memory management• Storage hierarchy• Virtual memory

– Extend main memory beyond RAM– Share memory space between

processes– Organized in “pages”

• 64KB• Page tables• Translation lookaside buffer (TLB)

11

CPUCache

Registers

Main memory (RAM)

Hard disk

Page 12: Operating  system concepts

Memory management & scheduling

12

Ready

Run Blocked

Process status

Binary in main memory

Can get “swapped” out to disk

Page 13: Operating  system concepts

File system• Organize the massive storage

– Directories– Files

• Flash file system– Block-wise erase– Finite # of erase-write cycles (100K

times)• Spread erase-write evenly (wear

levelling)

13

CPUCache

Registers

Main memory

Hard disk

File system cache

Page 14: Operating  system concepts

Application

Transport

Data link

Physical

Network

Networking

14

Application

Presentation

Session

Transport

Data link

Physical

Network

OSI reference model

Priority/Express/ Registration/Packages

Zip code, street address

Traffic regulation

How to drive a mail truck

Find the best route (Google map)

TCP/IP model

IMAP, HTTP

TCP, UDP

CSMA

CDMA, TDMA

IP

USPS analogy

Page 15: Operating  system concepts

Device drivers

• Hardware abstraction– Provide standard API for applications

• Share peripheral devices

• Even battery has a driver

15

Page 16: Operating  system concepts

No direct energy management

• Energy accounting– How much energy has been consumed

• Battery energy model– How much energy is left on battery

• System energy model– How much energy is consumed by a component or

an activity

16

Page 17: Operating  system concepts

Power management• Advanced Configuration and Power Interface (ACPI)

– Industrial standard

17Tian et al, 2007

P-States

•7 global states• G0-G3• G1: S1-S4

•4 CPU states• C0-C3

•Up to 16 Performance states

• Pn•4 device states

• D0-D3

Page 18: Operating  system concepts

Real-time operating system (RTOS)• Guarantee meeting the hard deadlines• Linux, Windows, Unix,…. are NOT RTOS• Green Hills

– INTEGRITY• Joint-strike fighter• Eurofighter Typhoon

• Wind River– VxWork 653 (Boeing 787)

• LynuxWorks– LynxOS (Boeing 777 cabin service system)

• QNX– Automotives

18

Page 19: Operating  system concepts

Smartphone Oses

19

SymbianRIM

Windows Mobile

OS X Linux

Palm OS Others

2007

Symbian

RIM

Windows Mobile

OS X

Linux

Palm OS Others

2008

Source: Gartner

Page 20: Operating  system concepts

46.9

3.9

19.9

14.4

8.76.1

2009

SymbianAndroidRIMiOSWindowsOthers

Page 21: Operating  system concepts

40.1

17.7

17.5

15.4

4.74.7

2010

SymbianAndroidRIMiOSWindowsOthers

Page 22: Operating  system concepts

Industrial profile

22

IC

System integration/manufacture

Operating system

Applications

Microsoft

Samsung, LG, HTC, Moto,…

NokiaApple

TI, ARM, MIPS (Digital), QualcomBroadcom, Marvel (RF, Analog)

Verizon, Sprint, AT&T etc.

RIM (Blackberry)

Services

Palm

Page 23: Operating  system concepts

Symbian• Owned by Nokia• ARM processors only

• Target of multiple phone viruses

• Moving toward open-source

23

Page 24: Operating  system concepts

Embedded Linux• Linux

– Initiated by Linus Torvalds (Swedish Finnish) (but named after Linus Pauling, an American)

• Google Android• Palm WebOS• Meego (Nokia/Intel)• MontaVista Linux

– Most older Motorola Linux phones

• Trolltech Greenphone

24

Page 25: Operating  system concepts

OS for small embedded systems

25

• Often proprietary– In-house simple OS-like firmware

• TinyOS is big for networked sensors – Open source (http://www.tinyos.net/)– Runs on microcontrollers like MSP430

Page 26: Operating  system concepts

New development• All driven by more computing power

26

Executables

OS

Hardware

Executables

OS1

Hardware

VirtualizationOS2

ExecutablesIntermediates

OS1

Hardware

VirtualizationOS2

Intermediates

Run-time Run-time


Top Related