Download presentation
Presentation is loading. Please wait.
Published byBraedon Wylie Modified over 10 years ago
1
VMS Operating System Keith Gittings CS 450 Fall 2002
2
VMS Overview History VMS Layers Processes Memory Management Deadlock Handling Windows NT and VMS Conclusion and Questions
3
VMS History 1978 “One Platform, one operating system, one network” –Digital Equipment Corporation released the VAX VMS VAX (Virtual Address Extension) –32-bit system –Replaced aging 16-bit system PDP-11 –“Star” VMS (Virtual Memory System) –Supported Virtual Memory –Developed to work on VAX architecture –Compatibility mode with PDP-11 –“Starlet” DECnet –Provided peer-to-peer networking –Allowed for distributed computing
4
VMS History VMS –Designed as the single operating system for the VAX –Replaced multiple operating systems for PDP-11 RT-11. Used for real-time and laboratory work RSTS-11. Used for educational and small commercial time- sharing RSX-11. Used for industrial and manufacturing control MUMPS-11. Used in the medical system market DOS-11. The original PDP-11 operating system; essentially eclipsed by VMS.
5
VMS History OpenVMS and VMS –Same operating system –VMS originally called VAX-11 VMS Referred to PDP-11 compatibility –VAX/VMS V2.0 –OpenVMS Renamed with Alpha systems (64-bit) OpenVMS V7.0 – Current Version –Official name OpenVMS VAX OpenVMS Alpha –Digital Equipment Corporation was bought by Compaq
6
VMS Hardware Platforms VAX –32-bit processor Alpha –64-bit processor Intel Itanium –64-bit processor –VMS is currently being ported for Itanium Intel Pentium –VMS was never officially ported for Pentium
7
VMS Layers VMS utilizes a layered architecture VMS consists of several layers –Kernel –System Services –Record Management Services –Command Line Interpreter / Graphical User Interface (GUI)
8
VMS Layers VMS Kernel –Input/Output (I/O) subsystem Device-drivers Handles device interrupts Logs device time-outs –Process Scheduler Round-Robin Scheduling Real-time Scheduling –Memory Management Demand-Paged Virtual Memory
9
VMS Layers System Services –Coordination of I/O –Resource allocation –Inter-process communication The Record Management Services –General data management Creating, deleting, writing and reading files –Ancillary Control Processes (ACPs) perform mass storage transactions Used to prevent conflict among processes
10
VMS Layers Command Line Interpreter –Digital Command Language (DCL) –Others available –DECwindows (GUI) Figure 2-2. The OpenVMS GUI Is Based on the Original DECwindows
11
VMS Processes Process Control Block –Each process assigned a PCB at creation –Each process retains block until process end or removal –PCB specifies Scheduling state Privileges User identification code (UIC) Username Process ID Data Protection –Accomplished with 35 privilege states divided into 7 categories
12
VMS Processes VMS Quotas –Controls allocation of system resources –System services defines quota at process creation time –Quotas protects against Too many processes trying to access CPU A single process from being allocated too much memory
13
VMS Processes Process Scheduling –32 (0 to 31) Priority levels –0 to 15 are time-sharing processes Base priority of 4 Boosted a maximum of six priority levels –I/O Bound processes generally boosted –CPU Bound processes generally operate near base Round Robin –Time quantum defines how long a process gets the CPU
14
VMS Processes Process Scheduling (continued) –16 to 31 are real-time processes Do not get boosted Only pre-empted when higher process arrives or the process issues a wait state No Round-Robin Scheduling When real-time processes are present the system works entirely as a real-time system
15
VMS Processes Cascading Termination –Parent termination causes child termination Process Deletion –Processes Delete themselves After they have completed Called to delete themselves by another process (higher priority) VMS Threads –User-level and Kernel-level threads Kernel-level threads –Not supported until Version 7.0 1995 –Only supported on Alpha systems
16
VMS Memory Management Virtual Memory –Allocating more memory than is physically available VMS is Comprised of a Swapper and Pager –Pager (AKA Page Fault Handler) When a process demands a page not in memory a page fault is generated Pager brings virtual pages into physical memory
17
VMS Memory Management The Swapper –Responsible for processes into and out of memory –Works with same criteria as pagers Higher processes gets priority Memory Allocation Unit –Memory Page Size Fixed –512 bytes (VAX VMS) Variable –8 to 64 kilobytes (OpenVMS Alpha) –For compatibility 512 byte area “pagelet” is available
18
VMS Deadlock Handling VMS Lock Manager 1.Deadlock Suspicion –A process becomes “suspicious” if the process does not resolve in a given time 2.Deadlock Detection –“Suspicious” processes are searched by lock manager and determined to be deadlocked 3.Choose a Victim –Lock manager arbitrarily chooses a process to send a deadlock error status. –Process is then responsible for resolving the deadlock
19
Symmetric Multi-Processing Multiple threads can run on multiple processors Utilizes per-CPU data base –Data structure that manages processor specific information –Assigns each processor number (0 to 31) which corresponds to a particular bit If that bit is clear then the cpu is free and should attempt to select a process to execute
20
Windows NT and VMS David Cutler –Chief architect of VMS –1981 – Began Prism and Mica projects –1988 – DEC cancels Projects –1988 – Cutler and 20 top engineers go to Microsoft Some alleged Cutler took more than just engineers, the source code for Mica –1993 – Windows NT (“New Technology”) released WNT was a pun on VMS (shift each letter one position in alphabetical order)
21
Windows NT and VMS Similarities VMSNT 32 Priority Levels Process Scheduler never lowers process priority below application’s programmed level Boosts priority levels Supports SMP Uses demand-paged virtual memory management scheme Implements asynchronous packet- based I/O commands Performance Monitor VMS TermNT Term Interrupt Priority LevelInterrupt Request Level Asynchronous System Trap Asynchronous Procedure Call I/O Request Packet Bug Check System Service Paged Pool Nonpaged Pool Look aside list
22
Windows NT and VMS Differences –NT written Completely in C –NT supported kernel-level threads first Digital’s Response –Digital decides not to sue –Reaches Agreement with Microsoft Microsoft must –Train digital NT technicians –Promote NT and Open-VMS as two pieces of a three-tiered client/server networking solution –Maintain NT support for Alpha processors Small Cash payout –65 to 100 million
23
Conclusion and Questions VMS operating system has existed for 25 years and looks to exist for many more Questions ?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.