IBM System z
z/VM: The Very Basics 1
© 2009 IBM Corporation
z/VM Basics
Arwed TschoekeSystems [email protected]
2 z/VM: The Very Basics
© 2008 IBM Corporation
Introduction
� We'll explain basic concepts of System z:– Terminology– Processors– Memory– I/O– Networking
� We'll see that z/VM virtualizes a System z machine:– Virtual processors– Virtual memory– … and so on
� Where appropriate, we'll compare or contrast:– PR/SM or LPAR– z/OS– Linux
IBM System z
z/VM: The Very Basics 2
3 z/VM: The Very Basics
© 2008 IBM Corporation
System z Parts Nomenclature
CEC (central electronics complex)
ServerComputer
Processor, Engine, PU (processing unit) IOP (I/O processor)CPU (central processing unit)
CP (central processor)SAP (system assist processor)Specialty engines
–IFL (Integrated Facility for Linux)–zAAP (System z Application Assist Processor)–zIIP (System z9 Integrated Information Processor)
Processor
DASD – Direct Access Storage DeviceDisk, Storage
Storage (though we are moving toward "memory")Memory
System zx86, UNIX, etc.
4 z/VM: The Very Basics
© 2008 IBM Corporation
IBM System z – a comprehensive and sophisticated sui te of virtualization function
IBM System z Virtualization Genetics
CP-67
VM/370
VM/SP
VM/HPO
VM/XA
VM/ESA
z/VM V5
S/360
S/370
SMP
64 MB Real
31-Bit
ESA
64-Bit
1960s 1972 1980 1981 1988 1995 2007...
REXX Interpreter
Virtual Machine Resource Manager
Virtual Disks in Storage
CMS Pipelines
Accounting Facility
Absolute | Relative SHARE
Discontiguous Saved Segments
Instruction TRACE
LPAR Hypervisor
Adapter Interruption Pass-Through
Multiple Logical Channel Subsystems (LCSS)
Open Systems Adapter (OSA) Network Switching
Zone Relocation
Control Program Hypervisor
Dynamic Address Translation (DAT)
Diagnose Hypervisor Interface
Conversational Monitor System (CMS)
Inter-User Communication Vehicle (IUCV)
Program Event Recording (PER)
Translation Look-Aside Buffer (TLB)
Programmable Operator (PROP)
Dedicated I/O Processors
VM Assist Microcode
Start Interpretive Execution (SIE)
Named Saved Systems
Guest LANs
I/O Priority Queuing
Virtual Switch
Minidisk Cache
Set Observer
Performance Toolkit
SIE on SIE
Expanded Storage Multiple Image Facility (MIF)
Large SMP
HiperSockets
Integrated Facility for Linux
Host Page-Management Assist
QDIO Enhanced Buffer State Mgmt
Automated Shutdown
Dynamic Virtual Machine Timeout
HyperSwap
N_Port ID Virtualization (NPIV)
30909x21
9672
zSeries
System z9
System z10
308x303x
4381
Over 40 years of continuous innovation in virtualiz ation– Refined to support modern business requirements– Exploit hardware technology for economical growth– LPAR, Integrated Facility for Linux, HiperSockets– System z Application Assist Processors– System z Information Integration
Processors
Business Value: Scalability
, Reliability
, Robustness, Flexibility
, ...
IBM System z
z/VM: The Very Basics 3
© 2009 IBM Corporation
Virtual Machines
6 z/VM: The Very Basics
© 2008 IBM Corporation
Virtual Machines
� A virtual machine is an execution context that obeys the architecture
� The purpose of z/VM is to virtualize the real hardware:– Faithfully replicate the z/Architecture Principles of Operation– Permit any virtual configuration that could legitimately exist in real
hardware– Let many virtual machines operate simultaneously– Allow over commitment of the real hardware (processors, for example)– Your limits will depend on the size of your physical zSeries computer
� Virtual machine aka VM user ID, VM logon, VM Guest, Virtual Server
Hypervisor (z/VM Control Program)
Virtual Machine…Virtual MachineVirtual Machine
IBM System z
z/VM: The Very Basics 4
7 z/VM: The Very Basics
© 2008 IBM Corporation
Virtual Machines in Practice
� Control Program Component – manages virtual machines that adhere to the S/390 architecture and the z/Architecture
� Extensions available through CP system services and features
� CMS is special single user system and part of z/VM� Control Program interaction via console device
Hypervisor (z/VM Control Program)
Othersz/TPFLinux 64-bit
Linux 31-bit
z/VSECMSz/OS
8 z/VM: The Very Basics
© 2008 IBM Corporation
Phrases associated with Virtual Machines
� In VM– Guest: a system that is operating in a virtual machine, also known as
user or userid– Running under VM or Running on VM: running a system as a guest
of VM– Running second level: running a system as a guest of VM which is
itself a guest of another VM– A virtual machine may have multiple virtual processors– Sharing is very important
� In relationship to LPAR (partitioning)– Logical Partition: LPAR equivalent of a virtual machine– Logical Processor: LPAR equivalent of a virtual processor– Running native or Running in BASIC mode : running without LPAR
• Note: Basic mode is not available on z890, z990 or z9– Isolation is very important
IBM System z
z/VM: The Very Basics 5
9 z/VM: The Very Basics
© 2008 IBM Corporation
Phrases Associated with Virtual Machines
Logical processor
Logical processor
Logical processor
Logical processor
Logical processor
Logical processor
Logical processor
PR/SM LPAR
Logical PartitionLogical Partition
z/VM Control Program
Virtual processorVirtual
processorVirtual
processorVirtual
processor
z/VM Control Program
Virtual processor
z/OS or z/VSE
Linux
Linux
10 z/VM: The Very Basics
© 2008 IBM Corporation
A Virtual Machine
� We permit any configuration that a real zSeries machine could have
� In other words, we completely implement the z/Architecture Principles of Operation
� There is no “standard virtual machine configuration”
� z/Architecture� 512 MB of memory� 2 processors� Basic I/O devices:
– A console– A card reader– A card punch– A printer
� Some read-only disks
� Some read-write disks
� Some networking devices
Virtual Machine
IBM System z
z/VM: The Very Basics 6
11 z/VM: The Very Basics
© 2008 IBM Corporation
VM User Directory
USER LINUX01 MYPASS 512M 1024M GMACHINE ESA 2IPL 190 PARM AUTOCRCONSOLE 01F 3270 ASPOOL 00C 2540 READER *SPOOL 00D 2540 PUNCH ASPOOL 00E 1403 ASPECIAL 500 QDIO 3 SYSTEM MYLANLINK MAINT 190 190 RRLINK MAINT 19D 19D RRLINK MAINT 19E 19E RRMDISK 191 3390 012 001 ONEBIT MW MDISK 200 3390 050 100 TWOBIT MR
Definitions of:– memory– architecture– processors– spool devices– network device– disk devices– other attributes
12 z/VM: The Very Basics
© 2008 IBM Corporation
CP Commands
� CP DEFINE– Adds to the virtual configuration somehow– CP DEFINE STORAGE – CP DEFINE PROC– CP DEFINE {device} {device_specific_attributes}
� CP ATTACH– Gives an entire real device to a virtual machine
� CP DETACH– Removes a device from the virtual configuration
� CP LINK– Lets one machine's disk device also belong to another's configuration
� CP SET– Change various characteristics of virtual machine
� Changing the virtual configuration after logon is c onsidered normal� Usually the guest operating system detects and resp onds to the
change
IBM System z
z/VM: The Very Basics 7
13 z/VM: The Very Basics
© 2008 IBM Corporation
Getting Started
� IML– Initial Machine Load or Initial Microcode Load – Power on and configure processor complex– VM equivalents are:
• LOGON uses the MACHINE statement in the CP directory entry• The CP SET MACHINE command
– Analogous to LPAR image activation� IPL
– Initial Program Load– Like booting a Linux system– zSeries hardware allows you to IPL a system– z/VM allows you to IPL a system in a virtual machine via the CP IPL
command– Linux kernel is like VM nucleus– Analogous to the LPAR LOAD function
© 2009 IBM Corporation
Processors
IBM System z
z/VM: The Very Basics 8
15 z/VM: The Very Basics
© 2008 IBM Corporation
Processors
� Configuration– Virtual 1- to 64-way
• Defined in user directory, or• Defined by CP command
– A real processor can be dedicated to a virtual machine� Control and Limits
– Scheduler selects virtual processors according to apparent CPU need
– “Share” setting - prioritizes real CPU consumption• Absolute or relative• Target minimum and maximum values• Maximum values (limit shares) either hard or soft
– “Share” for virtual machine is divided among its virtual processors
16 z/VM: The Very Basics
© 2008 IBM Corporation
Start Interpretive Execution (SIE)
� SIE = “Start Interpretive Execution”, an instructio n� z/VM (like the LPAR hypervisor) uses the SIE instru ction to “run”
virtual processors for a given virtual machine.� SIE has access to:
– A control block that describes the virtual processor state (registers, etc.)
– The Dynamic Address Translation (DAT) tables for the virtual machine� z/VM gets control back from SIE for various reasons :
– Page faults– I/O channel program translation– Privileged instructions (including CP system service calls)– CPU timer expiration (dispatch slice)– Other, including CP asking to get control for special cases
� CP can also shoulder tap SIE from another processor to remove virtual processor from SIE (perhaps to reflect an i nterrupt)
IBM System z
z/VM: The Very Basics 9
17 z/VM: The Very Basics
© 2008 IBM Corporation
Scheduling and Dispatching
� VM– Scheduler determines priorities based on share setting and other
factors– Dispatcher runs a virtual processor on a real processor– Virtual processor runs for (up to) a minor time slice– Virtual processor keeps competing for (up to) an elapsed time slice
� LPAR hypervisor– Uses weight settings for partitions, similar to share settings for virtual
machines– Dispatches logical processors on real engines
� Linux– Scheduler handles prioritization and dispatching processes for a time
slice or quantum
18 z/VM: The Very Basics
© 2008 IBM Corporation
Anomalies of Time
� VM virtualizes various timers or clocks– CPU timer – runs as processor time consumed– Time of day (TOD) clock– Clock comparator
� Anomaly– TOD always moves at wall clock speed– Virtual CPU timer “moves” slower as the sharing of the
real processor increases– Problem when calculations assume CPU timer is moving
at TOD clock speed� LPAR
– Same potential, but seldom shares processors to high enough degree to create drastic anomalies
IBM System z
z/VM: The Very Basics 10
19 z/VM: The Very Basics
© 2008 IBM Corporation
Anomalies of Time
60 Seconds Wall Clock time
Running 20
Seconds
Waiting 5
Seconds
TOD
CPUTimerServer A
CPUTimerServer B
Running 30 Seconds
Waiting 5 Seconds
Stop running virtual server A, and dispatch virtual server B
50%86%3035B
33%80%2025A
Correct Utilization
Incorrect Utilization
CPU Timer ‘busy’
Total CPU Timer
Virtual Server
20 z/VM: The Very Basics
© 2008 IBM Corporation
� Allows z/VM guests to expand or contract the number of virtual processors it uses without affecting the overall CPU capacity it is al lowed to consume
– Guests can dynamically optimize their multiprogramming capacity based on workload demand
– Starting and stopping virtual CPUs does not affect the total amount of CPU capacity the guest is authorized to use
– Linux CPU hotplug (cpuplugd) daemon starts and stops virtual CPUs based on Linux Load Average value.
• The cpuplugd daemon is available with SLES10 SP2 and IBM is working with it Linux distributor partners to provide this function in other Linux on System z distributions.
� Helps enhance the overall efficiency of a Linux-on- z/VM environment
Note: Overall CPU capacity for a guest system can be dynamically adjusted using the SHARE setting
CPU 0SHARE=25
CPU 1SHARE=25
CPU 2SHARE=25
CPU 3SHARE=25
Guest SHARE = 100
CPU 0SHARE=50
CPU 1SHARE=50
CPU 2Stopped
CPU 3Stopped
Guest SHARE = 100
Reduced Need for
Multiprogramming
Stop 2 CPUs
CPU 0SHARE=50
CPU 1SHARE=50
CPU 2Stopped
CPU 3Stopped
Guest SHARE = 100
CPU 0SHARE=25
CPU 1SHARE=25
CPU 2SHARE=25
CPU 3SHARE=25
Guest SHARE = 100
Increased Need for
Multiprogramming
Start 2 CPUs
Dynamic virtual processor management
IBM System z
z/VM: The Very Basics 11
© 2009 IBM Corporation
Memory
22 z/VM: The Very Basics
© 2008 IBM Corporation
Virtual Memory
� Configuration– Defined in CP directory entry or via CP command– Can define storage with gaps (useful for testing)– Can attach expanded storage to virtual machine
� Control and Limits– Scheduler selects virtual machines according to apparent
need for storage and paging capacity– Virtual machines that do not fit criteria are placed in the
eligible list– Can reserve an amount of real storage for a guest’s pages– Can lock certain specific guest pages into real storage
IBM System z
z/VM: The Very Basics 12
23 z/VM: The Very Basics
© 2008 IBM Corporation
Shared Memory
� Key Points:– Sharing:
• Read-only• Read-write• Security
knobs– Uses:
• Common kernel
• Shared programs
Control Program (hypervisor)
Virtual Machine
512MBVirtual
Machine
768MBVirtual Machine
Shared address range (one copy)800MB
1GB
24 z/VM: The Very Basics
© 2008 IBM Corporation
Layout of Real Memory
00CP Nucleus2000CP Nucleus2000
Page tablesTrace tablesPrefix pages
CP free storageFrame tablePage tablesTrace tablesPrefix pages
Above or
below 2GB
Real StorageVirtual pagesMinidisk cachingCP free storageFrame tableSystem execution space table2GB
Above or
below 2GB
Real StorageVirtual pagesMinidisk caching
2GB
Expanded StorageCP pagingMinidisk caching
Expanded StorageCP pagingMinidisk caching
z/VM 5.2z/VM 5.1
IBM System z
z/VM: The Very Basics 13
25 z/VM: The Very Basics
© 2008 IBM Corporation
Memory Management
� VM– Demand paging between central and expanded– Block paging with DASD (disk)– Steal from central based on LRU with reference bits– Steal from expanded based on LRU with timestamps– Paging activity is traditionally considered normal
� LPAR– Dedicated storage, no paging
� Linux– Paging on per-page basis to swap disks– No longer swaps entire processes– Traditionally considered bad
26 z/VM: The Very Basics
© 2008 IBM Corporation
VM Memory Virtualization
Host RealGuest RealGuest Virtual
4
1212
33
1
VMGuest
Swapping
4 3
Paging
2 4
IBM System z
z/VM: The Very Basics 14
27 z/VM: The Very Basics
© 2008 IBM Corporation
Collaborative Memory Management Assist(CMMA)� Extends coordination of memory and paging
between Linux and z/VM to the level of individual pages
� z/VM reclaims “unused”pages at higher priority
� Bypass host page writes for unused and “volatile”pages (clean disk cache pages)
� Signal exception if guest references discarded volatile page
� Use Host Page-Management Assist to re-instantiate pages for next use
� z/VM support included in V5.3
28 z/VM: The Very Basics
© 2008 IBM Corporation
Saved Segment and NSS Support
� DCSS (Discontiguous Saved Segments)– Defines an address range (MB boundary) to the system– A single copy is shared among all guests– Guest "loads" the DCSS (maps DCSS into its address space)
• Can be located outside guest's defined storage– DAT lets this work with minimal CP involvement– Contains:
• Data (e.g. file system control blocks)• Code (e.g. CMS code libraries)
� NSS (Named Saved Systems)– An IPL-able saved segment– Great for CMS or for Linux
• 1 shared copy on system for N guests, instead of N copies.• Faster boot
� Special Cases– Writable by guest, or by CP– Restricted (sensitive data)– Can have both exclusive and shared ranges
IBM System z
z/VM: The Very Basics 15
29 z/VM: The Very Basics
© 2008 IBM Corporation
Linux Exploitation of z/VM DiscontiguousSaved Segments (DCSS)� DCSS support is data-in-memory technology
– Share a single, real memory location among multiple virtual machines
– High-performance data access– Can reduce real memory utilization
� Linux exploitation support available today– Execute-in-place (xip2) file system– DCSS memory locations can reside
outside the defined virtual machine configuration
– Access to file system is at memory speeds; executables are invoked directly out of the file system (no data movement required)
– Avoids duplication of virtual memory and data stored on disks
– Enables throughput benefits for Linux guest images and helps enhance overall system performance and scalability
30 z/VM: The Very Basics
© 2008 IBM Corporation
� z/VM V5.4 exploits dynamic memory reconfiguration
� Users can nondisruptively add memory to a z/VM LPAR– Additional memory can come from: a) unused available memory, b) concurrent memory upgrade,
or c) an LPAR that can release memory– Systems can now be configured to reduce the need to re-IPL z/VM – Memory cannot be nondisruptively removed from a z/VM LPAR
� z/VM virtualizes this hardware support for guest machines– Currently, only z/OS and z/VM support this capability in a virtual machine environment
z/VM
Linux
Memory
I/O and Network
Linux
CPU
z/VSE
Smart economics: Nondisruptively scale your z/VM environment byadding hardware assets that can be shared with every virtual server
Linux z/VM z/OS
Dynamically add
resources to
z/VM LPAR
Linux Linux
New with V5.4LPAR
Resources
VMV54_290
Dynamic memory upgrade
IBM System z
z/VM: The Very Basics 16
© 2009 IBM Corporation
I/O Resources
32 z/VM: The Very Basics
© 2008 IBM Corporation
Device Management Concepts
� Dedicated or attached– The guest has exclusive use of the entire real device.
� Virtualized– Present a slice of a real device to multiple virtual machines – Slice in time or slice in space– e.g. DASD, crypto devices
� Simulated– Provide a device to a virtual machine without the help of real hardware– Virtual CTCAs, virtual disks, guest LANs, spool devices
� Emulated– Provide a device of one type on top of a device of a different type– FBA emulated on FCP SCSI
IBM System z
z/VM: The Very Basics 17
33 z/VM: The Very Basics
© 2008 IBM Corporation
Device Management Concepts
� Terminology– RDEV is Real Device
• Can refer to the device address or the control block– VDEV is Virtual Device
• Can refer to the device address or the control block– UCB is Unit Control Block
• Used in hardware definitions– RDEV=UCB=subchannel=device=adapter
� Control and Limits– Indirect control through “share” setting– Real devices can be “throttled” at device level– Channel priority can be set for virtual machine– MDC fair share limits (can be overridden)
34 z/VM: The Very Basics
© 2008 IBM Corporation
Virtualization of Disks
R/O
A
R/W
Minidisk 1
Minidisk 2
Minidisk 3
Dedicated
Enterprise Storage Server ™ (Shark)
z/VM
Linux1
R/W
Virtual Diskin Storage(memory)
R/O
Notes:R/W = Read/WriteR/O = Read Only
Linux2
TDISK space
R/W
DR/W
Linux3
R/WB
R/W
Virtual Diskin Storage(memory)
TDISK 1
Excellent swap device if not
storage-constrainedMinidisk Cache(High-speed,
in-memory disk cache)
Minidisk: z/VM diskallocation technology
TDISK: on-the-fly diskallocation pool
2B00 2B01 2B02
101
100
100 100200
B01 B01E
C
IBM System z
z/VM: The Very Basics 18
35 z/VM: The Very Basics
© 2008 IBM Corporation
z/VM Disk Technology – SCSI
R/O
B
Minidisk A
Minidisk B
Minidisk C
Paging
Enterprise Storage Server ™ (Shark)
z/VM
Linux1 A
R/W
R/O
Linux2
TDISK space
T1R/W
Linux3
R/WC
TDISK 1
Minidisk Cache(High-speed,
in-memory disk cache)
TDISK: on-the-fly diskallocation pool
SCSI SCSI SCSI
FBA
FBA FBAFBA
00
200
399
100
SCSI Disks attached to z/VM. Appear to guests and rest of VM as emulated FBA.
36 z/VM: The Very Basics
© 2008 IBM Corporation
Data-in-Memory
� Minidisk Cache– Write-through cache for non-dedicated disks– Cached in central or expanded storage– Psuedo-track cache– Great performance - exploits access registers– Lots of tuning knobs
� Virtual Disk in Storage– Like a RAM disk that is pageable– Volatile– Appears like an FBA disk– Can be shared with other virtual machines– Plenty of knobs here too
IBM System z
z/VM: The Very Basics 19
© 2009 IBM Corporation
Networking
38 z/VM: The Very Basics
© 2008 IBM Corporation
Virtual Networks
� Connecting virtual machines to one another– Guest LAN
• QDIO or HiperSockets– Virtual Switch Guest LAN
• Layer 2 or Layer 3
� Connecting virtual machines to another LPAR– HiperSockets– Shared OSA
� Connecting virtual machines to the physical network– Dedicated OSA device– Virtual Switch
• Layer 2 or Layer 3
IBM System z
z/VM: The Very Basics 20
39 z/VM: The Very Basics
© 2008 IBM Corporation
Virtual Switch Guest LAN
z/VM Control Program
Virtual Machine…Virtual MachineVirtual Machine
LinuxGuestOne
LinuxGuest
“N”
LinuxGuestTwo
Switch Network
Network
Virtual Switch
40 z/VM: The Very Basics
© 2008 IBM Corporation
VSWITCH
IBM System z
z/VM: The Very Basics 21
© 2009 IBM Corporation
Time
42 z/VM: The Very Basics
© 2008 IBM Corporation
Anomalies of Time
� VM virtualizes various timers or clocks– CPU timer – runs as processor time consumed– Time of day (TOD) clock– Clock comparator
� Anomaly– TOD always moves at wall clock speed– Virtual CPU timer “moves” slower as the sharing of the
real processor increases– Problem when calculations assume CPU timer is moving
at TOD clock speed� LPAR
– Same potential, but seldom shares processors to high enough degree to create drastic anomalies
IBM System z
z/VM: The Very Basics 22
43 z/VM: The Very Basics
© 2008 IBM Corporation
Anomalies of Time
60 Seconds Wall Clock time
Running 20
Seconds
Waiting 5
Seconds
TOD
CPUTimerServer A
CPUTimerServer B
Running 30 Seconds
Waiting 5 Seconds
Stop running virtual server A, and dispatch virtual server B
50%86%3035B
33%80%2025A
Correct Utilization
Incorrect Utilization
CPU Timer ‘busy’
Total CPU Timer
Virtual Server
44 z/VM: The Very Basics
© 2008 IBM Corporation
TCP/IP
HTMLHTTP
Browsers
Web Servers
GUIs
SSL
SET
Java
Open Standards
Open Source
LinuxXML
Questions?
IBM System z
z/VM: The Very Basics 23
45 z/VM: The Very Basics
© 2008 IBM Corporation
Thank You
MerciGrazie
Gracias
Obrigado
Danke
Japanese
English
French
Russian
German
Italian
Spanish
Brazilian PortugueseArabic
Traditional Chinese
Simplified Chinese
Hindi
Tamil
Thai
Korean
© 2009 IBM Corporation
Bonus Material
IBM System z
z/VM: The Very Basics 24
47 z/VM: The Very Basics
© 2008 IBM Corporation
Virtual Machine Modes (Architectures)
� An architecture is a formal set of rules for how a computer operates
� VM has kept pace with the evolution of IBM mainfram e architecture� ESA
– ESA/390 or z/Architecture if running on System z processor– SIGP Set Architecture order must be issued for z/Architecture– ESA/390 when running on ESA/390 processor
� XC– ESA/XC is unique to z/VM virtual machines (DAT-off use of AR mode)
� XA– Processes the same as ESA mode (compatibility with older VM
releases)� 370
– No longer supported as a virtual machine mode– Processes according to ESA/370 architecture– CP and CMS provide 370 Accommodation features to help run 370
applications in ESA, XA, and XC modes (DAT off)
48 z/VM: The Very Basics
© 2008 IBM Corporation
Other Processor Resources
� Registers– General purpose, control, access, and floating point
• CP saves and restores between invocations of SIE• Manipulation of control registers sometimes requires CP’s
involvement (SIE exit)
� Timers– CPU timer– Clock comparator– Virtualized TOD clock
• SET VTOD command to set virtual machine TOD clock to a specific value or to that of another virtual machine
� Storage Keys� PSW, interrupts, prefixing, and other architected s tructures
IBM System z
z/VM: The Very Basics 25
49 z/VM: The Very Basics
© 2008 IBM Corporation
Virtual Machine Address Translation
Available in z/VM V5Not supported in z/VM V5Not supported on z890/z990/z9
Not supported in z/VM V5
Limited only by resources, design point of roughly 100,000
Up to 6 may be logged on (or 5 plus 1 V=R)
Only 1 may be logged on
Not preferredPreferred guest – CP provides performance benefits
Preferred guest – CP provides performance benefits
No automatic recoveryAutomatic recoveryAutomatic recovery
Guest real storage paged in and out of host real storage by CP
Not paged by CPNot paged by CP
Storage allocated from DPAHigh end of V=R area – never absolute page zero
Absolute page zero (low end of V=R area) – no address translation
Does not map permanently to host real storage
Fixed contiguous area of host real storage
Fixed contiguous area of host real storage
V=V(Virtual=Virtual)
V=F(Virtual=Fixed)
V=R(Virtual=Real)
50 z/VM: The Very Basics
© 2008 IBM Corporation
Classic Scheduler / Dispatcher Picture
Dispatch List
VMDBK D1
.
.
.
.
.
VMDBK Dn
Eligible List
VMDBK E1
.
.
.
.
.
VMDBK En
Dormant list
User becomes runnable
Resources available
User logs onUser logs off
User goes idle
Elapsed time slice expires
...ready
...wait state
(time slice and priority basis)
Minor time slice expires
other interrupt or intercept
IBM System z
z/VM: The Very Basics 26
51 z/VM: The Very Basics
© 2008 IBM Corporation
Multiple Virtualization Layers
� Multiple Levels of SIE– Both z/VM and LPAR use SIE– z/VM running on LPAR = 2 levels of SIE
• No V=F support, and V=R loses I/O Assist• Rest of SIE features can be shared without performance loss
– z/VM running on z/VM on LPAR = 3 levels of SIE• A layer of SIE now has to be virtualized• Fairly expensive
� 2nd level (and 3rd level …) Systems– Often used for testing purposes or disaster recovery– Most levels I ever saw was 9
� Performance Data between Levels– LPAR and VM support Diagnose 204 to provide processor utilization to virtual
servers supported– VM provides a Diagnose that a guest can use to pass data to the Control
Program– VM provides Diagnoses for guest to gather some information– Anomalies in data when guest systems make poor assumptions (i.e. wall clock
time = total processor time)