Top Banner
1 Windows CE 6.0 Bare Essentials Kurt Kennett Microsoft Corporation
72

Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

Jul 11, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

1

Windows CE 6.0Bare Essentials

Kurt KennettMicrosoft Corporation

Page 2: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

2

Where do we start?We need to understand systems level software and how Windows CE fits in. 

Page 3: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

3

Where do we start?We need to understand systems level software and how Windows CE fits in. “Systems” has to do with the software that is in between the user programs and computer hardware.

Page 4: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

4

Where do we start?We need to understand systems level software and how Windows CE fits in. “Systems” has to do with the software that is in between the user programs and computer hardware.

User Application (ex: Word Processor)

Page 5: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

5

Where do we start?We need to understand systems level software and how Windows CE fits in. “Systems” has to do with the software that is in between the user programs and computer hardware.

User Application (ex: Word Processor)

Computer Hardware(screen, keyboard)

Page 6: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

6

Where do we start?We need to understand systems level software and how Windows CE fits in. “Systems” has to do with the software that is in between the user programs and computer hardware.

User Application (ex: Word Processor)

Computer Hardware(screen, keyboard)

Page 7: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

7

Where do we start?We need to understand systems level software and how Windows CE fits in. “Systems” has to do with the software that is in between the user programs and computer hardware.

User Application (ex: Word Processor)

Computer Hardware(screen, keyboard)

Page 8: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

8

Where do we start?We need to understand systems level software and how Windows CE fits in. “Systems” has to do with the software that is in between the user programs and computer hardware.

User Application (ex: Word Processor)

Systems Software

Computer Hardware(screen, keyboard)

Page 9: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

9

Where do we start?We need to understand systems level software and how Windows CE fits in. “Systems” has to do with the software that is in between the user programs and computer hardware.

Systems software provides a standard environment that application writers can depend on.

User Application (ex: Word Processor)

Systems Software

Computer Hardware(screen, keyboard)

Page 10: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

10

What does Windows CE do for me?A Windows CE Operating system “Image” is a collection of systems software.

Page 11: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

11

What does Windows CE do for me?A Windows CE Operating system “Image” is a collection of systems software.Microsoft includes in Windows CE 6.0 a choice of four possible CPU “architectures” that can be used to base your computer hardware on.

Page 12: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

12

What does Windows CE do for me?A Windows CE Operating system “Image” is a collection of systems software.Microsoft includes in Windows CE 6.0 a choice of four possible CPU “architectures” that can be used to base your computer hardware on.An architecture is the structure behind a way of computing ‐ adding, subtracting and multiplying bits, and loading them from or storing them to memory.

Page 13: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

13

What does Windows CE do for me?A Windows CE Operating system “Image” is a collection of systems software.Microsoft includes in Windows CE 6.0 a choice of four possible CPU “architectures” that can be used to base your computer hardware on.An architecture is the structure behind a way of computing ‐ adding, subtracting and multiplying bits, and loading them from or storing them to memory.

