* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download VMS-Spr-2001-sect-1-group
Survey
Document related concepts
Copland (operating system) wikipedia , lookup
Plan 9 from Bell Labs wikipedia , lookup
Security-focused operating system wikipedia , lookup
Library (computing) wikipedia , lookup
Distributed operating system wikipedia , lookup
Spring (operating system) wikipedia , lookup
Memory management unit wikipedia , lookup
Burroughs MCP wikipedia , lookup
Transcript
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