VMS-Spr-2001-sect-1-group

Download Report

Transcript VMS-Spr-2001-sect-1-group

The VMS Operating System
CS 351: Operating Systems
Spring 2001
Section 1
Chad Cruys, Joshua Krug, William
Menke, Matt Stehle, Kenneth Ward
Overview of VMS
•
•
•
•
Also known as OpenVMS
Developed by Digital/Compaq
First released in 1978 for the VAX system
Later released for the Alpha system also
(1992)
Overview of VMS
• The 32-bit operating system quickly gained
popularity
• Ran on minicomputers and workstations
• Compaq has added many server
applications to the OS
• Runs JAVA, Apache Server, and various
email servers
Overview of VMS
• A new design and marketing strategy of
OpenVMS is to provide integration of VMS
and Windows NT
• By partnering with Microsoft to develop NT
and VMS integrated solutions, OpenVMS
seems to continue to play a major role in
enterprise information systems.
Success of VMS
• Compaq reports that 66% of fund transfers
between banks take place on systems running
VMS
• 90% of CPU manufacturers use VMS to run their
assembly lines
• A large portion of stock transfers and many
cellular phone billing services run on VMS
systems
• VMS is the top rated healthcare operating system
for real-time, mission critical computing
Technological Success
• OpenVMS set the bar for reliability and security
• Password security is unmatched by UNIX or
Microsoft
• Provides security from denial-of-service attacks,
hot-swappable hardware, and the ability to run
multiple instances of the operating system on the
same machine to increase reliability
Process State Structure
• The process state structure for VMS
involves a process priority queue where
processes are ranked in priority from 0 to 31
• 16-31 is a high priority real-time process
• 0-15 is a normal process
• Normal processes are moved up in the
queue if they are critical to the operating
environment
Process State Structure
• States: suspended, executable, running, or
waiting
• executable process would be similar to
Stalling's ready state
Process State Structure
• A register called the processor status long
word (PSL) contains information about the
process
• information contained includes the current
access mode, the current interrupt priority
level (IPL), the stack alignment, and several
reserved fields
Process State Structure
• The interrupt priority word contains a
ranking at which one process may interrupt
another
• There are four access modes: kernel (mode
0), executive (mode 1), supervisor (mode
2), and user (mode 3)
Symmetric Multiprocessing
(SMP)
• Multiple processors used
• All processors perform simultaneously
• Prioritized processes
OpenVMS VAX processes
• Consist of:
– individual address space
– registers
– code (executable image)
• Maximum of 8,192 per system
• Processes prioritized (0-31)
– 0-15 for time-sharing or not time critical
– 16-32 for real-time
OpenVMS Alpha Kernel Threads
• Consist of:
– individual address space
– registers
– code (executable image)
• Maximum of 16,384 per system
• Kernel threads prioritized (0-63)
– 0-15 for time-sharing or not time critical
– 16-63 used for real-time
Interprocess Communication
• Shared memory sections
• Event flags
• Lock manager for queuing
Synchronization Facilities
•
Uses locks
– Access regulation
• shared address spaces
• shared I/O resources
– Mutual exclusion
•
Lock Manager
– Multileveled locks
– Asynchronous System Traps (ASTs)
– Cluster systems
• RMS
• XQP
• Application programs
Synchronization Facilities
(Cont.)
• System coordination
– Shared resources
– Updating data
– Guarantees data integrity
• Multithreaded applications
– DECthreads
• multiple threads executed at once
• concurrent processing
• mutexes
• condition variables
• coordinated access
File System
• Vital part of operating system
– Link between hardware and software teams
• Timesharing system
• Separates from I/O operations
– Initial opening of I/O
– Update virtual-to-logical map
File System (Cont.)
•
Files-11 On-Disk Structure (ODS)
– Latest version ODS-5
– On-disk structures
– CD-ROM
• volume
• file structures
•
Random file access
– Disk
• read access
• write access
– CD-ROM
• read only access
File System (Cont.)
• Levels of On-Disk Structures
– ODS-1
– ODS-2
– ODS-5 (latest)
• ODS-5
– Supports Extended File Specifications
Memory Management
• Two means for memory management in
VMS
– Swapper
• Controls number of processes in memory
– Pager
• Moves pages in and out of memory
Pager
• Upon creation of a process, only necessary
pages are moved into memory
• When a page fault occurs:
– A process-local page replacement policy is used
– FIFO replacement algorithm
– Recently replaced pages are placed in cache
Memory Data Structure
• 32-bit virtual address
–
–
–
–
First two bits are the segment
Next 21 bits are the page
Last nine are the offset
512 bits per page
2 bits
21 bits
9 bits
Segment
Page
Offset
File Data Structures
• File ID
–
–
–
–
File Number
File Sequence Number
Relative Volume Number
File Number Extension
File Data Structures
• File Header
–
–
–
–
–
–
Header Area
Ident Area
Map Area
Access Control List Area
Reserved Area
End Checksum
Process Data Structures
–
–
–
–
–
–
Process Quotas
Privileges
User Identification Code
Username
Process ID
Process’ Scheduling Priority
Process Data Structures
• Virtual Address Space Description
– Program
– Control
– System
Deadlock
• Permanent blocking of multiple processes
• Two causes
– Competing for system resources
– Attempting to communicate with each other
• Lock Manager
– TRANSACTION TIMEOUT
– Transaction services aborts if time limit
exceeded
Scheduling
• Three parts
– Process Time
– Process Priority
– Process State
Scheduling
• Time
– Round-robin with preemption
– QUANTUM
– Quantum remaining field
• 10-milliseconds timer interrupt called and remaining
value is decremented
• 0 means next process in queue is scheduled to run
Scheduling
• Priority
• 0-15 (Normal processes)
– If a resource is needed, it can get a boost of up
to 6 priority points
– i.e. I/O-bound can get boost, CPU-bound can’t
• 16-31 (Real-time processes)
– No boosting allowed
Scheduling
• State
• Similar to Stallings’ states
– Readily computable vs. Waiting for resource
– Memory resident vs. Must be swapped into
memory