ldr r0, [r1, #8]

Page 14: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

14

What does Windows CE do for me?A Windows CE Operating system “Image” is a collection of systems software.Microsoft includes in Windows CE 6.0 a choice of four possible CPU “architectures” that can be used to base your computer hardware on.An architecture is the structure behind a way of computing ‐ adding, subtracting and multiplying bits, and loading them from or storing them to memory.

ldr r0, [r1, #8] mov eax, dword ptr edx+8

Page 15: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

15

What does Windows CE do for me?A Windows CE Operating system “Image” is a collection of systems software.Microsoft includes in Windows CE 6.0 a choice of four possible CPU “architectures” that can be used to base your computer hardware on.An architecture is the structure behind a way of computing ‐ adding, subtracting and multiplying bits, and loading them from or storing them to memory.

The choice of an architecture is the starting point for the design of a computer system.

ldr r0, [r1, #8] mov eax, dword ptr edx+8

Page 16: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

16

An architecture isn’t a physical thing.  It’s a specification of how a CPU core should work.

CPU – Genus and Species

Page 17: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

17

An architecture isn’t a physical thing.  It’s a specification of how a CPU core should work.An actual implementation of an architecture version ends up as a particular CPU core.

CPU – Genus and Species

Page 18: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

18

An architecture isn’t a physical thing.  It’s a specification of how a CPU core should work.An actual implementation of an architecture version ends up as a particular CPU core.

CPU – Genus and Species

CPU COREARCH

Page 19: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

19

An architecture isn’t a physical thing.  It’s a specification of how a CPU core should work.An actual implementation of an architecture version ends up as a particular CPU core.

The choice of an CPU core (and therefore an architecture) is typically the second thing you do in defining a computer.

CPU – Genus and Species

CPU COREARCH

Page 20: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

20

An architecture isn’t a physical thing.  It’s a specification of how a CPU core should work.An actual implementation of an architecture version ends up as a particular CPU core.

The choice of an CPU core (and therefore an architecture) is typically the second thing you do in defining a computer.

CPU – Genus and Species

CPU / SoC

CPU COREARCH

CPU CORE

Page 21: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

21

An architecture isn’t a physical thing.  It’s a specification of how a CPU core should work.An actual implementation of an architecture version ends up as a particular CPU core.

The choice of an CPU core (and therefore an architecture) is typically the second thing you do in defining a computer.

A CPU core is typically built in to a ‘SoC’ or System‐On‐Chip.  This is a combination of a CPU Core and some support logic and peripherals highly tuned to work with that core.

CPU – Genus and Species

CPU / SoC

CPU COREARCH

CPU CORE

Page 22: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

22

An architecture isn’t a physical thing.  It’s a specification of how a CPU core should work.An actual implementation of an architecture version ends up as a particular CPU core.

The choice of an CPU core (and therefore an architecture) is typically the second thing you do in defining a computer.

A CPU core is typically built in to a ‘SoC’ or System‐On‐Chip.  This is a combination of a CPU Core and some support logic and peripherals highly tuned to work with that core.The ‘SoC’ is sold as a product.

CPU – Genus and Species

CPU / SoC

CPU COREARCH

CPU CORE

Page 23: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

23

ARCH

"Boards" –making a product

ARM

SH

MIPS

X86

Page 24: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

24

CPU COREARCH

"Boards" –making a product

ARM

SH

MIPS

X86

ARMv5TE

ARM11EJ‐S

Pentium

80486

Page 25: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

25

CPU COREARCH

"Boards" –making a product

ARM

SH

MIPS

X86

ARMv5TE

ARM11EJ‐S

Pentium

80486

Page 26: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

26

CPU / SoCCPU COREARCH

"Boards" –making a product

ARM

SH

MIPS

X86

ARMv5TE

ARM11EJ‐S

Pentium

80486

MARVELL PXA27x

TI OMAP 3430

QUALCOMM 7X00

Page 27: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

27

CPU / SoCCPU COREARCH

"Boards" –making a product

ARM

SH

MIPS

X86

ARMv5TE

ARM11EJ‐S

Pentium

80486

MARVELL PXA27x

TI OMAP 3430

QUALCOMM 7X00

Page 28: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

28

BoardCPU / SoCCPU COREARCH

"Boards" –making a product

ARM

SH

MIPS

X86

ARMv5TE

ARM11EJ‐S

Pentium

80486

MARVELL PXA27x

TI OMAP 3430

QUALCOMM 7X00

phyCore270

EM‐X270

Mainstone II

Page 29: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

29

BoardCPU / SoCCPU COREARCH

"Boards" –making a product

ARM

SH

MIPS

X86

ARMv5TE

ARM11EJ‐S

Pentium

80486

MARVELL PXA27x

TI OMAP 3430

QUALCOMM 7X00

phyCore270

EM‐X270

Mainstone II

Page 30: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

30

Board

"Boards" –making a product

phyCore270

EM‐X270

Mainstone II

Page 31: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

31

Software for a “Board”

Board

phyCore270

EM‐X270

Mainstone II

A Board needs systems software to adapt it to the applications.  We call the collection of systems software that is used an operating system.

Page 32: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

32

Software for a “Board”

Board

phyCore270

EM‐X270

Mainstone II

A Board needs systems software to adapt it to the applications.  We call the collection of systems software that is used an operating system.An operating system like Windows CE is a choice.

Page 33: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

33

Software for a “Board”

Board

phyCore270

EM‐X270

Mainstone II

A Board needs systems software to adapt it to the applications.  We call the collection of systems software that is used an operating system.An operating system like Windows CE is a choice.Usually a choice is made based on a number of factors.

Page 34: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

34

Software for a “Board”

Board

phyCore270

EM‐X270

Mainstone II

A Board needs systems software to adapt it to the applications.  We call the collection of systems software that is used an operating system.An operating system like Windows CE is a choice.Usually a choice is made based on a number of factors.

Existing applications for the OSDifficulty of application developmentCost of licensingMany other reasons

Page 35: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

35

Software for a “Board”

Board

phyCore270

EM‐X270

Mainstone II

In order for the Board to be useful, the systems software must adapt its hardware so the applications can use it.

Page 36: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

36

Software for a “Board”

Board

phyCore270

EM‐X270

Mainstone II

In order for the Board to be useful, the systems software must adapt its hardware so the applications can use it.A component is a piece of the systems software that allows a well defined set of functionality to operate.

Display InputSound

Page 37: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

37

Software for a “Board”

Board

phyCore270

EM‐X270

Mainstone II

In order for the Board to be useful, the systems software must adapt its hardware so the applications can use it.A component is a piece of the systems software that allows a well defined set of functionality to operate.

Display InputSound

To support the variety of needs of the systems software for a board, typically a large variety of ‘components’ are available.

Page 38: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

38

Software Componentization

Board

phyCore270

EM‐X270

Mainstone II USB HOSTWINDOW MANAGER

OS Components

DEBUG SHELL

Page 39: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

39

Software Componentization

Board

phyCore270

EM‐X270

Mainstone II USB HOST

DISPLAY SYSTEM

WINDOW MANAGER

OS Components

DEBUG SHELL

Page 40: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

40

Software Componentization

Board

phyCore270

EM‐X270

Mainstone II

USB CORE

USB HOST

DISPLAY SYSTEM

WINDOW MANAGER

OS Components

DEBUG SHELL

Page 41: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

41

Software Componentization

Board

phyCore270

EM‐X270

Mainstone II

DEVICE MANAGER

USB CORE

USB HOST

DISPLAY SYSTEM

WINDOW MANAGER

OS Components

DEBUG SHELL

Page 42: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

42

Software Componentization

Board

phyCore270

EM‐X270

Mainstone II

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

OS Components

DEBUG SHELL

Page 43: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

43

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

Page 44: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

44

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIALAPPLIANCE

COLLECTION OF OS COMPONENTS

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

Page 45: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

45

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

INDUSTRIALAPPLIANCE

Page 46: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

46

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIALAPPLIANCE

ENTERPRISEWEBPAD

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

Page 47: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

47

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIALAPPLIANCE

ENTERPRISEWEBPAD

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

MY COOL WINDOWS CE 

PROJECT

Page 48: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

48

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIALAPPLIANCE

ENTERPRISEWEBPAD

MY COOL WINDOWS CE 

PROJECT

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

Page 49: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

49

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIALAPPLIANCE

ENTERPRISEWEBPAD

MY COOL WINDOWS CE 

PROJECT

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

Page 50: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

50

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIALAPPLIANCE

ENTERPRISEWEBPAD

MY COOL WINDOWS CE 

PROJECT

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

Page 51: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

51

Defining the systems software

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIALAPPLIANCE

ENTERPRISEWEBPAD

MY COOL WINDOWS CE 

PROJECT

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS ComponentsARCH

ARM

SH

MIPS

X86

Page 52: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

52

For CE – what is provided?

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIAL APPLICANCE

ENTERPRISEWEBPAD

MY COOL WINDOWS CE 

PROJECT

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS ComponentsARCH

ARM

SH

MIPS

X86

ARMKERNEL

MIPSKERNEL

X86KERNEL

SHKERNEL

Page 53: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

53

For CE – what is provided?

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIAL APPLICANCE

ENTERPRISEWEBPAD

MY COOL WINDOWS CE 

PROJECT

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS ComponentsARCH

ARM

SH

MIPS

X86

ARMKERNEL

Page 54: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

54

For CE – what is provided?

Board

phyCore270

EM‐X270

Mainstone II

Window CE “Project” 

(VS Solution)

INDUSTRIAL APPLICANCE

ENTERPRISEWEBPAD

MY COOL WINDOWS CE 

PROJECT

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

Page 55: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

55

For CE – what is provided?

Board

phyCore270

EM‐X270

Mainstone II

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

Page 56: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

56

Defining a CE‐based product

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

BoardBoard

Hardware

Page 57: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

57

Defining a CE‐based product

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

BoardBoard

Hardware

Page 58: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

58

Defining a CE‐based product

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

BoardSupport Package

Board

Hardware

Page 59: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

59

BoardSupport Package

The board support package

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

HardwareARM Core

Page 60: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

60

BoardSupport Package

The board support package

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

HardwareARM Core

OAL

Page 61: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

61

BoardSupport Package

The board support package

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

HardwareARM Core

OAL

Page 62: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

62

BoardSupport Package

The board support package

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

Driver

HardwareARM Core

DriverDriverDriver

OAL

Page 63: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

63

BoardSupport Package

The board support package

DEVICE MANAGER

DISPLAY SYSTEM

WINDOW MANAGER

DEBUG SHELL

OS Components

ARMKERNEL

Driver

HardwareARM Core

Driver

Driver

Driver

OAL

Page 64: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

64

The board support package

ARMKERNEL

OAL

Page 65: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

65

So the bare bones are…An Architecture‐Specific KernelSystems software componentsA Board‐Specific BSP (OAL and drivers)

ARMKERNEL

OAL

Page 66: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

66

So the bare bones are…An Architecture‐Specific KernelSystems software componentsA Board‐Specific BSP (OAL and drivers)

ARMKERNEL

The kernel already knows how to talk to the CPU core, which is the same for every CPU of a particular architecture.

OAL

Page 67: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

67

So the bare bones are…An Architecture‐Specific KernelSystems software componentsA Board‐Specific BSP (OAL and drivers)

ARMKERNEL

The kernel already knows how to talk to the CPU core, which is the same for every CPU of a particular architecture.The BSP must abstract everything else.

OAL

Page 68: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

68

Summary

We now know the basics of how a Windows CE system is structured.

Page 69: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

69

Summary

We now know the basics of how a Windows CE system is structured.Microsoft provides a kernel for any of the four supported architectures.

Page 70: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

70

Summary

We now know the basics of how a Windows CE system is structured.Microsoft provides a kernel for any of the four supported architectures.A board support package (BSP) is the bridge between the high‐level components and the specific hardware that is used.

Page 71: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

71

Summary

We now know the basics of how a Windows CE system is structured.Microsoft provides a kernel for any of the four supported architectures.A board support package (BSP) is the bridge between the high‐level components and the specific hardware that is used.Many OS components are available for you to select from, to fulfill the needs of your customized product.

Page 72: Kurt Kennett Microsoft Corporation - NXP Semiconductors€¦ · a CPU core should work. An actual implementation of an architecture version ends up as a particular CPU core. The choice

72

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.  MICROSOFT MAKES NO WARRANTIES, EXPRESS, 

IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.