HP Openvms Programming Concepts Manual, Volume II

Total Page:16

File Type:pdf, Size:1020Kb

HP Openvms Programming Concepts Manual, Volume II HP OpenVMS Programming Concepts Manual, Volume II Order Number: AA–PV67H–TK January 2005 This manual is Volume II of two volumes. It describes the features that the HP OpenVMS operating system provides to programmers. Revision/Update Information: This manual supersedes the HP OpenVMS Programming Concepts Manual, Version 7.3-1. Software Version: OpenVMS I64 Version 8.2 OpenVMS Alpha Version 8.2 Hewlett Packard Company Palo Alto, California © 2005 Hewlett-Packard Development Company, L.P. Confidential computer software. Valid license from HP required for possession, use or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor’s standard commercial license. The information contained herein is subject to change without notice. The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein. Microsoft, Windows, and Windows NT are U.S. registered trademarks of Microsoft Corporation. UNIX is a registered trademark of The Open Group. X/Open is a registered trademark, and the X device is a trademark of X/Open Company Ltd. in the UK and other countries. Intel and Itanium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. Printed in the U.S. ZK6641 The HP OpenVMS documentation set is available on CD-ROM. This document was prepared using DECdocument, Version 3.3-1b. Contents Preface ............................................................ xxi Part I OpenVMS Programming Interfaces: Calling a System Routine 17 Call Format to OpenVMS Routines 17.1 Overview . ................................................ 17–1 17.2 Format Heading ............................................. 17–2 17.2.1 Procedure Call Format ..................................... 17–3 17.2.2 JSB Call Format (VAX only) ................................ 17–4 17.3 Returns Heading ............................................ 17–4 17.3.1 Condition Values Returned in a Register ....................... 17–4 17.3.2 Other Returned Values .................................... 17–5 17.3.3 Condition Values Signaled . ................................ 17–6 17.4 Arguments Heading . ........................................ 17–6 17.4.1 OpenVMS Usage Entry .................................... 17–6 17.4.2 Type Entry .............................................. 17–7 17.4.3 Access Entry ............................................ 17–9 17.4.4 Mechanism Entry . ........................................ 17–10 17.4.5 Explanatory Text . ........................................ 17–10 17.5 Condition Values Returned Heading ............................. 17–11 17.5.1 Condition Values Returned . ................................ 17–12 17.5.2 Condition Values Returned in an I/O Status Block ............... 17–12 17.5.3 Condition Values Returned in a Mailbox ....................... 17–13 17.5.4 Condition Values Signaled . ................................ 17–13 18 Basic Calling Standard Conventions 18.1 Hardware Registers . ........................................ 18–1 18.1.1 Register Usage for OpenVMS VAX ............................ 18–1 18.1.2 Register Usage for OpenVMS Alpha . ....................... 18–2 18.1.2.1 Integer Registers ...................................... 18–2 18.1.2.2 Floating-Point Registers . ................................ 18–3 18.1.3 Register Usage for OpenVMS I64 ............................ 18–3 18.1.3.1 Partitioning . ........................................ 18–4 18.1.3.2 I64 General Register Usage .............................. 18–4 18.1.3.3 I64 Floating-Point Register Usage . ....................... 18–7 18.1.3.4 I64 Predicate Register Usage ............................. 18–7 18.1.3.5 I64 Branch Register Usage .............................. 18–8 18.2 Stack Usage for Procedures .................................... 18–8 18.2.1 Stack Procedure Usage for VAX .............................. 18–8 18.2.1.1 Calling Sequence ...................................... 18–10 18.2.1.2 Call Frames on Return . ................................ 18–10 iii 18.2.2 Stack Procedure Usage for Alpha . ............................ 18–10 18.2.2.1 Fixed-Size Stack Frame ................................. 18–10 18.2.2.2 Variable-Size Stack Frame . ............................ 18–11 18.2.3 Stack Procedure Usage for I64 . ............................ 18–13 18.2.3.1 Procedure Types . .................................... 18–14 18.2.3.2 Memory Stack ........................................ 18–15 18.2.3.3 Procedure Frames . .................................... 18–15 18.2.3.4 Register Stack ........................................ 18–17 18.2.3.4.1 Input and Local Registers ............................ 18–17 18.2.3.4.2 Output Registers ................................... 18–18 18.2.3.4.3 Rotating Registers .................................. 18–18 18.2.3.4.4 Frame Markers .................................... 18–19 18.2.3.4.5 Backing Store for Register Stack ....................... 18–19 18.3 Procedure Representation . .................................... 18–20 18.4 Argument List . ............................................ 18–20 18.5 Argument Passing Mechanisms ................................. 18–24 18.5.1 Passing Arguments by Value ................................ 18–27 18.5.2 Passing Arguments by Reference . ............................ 18–27 18.5.3 Passing Arguments by Descriptor ............................ 18–29 18.5.4 Parameter Passing Mechanisms for I64 ........................ 18–31 18.5.4.1 Allocation of Parameter Slots . ............................ 18–31 18.5.5 Normal Register Parameters ................................ 18–32 18.5.6 Argument Information (AI) Register .......................... 18–34 18.5.7 Memory Stack Parameters .................................. 18–36 18.5.8 Variable Argument Lists ................................... 18–36 18.5.9 Pointers to Formal Parameters . ............................ 18–36 18.5.9.1 Languages Other than C ................................ 18–37 18.5.10 Rounding Floating-Point Values . ............................ 18–37 18.6 Passing Scalars as Arguments .................................. 18–37 18.7 Passing Arrays as Arguments .................................. 18–37 18.8 Passing Strings as Arguments .................................. 18–37 18.9 Combinations of Descriptor Class and Data Type ................... 18–38 18.10 Function Value Return ........................................ 18–41 18.11 Condition Value Return . .................................... 18–42 18.12 Macro-32 Register Usage and Mapping for I64 . ................... 18–43 18.12.1 I64 Register Usage Compared with Alpha and VAX . ........... 18–43 18.12.1.1 I64 Register Mapping in MACRO Compiler .................. 18–44 18.12.1.2 Use of MACRO Linkage Directives to Preserve Registers ....... 18–46 18.12.2 High-Level Language Compiler Register Mapping ................ 18–47 19 Calling Run-Time Library Routines 19.1 Overview .................................................. 19–1 19.2 Call Instructions ............................................ 19–3 19.2.1 Facility Prefix and Routine Name ............................ 19–3 19.2.2 The RTL Call Entry . .................................... 19–4 19.2.2.1 JSB Call Entries (VAX Only) . ............................ 19–6 19.2.3 Returns from an RTL Routine . ............................ 19–6 19.2.3.1 Facility Return Status and Condition Value Symbols .......... 19–6 19.3 Calling a Library Procedure in VAX MACRO (VAX Only) . ........... 19–7 19.3.1 VAX MACRO Calling Sequence . ............................ 19–7 19.3.2 VAX MACRO CALLS Instruction Example . ................... 19–8 19.3.3 VAX MACRO CALLG Instruction Example . ................... 19–9 19.3.4 VAX MACRO JSB Entry Points . ............................ 19–9 iv 19.3.5 Return Status . ........................................ 19–10 19.3.6 Function Return Values in VAX MACRO (VAX and Alpha) . ....... 19–11 19.4 Calling a Library Routine in BLISS .............................. 19–12 19.4.1 BLISS Calling Sequence . ................................ 19–12 19.4.2 Accessing a Return Status in BLISS . ....................... 19–13 19.4.3 Calling JSB Entry Points from BLISS . ....................... 19–13 20 Calling System Services 20.1 Overview . ................................................ 20–1 20.2 Preserving System Integrity . ................................ 20–2 20.2.1 User Privileges . ........................................ 20–2 20.2.2 Resource Quotas . ........................................ 20–2 20.2.3 Access Modes ............................................ 20–2 20.3 System Service Call Entry ..................................... 20–3 20.4 System Service Completion .................................... 20–5 20.4.1 Asynchronous and Synchronous System Services . ............... 20–5 20.4.2 System Service Resource Wait Mode . ....................... 20–6 20.4.3 Condition Values Returned from System Services . ............... 20–7 20.4.4 Testing the Condition Value . ................................ 20–8 20.4.4.1 Testing the Condition Value With $VMS_STATUS_SUCCESS Macro ............................................... 20–8 20.4.5 Special Condition Values
Recommended publications
  • Operating System Engineering, Lecture 3
    6.828 2012 Lecture 3: O/S Organization plan: O/S organization processes isolation topic: overall o/s design what should the main components be? what should the interfaces look like? why have an o/s at all? why not just a library? then apps are free to use it, or not -- flexible some tiny O/Ss for embedded processors work this way key requirement: support multiple activities multiplexing isolation interaction helpful approach: abstract services rather than raw hardware file system, not raw disk TCP, not raw ethernet processes, not raw CPU/memory abstractions often ease multiplexing and interaction and more convenient and portable note: i'm going to focus on mainstream designs (xv6, Linux, &c) for *every* aspect, someone has done it a different way! example: exokernel and VMM does *not* abstract anything! xv6 has only a few abstractions / services processes (cpu, mem) I/O (file descriptors) file system i'm going to focus on xv6 processes today a process is a running program it has its own memory, share of CPU, FDs, parent, children, &c it uses system calls to interact outside itself to get at kernel services xv6 basic design here very traditional (UNIX/Linux/&c) xv6 user/kernel organization h/w, kernel, user kernel is a big program services: process, FS, net low-level: devices, VM all of kernel runs w/ full hardware privilege (very convenient) system calls switch between user and kernel 1 good: easy for sub-systems to cooperate (e.g. paging and file system) bad: interactions => complex, bugs are easy, no isolation within o/s called "monolithic";
    [Show full text]
  • The Design of a Pascal Compiler Mohamed Sharaf, Devaun Mcfarland, Aspen Olmsted Part I
    The Design of A Pascal Compiler Mohamed Sharaf, Devaun McFarland, Aspen Olmsted Part I Mohamed Sharaf Introduction The Compiler is for the programming language PASCAL. The design decisions Concern the layout of program and data, syntax analyzer. The compiler is written in its own language. The compiler is intended for the CDC 6000 computer family. CDC 6000 is a family of mainframe computer manufactured by Control Data Corporation in the 1960s. It consisted of CDC 6400, CDC 6500, CDC 6600 and CDC 6700 computers, which all were extremely rapid and efficient for their time. It had a distributed architecture and was a reduced instruction set (RISC) machine many years before such a term was invented. Pascal Language Imperative Computer Programming Language, developed in 1971 by Niklaus Wirth. The primary unit in Pascal is the procedure. Each procedure is represented by a data segment and the program/code segment. The two segments are disjoint. Compiling Programs: Basic View Machine Pascal languag program Pascal e compile program filename . inpu r gp output a.out p t c Representation of Data Compute all the addresses at compile time to optimize certain index calculation. Entire variables always are assigned at least one full PSU “Physical Storage Unit” i.e CDC6000 has ‘wordlength’ of 60 bits. Scalar types Array types the first term is computed by the compiler w=a+(i-l)*s Record types: reside only within one PSU if it is represented as packed. If it is not packed its size will be the size of the largest possible variant. Data types … Powerset types The set operations of PASCAL are realized by the conventional bit-parallel logical instructions ‘and ‘ for intersection, ‘or’ for union File types The data transfer between the main store buffer and the secondary store is performed by a Peripheral Processor (PP).
    [Show full text]
  • Foundation API Client Library PHP – Usage Examples By: Juergen Rolf Revision Version: 1.2
    Foundation API Client Library PHP – Usage Examples By: Juergen Rolf Revision Version: 1.2 Revision Date: 2019-09-17 Company Unrestricted Foundation API Client Library PHP – Installation Guide Document Information Document Details File Name MDG Foundation API Client Library PHP - Usage Examples_v1_2 external.docx Contents Usage Examples and Tutorial introduction for the Foundation API Client Library - PHP Author Juergen Rolf Version 1.2 Date 2019-09-17 Intended Audience This document provides a few examples helping the reader to understand the necessary mechanisms to request data from the Market Data Gateway (MDG). The intended audience are application developers who want to get a feeling for the way they can request and receive data from the MDG. Revision History Revision Date Version Notes Author Status 2017-12-04 1.0 Initial Release J. Rolf Released 2018-03-27 1.1 Adjustments for external J. Rolf Released release 2019-09-17 1.2 Minor bugfixes J. Ockel Released References No. Document Version Date 1. Quick Start Guide - Market Data Gateway (MDG) 1.1 2018-03-27 APIs external 2. MDG Foundation API Client Library PHP – Installation 1.2 2019-09-17 Guide external Company Unrestricted Copyright © 2018 FactSet Digital Solutions GmbH. All rights reserved. Revision Version 1.2, Revision Date 2019-09-17, Author: Juergen Rolf www.factset.com | 2 Foundation API Client Library PHP – Installation Guide Table of Contents Document Information ............................................................................................................................
    [Show full text]
  • Entry Point Specification
    EMV® Contactless Specifications for Payment Systems Book B Entry Point Specification Version 2.6 July 2016 © 2016 EMVCo, LLC. All rights reserved. Reproduction, distribution and other use of this document is permitted only pursuant to the applicable agreement between the user and EMVCo found at www.emvco.com. EMV® is a registered trademark or trademark of EMVCo, LLC in the United States and other countries. EMV Contactless Book B Entry Point Specification version 2.6 Legal Notice The EMV® Specifications are provided “AS IS” without warranties of any kind, and EMVCo neither assumes nor accepts any liability for any errors or omissions contained in these Specifications. EMVCO DISCLAIMS ALL REPRESENTATIONS AND WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT, AS TO THESE SPECIFICATIONS. EMVCo makes no representations or warranties with respect to intellectual property rights of any third parties in or in relation to the Specifications. EMVCo undertakes no responsibility to determine whether any implementation of the EMV® Specifications may violate, infringe, or otherwise exercise the patent, copyright, trademark, trade secret, know-how, or other intellectual property rights of third parties, and thus any person who implements any part of the EMV® Specifications should consult an intellectual property attorney before any such implementation. Without limiting the foregoing, the Specifications may provide for the use of public key encryption and other technology, which may be the subject matter of patents in several countries. Any party seeking to implement these Specifications is solely responsible for determining whether its activities require a license to any such technology, including for patents on public key encryption technology.
    [Show full text]
  • Chapter 6: the Linker
    6. The Linker 6-1 Chapter 6: The Linker References: • Brian W. Kernighan / Dennis M. Ritchie: The C Programming Language, 2nd Ed. Prentice-Hall, 1988. • Samuel P. Harbison / Guy L. Steele Jr.: C — A Reference Manual, 4th Ed. Prentice-Hall, 1995. • Online Documentation of Microsoft Visual C++ 6.0 (Standard Edition): MSDN Library: Visual Studio 6.0 release. • Horst Wettstein: Assemblierer und Binder (in German). Carl Hanser Verlag, 1979. • Peter Rechenberg, Gustav Pomberger (Eds.): Informatik-Handbuch (in German). Carl Hanser Verlag, 1997. Kapitel 12: Systemsoftware (H. M¨ossenb¨ock). Stefan Brass: Computer Science III Universit¨atGiessen, 2001 6. The Linker 6-2 Overview ' $ 1. Introduction (Overview) & % 2. Object Files, Libraries, and the Linker 3. Make 4. Dynamic Linking Stefan Brass: Computer Science III Universit¨atGiessen, 2001 6. The Linker 6-3 Introduction (1) • Often, a program consists of several modules which are separately compiled. Reasons are: The program is large. Even with fast computers, editing and compiling a single file with a million lines leads to unnecessary delays. The program is developed by several people. Different programmers cannot easily edit the same file at the same time. (There is software for collaborative work that permits that, but it is still a research topic.) A large program is easier to understand if it is divided into natural units. E.g. each module defines one data type with its operations. Stefan Brass: Computer Science III Universit¨atGiessen, 2001 6. The Linker 6-4 Introduction (2) • Reasons for splitting a program into several source files (continued): The same module might be used in different pro- grams (e.g.
    [Show full text]
  • Openshift Container Platform 3.11 CLI Reference
    OpenShift Container Platform 3.11 CLI Reference OpenShift Container Platform 3.11 CLI Reference Last Updated: 2021-04-12 OpenShift Container Platform 3.11 CLI Reference OpenShift Container Platform 3.11 CLI Reference Legal Notice Copyright © 2021 Red Hat, Inc. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/ . In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. Linux ® is the registered trademark of Linus Torvalds in the United States and other countries. Java ® is a registered trademark of Oracle and/or its affiliates. XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and other countries. Node.js ® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
    [Show full text]
  • Message from the Editor
    Article Reading Qualitative Studies Margarete Sandelowski University of North Carolina at Chapel Hill Chapel Hill, North Carolina, USA Julie Barroso University of North Carolina at Chapel Hill Chapel Hill, North Carolina, USA © 2002 Sandelowski et al. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Abstract In this article, the authors hope to shift the debate in the practice disciplines concerning quality in qualitative research from a preoccupation with epistemic criteria toward consideration of aesthetic and rhetorical concerns. They see epistemic criteria as inevitably including aesthetic and rhetorical concerns. The authors argue here for a reconceptualization of the research report as a literary technology that mediates between researcher/writer and reviewer/reader. The evaluation of these reports should thus be treated as occasions in which readers seek to make texts meaningful, rather than for the rigid application of standards and criteria. The authors draw from reader-response theories, literature on rhetoric and representation in science, and findings from an on-going methodological research project involving the appraisal of a set of qualitative studies. Keywords: Reader-response, reading, representation, rhetoric, qualitative research, quality criteria, writing Acknowledgments: We thank the members of
    [Show full text]
  • HP Openvms Utility Routines Manual
    HP OpenVMS Utility Routines Manual Order Number: BA554-90019 June 2010 This manual describes the OpenVMS utility routines, a set of routines that provide a programming interface to various OpenVMS utilities. Revision/Update Information: This manual supersedes the HP OpenVMS Utility Routines Manual, OpenVMS Alpha Version 8.3. Software Version: OpenVMS Version 8.4 for Integrity servers OpenVMS Alpha Version 8.4 Hewlett-Packard Company Palo Alto, California © Copyright 2010 Hewlett-Packard Development Company, L.P. Confidential computer software. Valid license from HP required for possession, use or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor’s standard commercial license. The information contained herein is subject to change without notice. The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein. Intel and Itanium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. ZK4493 The HP OpenVMS documentation set is available on CD. This document was prepared using DECdocument, Version 3.3-1B. Contents Preface ............................................................ xvii 1 Introduction to Utility Routines 2 Access Control List (ACL) Editor Routine 2.1 Introduction to the ACL Editor Routine ........................... ACL–1 2.2 Using the ACL Editor Routine: An Example ....................... ACL–1 2.3 ACL Editor Routine . ........................................ ACL–2 ACLEDIT$EDIT ...........................................
    [Show full text]
  • Command Line Interface Overview
    Command Line Interface Overview Note The ASR 5000 hardware platform has reached end of life and is not supported in this release. Any references to the ASR 5000 (specific or implied) or its components in this document are coincidental. Full details on the ASR 5000 hardware platform end of life are available at: https://www.cisco.com/c/en/us/products/collateral/wireless/asr-5000-series/eos-eol-notice-c51-735573.html. This chapter describes the numerous features in the command line interface (CLI). It includes information about the architecture of the CLI, its command modes and user privileges, how to obtain help within the CLI, and other key items. The operating system (StarOS™) controls the overall system logic, control processes, and the CLI. The CLI is a multi-threaded user interface that allows you to manipulate, configure, control and query the hardware and software components that make up the system and its hosted services. In addition, the CLI can host multiple instances of management and service configuration sessions. This allows multiple users to simultaneously access and manage multiple hosted services. This section provides the following information about the CLI: • CLI Structure, on page 1 • CLI Command Modes, on page 2 • CLI Administrative Users, on page 2 • CLI Contexts, on page 7 • Understanding the CLI Command Prompt, on page 8 • CLI Command Syntax, on page 9 • Entering and Viewing CLI Commands, on page 9 • Obtaining CLI Help, on page 13 • Exiting the CLI and CLI Command Modes, on page 14 • IP Address Notation, on page 15 • Alphanumeric Strings, on page 16 CLI Structure CLI commands are strings of commands or keywords and user-specified arguments that set or modify specific parameters of the system.
    [Show full text]
  • 1 Introduction to C – Part I
    1 Introduction to C – part I In this class, we will be employing the modern “C” language which is com- 1 monly used for scientific programming . “C” is closely related to C++ which is an Object Oriented language. It turns out that, while occasionally useful, the Object Oriented properties of C++ are not required for most types of scientific programming. In addition, acquiring a working knowledge of C++ can involve quite a steep learning curve. The object of this class is to get you up to speed as rapidly as possible in a powerful and versatile programming language (we have about three weeks to do that!) and then to introduce you to a number of numerical techniques useful and essential for work in physics and engineering. As it turns out, many software programming pack- ages, such as MathCad and IDL, have syntaxes that are very similar to “C”, and so learning “C” is an excellent entry point for a host of other program- ming environments. Some of you will already have a working knowledge of C or C++. If you don’t, the following three chapters will get you started. Otherwise, consider them a quick refresher. Read: The C Programming Language: Chapter 1. 1.1 Computer Memory and Variables Basically speaking, a computer program is a series of statements that manip- ulate data stored in the computer’s memory and yields a (hopefully useful) result. One can think of the memory of a computer as a series of boxes, each of which can contain one piece of data (a number, a character, etc.).
    [Show full text]
  • The Programming Language Concurrent Pascal
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. SE-I, No.2, JUNE 1975 199 The Programming Language Concurrent Pascal PER BRINCH HANSEN Abstract-The paper describes a new programming language Disk buffer for structured programming of computer operating systems. It e.lt­ tends the sequential programming language Pascal with concurx:~t programming tools called processes and monitors. Section I eltplains these concepts informally by means of pictures illustrating a hier­ archical design of a simple spooling system. Section II uses the same enmple to introduce the language notation. The main contribu~on of Concurrent Pascal is to extend the monitor concept with an .ex­ Producer process Consumer process plicit hierarchy Of access' rights to shared data structures that can Fig. 1. Process communication. be stated in the program text and checked by a compiler. Index Terms-Abstract data types, access rights, classes, con­ current processes, concurrent programming languages, hierarchical operating systems, monitors, scheduling, structured multiprogram­ ming. Access rights Private data Sequential 1. THE PURPOSE OF CONCURRENT PASCAL program A. Background Fig. 2. Process. INCE 1972 I have been working on a new programming .. language for structured programming of computer S The next picture shows a process component in more operating systems. This language is called Concurrent detail (Fig. 2). Pascal. It extends the sequential programming language A process consists of a private data structure and a Pascal with concurrent programming tools called processes sequential program that can operate on the data. One and monitors [1J-[3]' process cannot operate on the private data of another This is an informal description of Concurrent Pascal.
    [Show full text]
  • WINDOWS POWERSHELL 4.0 LANGUAGE QUICK REFERENCE Created By
    WINDOWS POWERSHELL 4.0 LANGUAGE QUICK REFERENCE Created by http://powershellmagazine.com Useful Commands Bitwise Operators , Comma operator (Array -band Bitwise AND constructor) Update-Help Downloads and installs newest help -bor Bitwise OR (inclusive) . Dot-sourcing operator runs a files -bxor Bitwise OR (exclusive) script in the current scope Get-Help Displays information about -bnot Bitwise NOT . c:\scripts\sample.ps1 commands and concepts -shl, -shr Bitwise shift operators. Bit Get-Command Gets all commands shift left, bit shift right $( ) Subexpression operator Get-Member Gets the properties and methods (arithmetic for signed, @( ) Array subexpression operator of objects logical for unsigned values) & The call operator, also known as Get-Module Gets the modules that have been the "invocation operator," lets imported or that can be imported Other Operators you run commands that are into the current session -Split Splits a string stored in variables and “abcdefghi” -split “de” represented by strings. Operators $a = "Get-Process" -join Joins multiple strings & $a Assignment Operators “abc”,”def”,”ghi” -join “;” $sb = { Get-Process | Select –First 2 } =, +=, -=, *=, /=, %=, ++, -- Assigns one or more values & $sb to a variable .. Range operator Logical Operators 1..10 | foreach {$_ * 5} Comparison Operators -and, -or, -xor, -not, ! Connect expressions and -eq, -ne Equal, not equal statements, allowing you to test -is, -isnot Type evaluator (Boolean). -gt, -ge Greater than, greater than for multiple conditions Tells whether an object is an or equal to Redirection Operators instance of a specified .NET -lt, -le Less than, less than or >, >> The redirection operators enable Framework type. equal to you to send particular types of 42 –is [int] -replace changes the specified output (success, error, warning, elements of a value verbose, and debug) to files and -as Type convertor.
    [Show full text]