The IBM System/ Introduction

Size: px
Start display at page:

Download "The IBM System/38. 8.1 Introduction"

Transcription

1 8 The IBM System/ Introduction IBM s capabiity-based System38 [Berstis 80a, Houdek 81, IBM Sa, IBM 82b], announced in 1978 and deivered in 1980, is an outgrowth of work that began in the ate sixties and eary seventies on IBM s future system (FS) project. Designers at the IBM Deveopment Laboratory in Rochester, Minnesota incorporated ideas from FS, modified by their needs, to produce a system for the commercia marketpace. It is interesting that such an advanced, object-based architecture has been appied to a very traditiona product space. Initiay, ony the COBOL and RPG III anguages were provided. The system, which incudes the CPF (Contro Program Faciity) operating system, is intended to support transaction processing and database appications constructed in commercia anguages. A major goa of the System38 design is to maintain programmer independence from the system impementation [Dahby SO]; IBM wished to retain maximum fexibiity to modify System38 s impementation for future technoogies whie supporting previousy written System38 programs. The designers aso wished to support a high eve of integrity and security at the machine interface and to support commony executed user and system functions efficienty, such as database searches and memory management [Hoffman 801. To meet these goas, IBM chose a ayered machine structure with a high-eve programming interface. The ayers of this design are shown in Figure 8-. At the owest eve is a hardware machine that directy exe- 137

2 The IBM System/38 User Appications Verticai Horizon&/ Hardware Microcode Microcode Machine Figure 8-1: System/38 Impementation Layers cutes 32-bit horizonta microcode. This horizonta microcode impements a more-or-ess standard 32-bit register machine that executes vertica microcode. The interface above the vertica microcode, caed the high-eve architecture interface in Figure 8-1, is the eve described in this chapter; it supports the user-visibe (or CPF-visibe) System38. This high-eve architecture interface is supported across impementations, whie the structure of the underying ayers can change. For exampe, performance-critica functions, such as interprocess communication and memory aocation, are handed by the horizonta microcode. The system object and capabiity support is handed in part by both microcode ayers. Different functions can be moved between microcode eves or into hardware in future versions, as performance experience is gained. In fact, this movement has aready occurred on newer System38 reeases and modes. The CPF operating system and the vertica microcode are impemented in PLiS, a PLiI-ike system programming anguage. There are approximatey 900,000 ines of high-eve PWS code and an additiona 400,000 ines of microcode support needed to impement CPF and its program products, The System38 hardware incudes a non-removabe disk that hods this arge store of microcode. The System38 s high-eve architecture interface is actuay an intermediate anguage produced by a System38 compiers. Before a program is executed, CPF transates this intermediate anguage into vertica microcode and cas to vertica microcode 138 Athough IBM cas this ayer vertica microcode, it woud generay not be considered microcode because it resembes a traditiona IBM 370-ike 32-bit instruction set and is programmed in a high-eve anguage.

3 procedures. That is, the high-eve interface is not directy executed. This transation process is described ater. IBM terminoogy is used throughout this chapter for compatibiity with System/38 pubications; it differs somewhat from that used in previous chapters. In particuar, IBM uses the foowing terms: space for segment, pointer for capabiity, authority for rights, and context for directory. These synonyms wi be presented again as each of the terms is introduced. 8.2 System Objects 8.2 System Objects System/38 instructions operate on two types of entities: scaar data eements and system objects. The scaar types are 16- and 32-bit signed binary, zoned and packed decima, and character strings. The machine supports 14 types of system objects, described in Tabe 8-1. A set of type-specific instructions is provided for each system type. SPACE PROGRAM USER PROFILE CONTEXT QUEUE byte-addressabe storage segment procedure instructions and associated data object containing information about user s resource imits and authority to access any system objects directory of object names and capabiities message queue for interprocess communication DATA SPACE coection of identicay-structured records DATA SPACE INDEX object used to provide ogica ordering for data space entries CURSOR direct interface to entries in a data space, or indirect interface through a data space index INDEX accesses data sequences based on key vaues PROCESS CONTROL SPACE object containing state information for a process ACCESS GROUP set of objects grouped together for paging performance reasons LOGICAL UNIT DESCRIPTION object describing an I/O device CONTROLLER DESCRIPTION object describing the attributes of a device controer NETWORK DESCRIPTION object describing a communications port Tab/e 8-1: Systemi System Object Types 139

4 The IBM System138 Each system object consists of two parts: a functiona portion and an optiona space portion, as shown in Figure 8-2. The functiona portion of an object is a segment containing object state (its representation); the data in the functiona portion can be examined and modified ony by microcode as a resut of type-specific instructions. Thus, the functiona portion is said to be encapsuated because it is not accessibe to programs [Pinnow 801. Optionay, a space portion can be associated with an object (IBM uses the word space to refer to a storage segment). The space portion is an attached segment for storing scaars and pointers that can be directy manipuated by user programs. Every object in the system has severa associated attributes. First is a type that identifies it as one of the 14 system object types isted in Tabe 8-1. (Objects can aso have subtypes for further software cassification.) Second is a symboic text name chosen by the user to refer to the object. Last is a unique identifier (ID) that uniquey specifies an object for the ife of the system. Object identifiers are never reused. When an object is created, the object ID is assigned by the system, whie the text name and type are specified by the programmer. Athough the contents and format of the encapsuated data in an object are not programmer accessibe, programmers must be abe to specify initia object vaues or examine an object s state. The System/38 instruction set uses tempates to convey initia information and communicate encapsuated data. A tempate is simpy a data structure with defined fieds used to transmit information at the instruction eve. For exampe, the CREATE QUEUE instruction needs to specify some information about the maximum number of messages, the size of messages, the queueing discipine, and so on. This information is 140 Figure 8-2. IBM System138 System Object

5 conveyed by creating a tempate in a space and specifying a capabiity to that space as a parameter to the instruction. Later, an instruction can be executed to produce a tempate showing information about the queue. Athough the architecture fixes the format of the tempate used to communicate information at the high-eve interface, it does not dictate how that information is maintained once it is encapsuated within the object. The ony object not containing a functiona part is a space object. A space object is a contiguous segment and is the ony object that can be manipuated at the byte eve by scaar instructions. A system object, then, is an instance of an abstract data type. System/38 instructions exist to create, manipuate, examine, and deete each of the system object types. The machine provides an interface that hides the impementation of an object from the user. An object s state is stored in one or more segments; its attributes incude a type that indicates what operations are aowed and an identifier that uniquey specifies the object. A base segment for each object contains pointers to any other segments composing the object, as we as type and ID information. 8.3 Object Addressing 8.3 Object Addressing Before examining object addressing in detai, it is necessary to describe memory management and segment addressing on the System38. Object addressing, using capabiities, is based on ower-eve segment addressing mechanisms Virtua Memory The IBM System38 architecture supports a fat, singeeve, 64-bit virtua address space. To the user at the high-eve interface (either the operating system or appication programmer), a addressabe objects and segments are in directy accessibe memory; there is no concept of secondary storage. The System/38 microcode is responsibe for moving segments between primary and secondary storage to create this virtua memory environment. The structure of a 64-bit virtua address is shown in Figure 8-3. The System38 segment size is 64K bytes. Each segment is divided into 512-byte pages. The ow-order 16 bits of the ad- 141

6 The IBM System p~o~i-- Segmeni Group Page Byte extended identification ID number offset L Figure 8-3: System138 Virtua Address dress thus provide the page number and byte offset for the. pages of a segment. For arger objects, up to 256 segments can be grouped together into segment groups. The group ID fied specifies which 64K-byte segment is being addressed within a 16M-byte segment group. The next 24 bits of the address provide a unique segment ID for the segment group. The System38 hardware ony supports 48-bit physica addresses composed of these fieds. However, when an object is created, the microcode extends the address to 64 bits by adding an additiona 16-bit fied. The fu 64-bit address is stored in a specia header with the segment. When a 64-bit address is used to access a segment, the upper 16 bits of the address are compared with the upper 16 bits of address in the segment s header. If a mismatch occurs, the addressed object has been destroyed and the reference is not aowed. At any one time, then, there can ony be 224 or 16 miion segment groups in existence. Because the address space is so arge, particuary with the i6-bit extension to the segment ID fied, segment IDS are never reused. The system assigns a new segment ID at creation that is unique for the ife of the system. If the object is deeted, references to the segment ID are not aowed. The system need not search for danging references when an object is deeted. The segment ID, therefore, provides a mechanism for determining the unique ID for system objects. System objects are named with the unique ID of the first segment containing the functiona portion of the object. The unique ID is the upper six bytes of the virtua address Pointers 142 As in other capabiity systems, objects as we as scaar data eements are addressed through capabiities. System/38 capabiities are known as pointers. There are four types of pointers in the System38:

7 system pointers address the 14 system object types (isted in Tabe 8-), space pointers address a specific byte within a space object (segment), data pointers address a specific byte within a space and aso contain attribute information describing the type of eement (e.g., character or decima), and instruction pointers address branch targets within programs. 8.3 Object Addressing Each System/38 pointer is 16 bytes ong. In order to access an object or an eement within a segment, a program must specify a pointer that addresses the object or segment eement. Pointers can contain different information at various times, incuding symboic text names, authorization information (access rights), the object type, and the unique ID for system pointers or virtua address for data and space pointers. The information within a pointer can be modified, for exampe, from text name to unique ID, to aow for ate binding of the pointer to the object. Unike the systems previousy examined, which use C-ists for the storage of capabiities, System38 pointers can be freey mixed in segments aong with scaar data. To aow storing of capabiities with data in the same segment whie sti maintaining capabiity integrity, the System38 impements a memory tagging scheme. Memory is byte addressabe and words are 32 bits ong. However, physica words of primary memory are actuay 40 bits wide. Invisibe to the programmer are a -bit tag fied and a 7-bit error correcting code. Pointers must be aigned on 16-byte boundaries. When a pointer is stored in a segment by a vaid pointer instruction, the hardware sets the associated tag bits for the four consecutive 32-bit words used to hod the pointer. Any instruction that requires a pointer operand checks that the pointer is aigned and that the four tag bits are set before using the eement for addressing. Program data instructions can freey examine pointers. However, if a program instruction modifies any data in a pointer, the microcode turns off the tag bit in the associated word or words, invaidating the pointer. Tabe 8-2 ists some of the instructions that operate on System/38 pointers. Note that a space object (a memory segment) is a system object that is addressed by a system pointer. A space pointer, on the other hand, is a capabiity that addresses a particuar byte in a space object. 143

8 The IBM System138 i44 ADD SPACE POINTER adds a signed offset to the byte address in a space pointer COMPARE POINTER FOR ADDRESSABILITY compares two pointers to see if they address the same object, the same space, or the same space eement RESOLVE POINTER searches a directory (see Section 8.3.3) for a named object and returns a pointer for that object SET DATA POINTER returns a data pointer for an eement in a space SET SPACX POINTER returns a space pointer for an eement in a space SET SPACE POINTER FROM POINTER if the source is a space or data pointer, creates a space pointer for the specified byte; or if the source is a system pointer, returns a space pointer for the associated space SET SYSTEM POINTER FROM POINTER if the source is a space or data pointer, returns a pointer for the system object conraining the associated space; if the source is a system pointer, returns a system pointer for that same object Tab/e 8-2: Contexts Svstemi38 Pointer Instructions Pointers are used to address objects; however, users refer to objects by symboic text names. System objects caed contexts impement directories for storing symboic object names and pointers. When a new object is created, its symboic name and an associated pointer are stored in a specified context. Tabe 8-3 ists the context instructions supported by the Systemi38. The symboic names stored in contexts are not necessariy unique, and a user can possess severa contexts containing the same name but referring to different objects. This feature aows for testing and ogica object substitution. A program that refers to an object by name can receive different objects depending on what context is used for name resourion. When a reference is made to a pointer containing an object name, the system examines the user s Name Resoution List (NRL). The NRL contains pointers to user contexts in the order that they shoud be searched. By changing the context ordering or manipuating entries, the user can change the objects on which the program operates.

9 CREATE CONTEXT creates a new context object and returns a system pointer to address it DESTROY CONTEXT deetes a context object MATERIALIZE CONTEXT returns name and pointer for one or more objects addressed by a context RENAME OBJECT changes the symboic name for an object in a context 8.3 Object Addressing Tab/e 8-3: System/38 Context Instructions Physica Address Mapping Because of the arge size of a System38 virtua address, standard address transation schemes invoving indexing of segment/page tabes with the segment/page number address fied cannot be used. Instead, the System38 hardware uses hashing with inked ist coision resoution to find the primary memory address for a specified virtua address. The basic units of physica and virtua storage are 5 12-byte pages. A transation scheme is used to ocate a page in primary memory. The upper 39 bits of a 48-bit virtua address, encompassing the unique segment ID, specify a unique virtua page address for the page. A hashing function is appied to these bits to obtain an index into a data structure caed the Hash Index Tabe (HIT), shown in Figure 8-4. The hashing function is an EXCLUSIVE-OR of ow-order bits from the segment ID and group ID fieds, and reverse-order bits from the page number fied. This function provides uniform mapping from the sparse address space to the HIT [Houdek 801. The HIT entry contains an index of an entry in the Page Directory Tabe (PDT). The PDT contains one entry for each page of primary memory. Each entry contains the virtua address of a corresponding primary memory page. That is, the index into the PDT is the page frame number for the virtua address described in the entry. Each entry aso contains a ink. The hardware checks the virtua address at the first entry pointed to by the HIT and foows the inked ist unti a virtua address match is found or the ist ends. If a match is found, the index of that entry is used as the page frame number in the primary memory address. If no match is found, the page is not 145

10 The IBM System I Wtua page address (Hash) Byte Virtua Address 4 Page directory index Hash index Tabe (H/U L--c Virtua address Link 1 (List search) Page Directory (PD T) Tabe Virtua address NM (P D T index) Physicai page frame Byte Physica Address Figure 8-4. System/38 Virtua Address Transation 146 in primary memory and the hardware must oad the page from secondary storage. The performance of this search depends on the uniformity of the hashing function and the ength of the ists in the Page Directory Tabe. In order to shorten the ist engths, the Hash Index Tabe is constructed to be twice the size of the Page Directory Tabe. Two optimizations are used to avoid this two-eve tabe search on every reference. First, the hardware contains a twoway associative transation buffer to cache recent address transations (the buffer size is different for different System38 modes, typicay 2 x 64 or 2 x 128 entries). To check the transation buffer, the virtua page fied is hashed to an offset that seects one entry in each haf of the buffer. The two seected entries, which contain a virtua page address and transated primary memory page frame number, are checked for a match. If the virtua address matches, the page frame number is used to construct the primary memory address. If no match occurs,

11 the tabe search proceeds, eventuay repacing one of the seected transation buffer entries with its data, based on a east recenty used bit. The second optimization is the use of resoved address registers in the hardware. These registers are used in the CPU to hod virtua page, physica page, and byte offset information whie a page is being processed. As ong as references are made to the addressed page (e.g., during the sequentia search of eements of an array), the hardware need not search the transation buffer for consecutive accesses. 8.4 Profies and Authority 8.4 Profies and Authority The System/38 hardware provides a mechanism for ensuring privacy and separation of data and for sharing information between users. The basic unit of computation, from which protection stems, is the process. Each user process is defined by a Process Contro Space object that contains its state. When a user ogs onto the system, a new process is created; a user profie object is associated with that process based on the user s name. The user profie contains: the user s name, the user s password, any specia authorization or privieges the user possesses, the maximum priority, the maximum storage usage, an initia program to run upon og-in (if any), a ist of objects that the user owns, and a ist of non-owned objects that the user is authorized to access, and the permitted authorities. A authority to perform operations on objects is rooted in the user profie. When an object is created, it is created with an attribute stating whether the object is permanent or temporary. The profie associated with the process issuing the CREATE operation on a permanent object becomes the owner of the object. An owner has a rights to the object and can perform any operations, incuding deetion. Temporary objects receive no protection and have no owner. They are destroyed when the system is booted. The owner of an object can grant various types of access to other user profies in the system. There are a number of authorities, or access rights, that a process can have with respect to an object. The authorities define what object operations the 147

12 The IBM System138 process can perform. The authorities aso define what operations can be performed on pointers for the object. Object authorities are divided into three categories: object contro authority gives the possessor contro of the object s existence (for exampe, the right to deete or transfer ownership), object management authority permits the hoder to change addressabiity (for exampe, to rename the object or grant authority to other profies), and operationa management authority incudes basic access rights to the contents of the object, such as retrieve, insert, deete, and update entry priviege. The authority information for each object is thus profie-based. Each user has a profie that indicates what objects are owned and what access is permitted to other objects. If a user wishes to aow access for an owned object to another user, the owner grants authority for the object to the sharer s profie. To execute a GRANT AuTHoRrTY instruction, a user must own an object or have object management rights. A user cannot grant an authority that the user does not possess. Tabe 8-4 ists some of the profie/authority management instructions supported by the Systemi38. These instructions aow a propery authorized user to grant access privieges to other users, to examine what objects are authorized to him or her, and to see what authorizations have been given to other users for owned objects. In addition to specific object authority granted to specific profies, each object can have an associated pubic authorization. The object s owner grants pubic authority with the GRANT AUTHORITY instruction by omitting the profie parameter. The pubic authority is stored in the object s header and aows any user to access the object in the permitted modes. When an attempt is made to access an object, the pubic authority is checked first. If the access is not permitted by the object s pubic authority, the user s profie is then examined Authority/Pointer Resoution Thus far, the System38 protection mechanism has been described from the perspective of the profie object. The profie provides a standard Access Contro List mechanism. The owner of an object can expicity permit other profies to have access to that object and can ater revoke that access.

13 CREATE USER PROFILE buids a new user profie (this operation is privieged) DESTROY USER PROFILE deetes a profie GRANT AUTHORITY grants specified authorities for an object to a specified user profie MATERIALIZE AUTHORIZED OBJECTS returns ist of a owned objects or authorized objects MATERIALIZE AUTHORIZED USERS returns a ist of owning or authorized users for a specified object RETRACT AUTHORITY revokes or modifies authority for an object from a specified user profie 8.4 Profies and Authority TEST AUTHORITY tests if specified authorities are granted to the current process for a specified object TRANSFER OWNERSHIP transfers ownership of an object to another profie Tab/e 8-4: System38 Authority Management Instructions The abiity to revoke object access is an important part of the System38 design; this feature has not been provided in any of the previousy examined systems. Revocation is, in fact, a difficut probem in capabiity systems and is generay expensive to impement in terms of addressing overhead. The IBM System38 design aows an object s owner to decide whether revocation is needed for the object. The System/38 provides two pointer formats: one for which access can be revoked and another for which access cannot be revoked. An object s owner can decide which type of pointer to use for each object in each instance depending on the reative importance of revocation and addressing efficiency. In order to access an object in the System38 a process must possess a pointer for that object. Pointers can be stored in two formats: unauthorized and authorized. An unauthorized pointer contains an object s unique identifier but does not contain authorizations (i.e., access rights) to the object. When an unauthorized pointer is used to access an object, the hardware checks the profie of the executing process to verify that the requested operation is permitted. Without this check, revoca- 149

14 The IBM System138 tion of authority woud be impossibe. An unauthorized pointer, then, cannot be used in the way that traditiona capabiities can be used. Additiona overhead is added to pointer usage because of the profie check. In cases where revocation is not required or higher performance is needed, access rights can be stored in a pointer, creating an authorized pointer. An authorized pointer acts as a capabiity, and reference to an object with an authorized pointer does not require a profie ookup. The RESOLVE SYSTEM POINTER instruction is used to create authorized pointers. An authorized pointer can ony be created by a user whose profie has object management authority for the object; the created pointer cannot have rights not avaiabe to the creating profie. Once constructed, an authorized pointer maintains authority to access an object for the ife of that object. The pointer can be stored and passed to other processes. Because the profie check is avoided with authorized pointer usage, authority cannot be revoked ater Programs/Procedures IBM uses the term program to refer to what is typicay caed a procedure or subroutine. A System38 program is an executabe system object. A program object is created by a CREATE PROGRAM instruction, which specifies a tempate containing System38 instructions and associated data structures. The CREATE PROGRAM instruction returns a system pointer aowing the program to be caed. As noted previousy, the System38 source anguage (i.e., the high-eve architecture interface shown in Figure S-) is reay an intermediate anguage produced by compiers. The effect of the CREATE PROGRAM instruction is to compie this intermediate anguage source into microcode that can be executed on the next owest eve of the machine. Source instructions, depending on their compexity, either compie directy into System38 vertica micro-instructions or into micro-procedure cas. The compied program is thus encapsuated in the program object, and the form of the micro-machine is hidden by the CREATE PROGRAM instruction. Once encapsuated, the format of a program object cannot be exammed. Thus, the System38 high-eve architecture is never directy executed. It is a specification for a anguage that a System38 impementations support; however, that anguage is transated

15 into a proprietary vertica micro-anguage before execution. The format of the encapsuated program in this micro-anguage cannot be examined and can be different on different System38 impementations. 8.5 Programs/Procedures The Instruction Stream The program tempate presented to the CREATE PROGRAM instruction consists of three parts: a program consisting of a sequence of instructions, an Object Definition Tabe (ODT), and user data. Each instruction consists of a number of 2-byte fieds incuding an operation code, an optiona operation code extender, and one to four operands. The operands can specify iteras, eements in space objects, pointers to system objects, and so on. The information about operand addressing and characteristics is stored in the Object Definition Tabe incuded in the tempate. The ODT is a dictionary that describes operands for the instruction stream. Each instruction operand contains an index into the Object Definition Tabe. The ODT actuay consists of two parts: a vector of fured-ength (4-byte) eements caed the Object Directory Vector (ODV), and a vector of variabe-ength entries caed the ODT Enty String (OES). An operand is either competey described by its 4-byte ODV entry, or the ODV entry has a partia description and a pointer into the OES, where the remaining description is found. Most commony occurring cases are handed by the fured-ength ODV itsef. Severa ODV entries can point to the same OES entry. The ODT can contain information such as operand type (e.g., fixed-ength decima string), size, ocation, aocation (static or dynamic), initia vaue, and so on. Figure 8-5 shows an exampe of an insrruction with three operands. The operands index ODT information defining their type and ocation. Each instruction operand consists of one or more 2-byte fieds. The first 2-byte fied contains a 3-bit mode fied and a 13-bit ODV index. The mode fied indicates what type of addressing is required and what additiona 2-byte fieds (caed secondary operands) foow in the instruction stream to describe the operand competey. For exampe, a string operand may require three 2-byte fieds to describe a base, index, and ength. 151

16 The IBM System138 Opcode Operands Opcode Operands -- Instruction - I I I I I I I Stream - Object Definition Tabe COD Ti 1 1 Binary (2) ISpacepointer( ( Figure 8-5 System/38 Exampe High-eve Instruction Since the ODT competey describes each operand, the scaar opcodes are generic. For exampe, there is ony one ADD NUMERIC instruction that operates on a numeric data types. The machine interprets the ODT entry to decide how the operation shoud be performed and what conversions are required. The Object Mapping Tabe (OMT) is the fina data structure that is part of the encapsuated program (athough not incuded in the initia tempate). It contains 6-byte mapping entries for each entry in the ODV that maps to a space Program Activation and Invocation A program, then, is a system object that represents a separatey compied unit of execution (typicay known as a procedure). Programs are caed by the CALL instruction. There are actuay two parts to the initiation of a program on the System/38: activation and invocation. Before a program can be invoked (caed), it must be activated. Activation of the program causes static storage for the program to be aocated and initiaized. Aso, any goba variabes in program static storage are made addressabe. A process data structure caed the Process Static Storage Area (PSSA) contains an activation entry for each activated program in the process. The activation entry contains status information, a count of the number of invocations using the activation, the

17 size of static storage, and the storage itsef. The first entry in the PSSA contains headers for the chain of activation entries and a free space chain. invocation occurs as the resut of a transfer of contro to the program. At invocation time, program automatic (that is, dynamic) storage is aocated and initiaized in a process data structure caed the Process Automatic Storage Area (PASA). Each invocation entry contains status information, a pointer to the previous invocation entry, a pointer to the program, and the automatic storage. After the invocation entry is aocated and initiaized, contro is transferred to the program at its entry point. Activation can occur impicity or expicity. If invocation is requested of a program that has not been activated, activation is done automaticay by the hardware. 8.5 Programs/Procedures Protected Procedures The IBM System38 provides a mechanism for creating protected subsystems. As on previous systems, a protected subsystem mechanism must aow programs to execute in an ampified protection environment. That is, some programs must be abe to access objects not avaiabe to their caer. Since the System38 profie object defines a domain of protection, protected subsystems are provided through profie-based faciities caed profie adoption and profie propagation. The authority of each System38 process is determined by its profie. When a process cas a program, that program generay gains access to the process s profne and, therefore, to the process objects. However, it is possibe to construct System38 programs that can access additiona objects not avaiabe to the caer. When a program is created, the program s owner can specify that the program retain access to the owneu s profie, as we as its caer s profie. This feature, caed profie adoption, aows a caed program to access objects not avaiabe to the caer and can be used to construct a protected subsystem. Athough the genera caing mechanism aows a caed program access to its caer s profie, a caing process can aso restrict this abiity. When a program is created, the program s owner can specify whether its profie shoud be propagated to programs on cas. Thus, a program can aso see that its owner s profie is protected from access by programs further down the ca chain. 153

18 The IBM System Specia Privieges It is worth noting that there are some specia privieges in the System38 authorization system. In addition to objectbased authorities stored in a user profie, there may be other permitted authorities that are not connected with any particuar object. For exampe, the abiity to create user profies, diagnose the hardware, or create objects representing physica I/O devices can be controed by authorizations in a user profie. Aso, the abiity to dump and oad objects to removabe storage is protected, as we as the abiity to execute operations to modify or service system hardware attributes. Finay, some objects, such as user proies and device descriptions, receive specia protection and can ony be addressed through a specia machine context (directory) Discussion The IBM System38 is a compex architecture constructed from severa eves of hardware, microcode, and software. Because of its commercia orientation and the fact that it is avaiabe from IBM, the System38 is probaby destined to become, at east in the immediate future, the most pervasive object architecture. The most interesting feature of the Systemi38, from the viewpoint of capabiity systems, is its use of tagging. Capabiities and data can be freey mixed in segments with no oss of integrity. The abiity to mix data and capabiities generay permits more natura data structuring than the C-ist approach. A singe tag bit associated with each 32-bit word indicates whether or not the word is part of a capabiity. This tag bit is hidden from the programmer and accessibe ony to the microcode. To be used for addressing, a pointer must be aigned on a 16-byte boundary and have a four tag bits set. The aignment requirement prohibits the user from specifying four consecutive words with tags set that ie within two contiguous capabiities. The integrity of a capabiity system must be ensured on secondary storage as we as in primary memory, and the pointer tags must be saved on secondary storage. On the System/38, each disk page is 520 bytes ong and stores a 5 12-byte data page and an 8-byte header. The 8-byte header for each bock contains the virtua address for the page, an indication of whether or not the page contains any pointers, and if so, which 16-byte quadword contains the first pointer in the page. Each

19 page can contain, at most, 32 pointers; therefore, ony 32 bits 8.7 Discussion are required to specify whether each quadword contains a pointer. If a page contains pointers, the tag bits are stored within some unused bytes in the first 16-byte pointer on the page. When a page is written to disk, the hardware automaticay writes the disk bock header. When a page is read into primary memory, the header is automaticay removed and the tags are reconstructed. The System38 architecture provides a arge singe-eve address space. The detais of memory management, I/O, and so on are hidden from the programmer. There is no need for a traditiona fie system. A objects can be decared permanent when created, can be stored for ong periods of time, and can be addressed at any time as if they were in primary memory. Addressing is independent of the object s memory residency characteristics. One probem with schemes that remove the abstraction of secondary storage is in transaction systems or reiabe data base operations. In some instances, the programmer may wish to ensure that the atest copy of a segment or object is checkpointed onto ong-term storage. The one-eve memory scheme has removed the abiity to express the thought of writing the segment to disk. To sove this, CPF aows an object attribute that states how frequenty data is to be backed up for a particuar object. The System 38 permits revocation by adding an access contro ist mechanism to the capabiity addressing mechanism. Two types of pointers, authorized and unauth&zed, can be used depending on whether or not revocation is required. Authorized pointers are traditiona capabiities because they contain access rights and can be freey copied. Passing an authorized pointer passes both the addressing rights and privieges. The abiity to resove a pointer to oad the access rights is controed by an authorized pointer authorization. Ony suitaby privieged profies can create an authorized pointer. In contrast, an unauthorized pointer is not a capabiity in the traditiona sense. The same unauthorized pointer can permit different types of access when used by different processes. This is because the authorization rights are fetched from the process s profie when a reference is made. This extra step in pointer address evauation permits expicit contro over authority and combines the advantages of standard capabiity systems and access contro ists. The user can specify (and determine at any time) what other profues are aowed access to the user s objects. If ony unauthorized pointers have been distrib- 155

20 The IBM System138 uted, access can be revoked by removing authorization from other profies. Unauthorized pointers permit revocation but add compexity to the handing of pointers. For exampe, to pass a pointer to another process, the possessor of the pointer must be aware of whether that pointer is authorized or unauthorized. Unauthorized pointers, unike capabiities, are not context independent. If the pointer is unauthorized, passing it to another process wi not permit object access uness permission has been granted to the other process s profie. Aso, unauthorized pointers cannot easiy be used to buid and share data structures. For exampe, if a user wishes to buid a tree structure of segments and pass the tree or subtrees to other processes, the authorization scheme requires that authorization for each segment be granted separatey to each profie invoved. The structuring of System/38 authorizations permits cose contro of pointers. Given the division of authority into object contro, management, and access, it is possibe for one user to be abe to affect the propagation of addresses but not be abe to access object data. Another user may be abe to read and write but not propagate pointers. The arge size of the System38 address space simpifies many probems. Segment identifiers are arge enough that they are never reused. This aows use of the segment ID as a unique name for an object. Since the ID is never reused, there is no probem with danging references. An attempt to access a deeted object simpy causes an exception. Large IDS aso simpify the impementation of the one-eve memory system. There is no separation of ong-term unique ID and address. The unique ID is the virtua address used to access a specific object, segment, or byte. There is no need for separate inform and outform capabiities or for transforming capabiities in memory when a segment is removed from memory. 156 Athough the System38 instruction stream and Object Definition Tabe are never used for direct execution, this interface has some interesting features. The ODT provides a form of tagging somewhat different from the tagged architectures examined earier. Each data eement is tagged; however, the tag is part of the operand, not part of the eement. This aows for severa different views of the same data eement; different instructions can treat the same word as different data types. Operation codes can be generic, and conversion, truncation, etc. can be performed based on type information in the ODT. The information stored in the ODT and I-stream may not be ex-

Advanced ColdFusion 4.0 Application Development - 3 - Server Clustering Using Bright Tiger

Advanced ColdFusion 4.0 Application Development - 3 - Server Clustering Using Bright Tiger Advanced CodFusion 4.0 Appication Deveopment - CH 3 - Server Custering Using Bri.. Page 1 of 7 [Figures are not incuded in this sampe chapter] Advanced CodFusion 4.0 Appication Deveopment - 3 - Server

More information

SNMP Reference Guide for Avaya Communication Manager

SNMP Reference Guide for Avaya Communication Manager SNMP Reference Guide for Avaya Communication Manager 03-602013 Issue 1.0 Feburary 2007 2006 Avaya Inc. A Rights Reserved. Notice Whie reasonabe efforts were made to ensure that the information in this

More information

Art of Java Web Development By Neal Ford 624 pages US$44.95 Manning Publications, 2004 ISBN: 1-932394-06-0

Art of Java Web Development By Neal Ford 624 pages US$44.95 Manning Publications, 2004 ISBN: 1-932394-06-0 IEEE DISTRIBUTED SYSTEMS ONLINE 1541-4922 2005 Pubished by the IEEE Computer Society Vo. 6, No. 5; May 2005 Editor: Marcin Paprzycki, http://www.cs.okstate.edu/%7emarcin/ Book Reviews: Java Toos and Frameworks

More information

Chapter 3: e-business Integration Patterns

Chapter 3: e-business Integration Patterns Chapter 3: e-business Integration Patterns Page 1 of 9 Chapter 3: e-business Integration Patterns "Consistency is the ast refuge of the unimaginative." Oscar Wide In This Chapter What Are Integration Patterns?

More information

Avaya Remote Feature Activation (RFA) User Guide

Avaya Remote Feature Activation (RFA) User Guide Avaya Remote Feature Activation (RFA) User Guide 03-300149 Issue 5.0 September 2007 2007 Avaya Inc. A Rights Reserved. Notice Whie reasonabe efforts were made to ensure that the information in this document

More information

Chapter 3: JavaScript in Action Page 1 of 10. How to practice reading and writing JavaScript on a Web page

Chapter 3: JavaScript in Action Page 1 of 10. How to practice reading and writing JavaScript on a Web page Chapter 3: JavaScript in Action Page 1 of 10 Chapter 3: JavaScript in Action In this chapter, you get your first opportunity to write JavaScript! This chapter introduces you to JavaScript propery. In addition,

More information

3.3 SOFTWARE RISK MANAGEMENT (SRM)

3.3 SOFTWARE RISK MANAGEMENT (SRM) 93 3.3 SOFTWARE RISK MANAGEMENT (SRM) Fig. 3.2 SRM is a process buit in five steps. The steps are: Identify Anayse Pan Track Resove The process is continuous in nature and handed dynamicay throughout ifecyce

More information

With the arrival of Java 2 Micro Edition (J2ME) and its industry

With the arrival of Java 2 Micro Edition (J2ME) and its industry Knowedge-based Autonomous Agents for Pervasive Computing Using AgentLight Fernando L. Koch and John-Jues C. Meyer Utrecht University Project AgentLight is a mutiagent system-buiding framework targeting

More information

Introduction to XSL. Max Froumentin - W3C

Introduction to XSL. Max Froumentin - W3C Introduction to XSL Max Froumentin - W3C Introduction to XSL XML Documents Stying XML Documents XSL Exampe I: Hamet Exampe II: Mixed Writing Modes Exampe III: database Other Exampes How do they do that?

More information

Teach yourself Android application development - Part I: Creating Android products

Teach yourself Android application development - Part I: Creating Android products Teach yoursef Android appication deveopment - Part I: Creating Android products Page 1 of 7 Part of the EE Times Network A Artices Products Course TechPaper Webinars Login Register Wecome, Guest HOME DESIGN

More information

Application and Desktop Virtualization

Application and Desktop Virtualization Appication and Desktop Virtuaization Content 1) Why Appication and Desktop Virtuaization 2) Some terms reated to vapp and vdesktop 3) Appication and Desktop Deivery 4) Appication Virtuaization 5)- Type

More information

Normalization of Database Tables. Functional Dependency. Examples of Functional Dependencies: So Now what is Normalization? Transitive Dependencies

Normalization of Database Tables. Functional Dependency. Examples of Functional Dependencies: So Now what is Normalization? Transitive Dependencies ISM 602 Dr. Hamid Nemati Objectives The idea Dependencies Attributes and Design Understand concepts normaization (Higher-Leve Norma Forms) Learn how to normaize tabes Understand normaization and database

More information

Australian Bureau of Statistics Management of Business Providers

Australian Bureau of Statistics Management of Business Providers Purpose Austraian Bureau of Statistics Management of Business Providers 1 The principa objective of the Austraian Bureau of Statistics (ABS) in respect of business providers is to impose the owest oad

More information

WHITE PAPER BEsT PRAcTIcEs: PusHIng ExcEl BEyond ITs limits WITH InfoRmATIon optimization

WHITE PAPER BEsT PRAcTIcEs: PusHIng ExcEl BEyond ITs limits WITH InfoRmATIon optimization Best Practices: Pushing Exce Beyond Its Limits with Information Optimization WHITE Best Practices: Pushing Exce Beyond Its Limits with Information Optimization Executive Overview Microsoft Exce is the

More information

Order-to-Cash Processes

Order-to-Cash Processes TMI170 ING info pat 2:Info pat.qxt 01/12/2008 09:25 Page 1 Section Two: Order-to-Cash Processes Gregory Cronie, Head Saes, Payments and Cash Management, ING O rder-to-cash and purchase-topay processes

More information

Bite-Size Steps to ITIL Success

Bite-Size Steps to ITIL Success 7 Bite-Size Steps to ITIL Success Pus making a Business Case for ITIL! Do you want to impement ITIL but don t know where to start? 7 Bite-Size Steps to ITIL Success can hep you to decide whether ITIL can

More information

Oracle Project Financial Planning. User's Guide Release 11.1.2.2

Oracle Project Financial Planning. User's Guide Release 11.1.2.2 Orace Project Financia Panning User's Guide Reease 11.1.2.2 Project Financia Panning User's Guide, 11.1.2.2 Copyright 2012, Orace and/or its affiiates. A rights reserved. Authors: EPM Information Deveopment

More information

Lecture 7 Datalink Ethernet, Home. Datalink Layer Architectures

Lecture 7 Datalink Ethernet, Home. Datalink Layer Architectures Lecture 7 Dataink Ethernet, Home Peter Steenkiste Schoo of Computer Science Department of Eectrica and Computer Engineering Carnegie Meon University 15-441 Networking, Spring 2004 http://www.cs.cmu.edu/~prs/15-441

More information

SABRe B2.1: Design & Development. Supplier Briefing Pack.

SABRe B2.1: Design & Development. Supplier Briefing Pack. SABRe B2.1: Design & Deveopment. Suppier Briefing Pack. 2013 Ros-Royce pc The information in this document is the property of Ros-Royce pc and may not be copied or communicated to a third party, or used

More information

Pay-on-delivery investing

Pay-on-delivery investing Pay-on-deivery investing EVOLVE INVESTment range 1 EVOLVE INVESTMENT RANGE EVOLVE INVESTMENT RANGE 2 Picture a word where you ony pay a company once they have deivered Imagine striking oi first, before

More information

Fast Robust Hashing. ) [7] will be re-mapped (and therefore discarded), due to the load-balancing property of hashing.

Fast Robust Hashing. ) [7] will be re-mapped (and therefore discarded), due to the load-balancing property of hashing. Fast Robust Hashing Manue Urueña, David Larrabeiti and Pabo Serrano Universidad Caros III de Madrid E-89 Leganés (Madrid), Spain Emai: {muruenya,darra,pabo}@it.uc3m.es Abstract As statefu fow-aware services

More information

INDUSTRIAL AND COMMERCIAL

INDUSTRIAL AND COMMERCIAL Finance TM NEW YORK CITY DEPARTMENT OF FINANCE TAX & PARKING PROGRAM OPERATIONS DIVISION INDUSTRIAL AND COMMERCIAL ABATEMENT PROGRAM PRELIMINARY APPLICATION AND INSTRUCTIONS Mai to: NYC Department of Finance,

More information

NCH Software Warp Speed PC Tune-up Software

NCH Software Warp Speed PC Tune-up Software NCH Software Warp Speed PC Tune-up Software This user guide has been created for use with Warp Speed PC Tune-up Software Version 1.xx NCH Software Technica Support If you have difficuties using Warp Speed

More information

PREFACE. Comptroller General of the United States. Page i

PREFACE. Comptroller General of the United States. Page i - I PREFACE T he (+nera Accounting Office (GAO) has ong beieved that the federa government urgenty needs to improve the financia information on which it bases many important decisions. To run our compex

More information

NCH Software BroadCam Video Streaming Server

NCH Software BroadCam Video Streaming Server NCH Software BroadCam Video Streaming Server This user guide has been created for use with BroadCam Video Streaming Server Version 2.xx NCH Software Technica Support If you have difficuties using BroadCam

More information

Chapter 2 Traditional Software Development

Chapter 2 Traditional Software Development Chapter 2 Traditiona Software Deveopment 2.1 History of Project Management Large projects from the past must aready have had some sort of project management, such the Pyramid of Giza or Pyramid of Cheops,

More information

WEBSITE ACCOUNT USER GUIDE SECURITY, PASSWORD & CONTACTS

WEBSITE ACCOUNT USER GUIDE SECURITY, PASSWORD & CONTACTS WEBSITE ACCOUNT USER GUIDE SECURITY, PASSWORD & CONTACTS Password Reset Process Navigate to the og in screen Seect the Forgot Password ink You wi be asked to enter the emai address you registered with

More information

Teamwork. Abstract. 2.1 Overview

Teamwork. Abstract. 2.1 Overview 2 Teamwork Abstract This chapter presents one of the basic eements of software projects teamwork. It addresses how to buid teams in a way that promotes team members accountabiity and responsibiity, and

More information

1B11 Operating Systems. Input/Output and Devices

1B11 Operating Systems. Input/Output and Devices University Coege London 1B11 Operating Systems Input/Output and s Prof. Steve R Wibur s.wibur@cs.uc.ac.uk Lecture Objectives How do the bits of the I/O story fit together? What is a device driver? 1B11-5

More information

Chapter 3: Authentication and Resource Protection in Windows 2000

Chapter 3: Authentication and Resource Protection in Windows 2000 Chapter 3: Authentication and Resource Protection in Windows 2000 Page 1 of 23 Chapter 3: Authentication and Resource Protection in Windows 2000 Because this is a user administration book, not a security

More information

Early access to FAS payments for members in poor health

Early access to FAS payments for members in poor health Financia Assistance Scheme Eary access to FAS payments for members in poor heath Pension Protection Fund Protecting Peope s Futures The Financia Assistance Scheme is administered by the Pension Protection

More information

Oracle. L. Ladoga Rybinsk Res. Volga. Finland. Volga. Dnieper. Dnestr. Danube. Lesbos. Auditing Oracle Applications Peloponnesus

Oracle. L. Ladoga Rybinsk Res. Volga. Finland. Volga. Dnieper. Dnestr. Danube. Lesbos. Auditing Oracle Applications Peloponnesus N o r w e g i a n S e a White 60ûN ATLANTIC OCEAN UNITED KINGDOM Rio Douro Hebrid Bay of Biscay Garonne Faroe Isands Shetand Isands Orkney Isands North Loire ine Rhone Rhine Po Ebe Adriatic Batic Guf of

More information

Best Practices for Push & Pull Using Oracle Inventory Stock Locators. Introduction to Master Data and Master Data Management (MDM): Part 1

Best Practices for Push & Pull Using Oracle Inventory Stock Locators. Introduction to Master Data and Master Data Management (MDM): Part 1 SPECIAL CONFERENCE ISSUE THE OFFICIAL PUBLICATION OF THE Orace Appications USERS GROUP spring 2012 Introduction to Master Data and Master Data Management (MDM): Part 1 Utiizing Orace Upgrade Advisor for

More information

(12) Patent Application Publication (10) Pub. N0.: US 2006/0105797 A1 Marsan et al. (43) Pub. Date: May 18, 2006

(12) Patent Application Publication (10) Pub. N0.: US 2006/0105797 A1 Marsan et al. (43) Pub. Date: May 18, 2006 (19) United States US 20060105797A (12) Patent Appication Pubication (10) Pub. N0.: US 2006/0105797 A1 Marsan et a. (43) Pub. Date: (54) METHOD AND APPARATUS FOR (52) US. C...... 455/522 ADJUSTING A MOBILE

More information

The Comparison and Selection of Programming Languages for High Energy Physics Applications

The Comparison and Selection of Programming Languages for High Energy Physics Applications The Comparison and Seection of Programming Languages for High Energy Physics Appications TN-91-6 June 1991 (TN) Bebo White Stanford Linear Acceerator Center P.O. Box 4349, Bin 97 Stanford, Caifornia 94309

More information

Multi-Robot Task Scheduling

Multi-Robot Task Scheduling Proc of IEEE Internationa Conference on Robotics and Automation, Karsruhe, Germany, 013 Muti-Robot Tas Scheduing Yu Zhang and Lynne E Parer Abstract The scheduing probem has been studied extensivey in

More information

Design Considerations

Design Considerations Chapter 2: Basic Virtua Private Network Depoyment Page 1 of 12 Chapter 2: Basic Virtua Private Network Depoyment Before discussing the features of Windows 2000 tunneing technoogy, it is important to estabish

More information

The BBC s management of its Digital Media Initiative

The BBC s management of its Digital Media Initiative The BBC s management of its Digita Media Initiative Report by the Comptroer and Auditor Genera presented to the BBC Trust s Finance and Compiance Committee, 13 January 2011 Department for Cuture, Media

More information

Hyperion Enterprise. Installation Guide RELEASE 6.5.1.1.000

Hyperion Enterprise. Installation Guide RELEASE 6.5.1.1.000 Hyperion Enterprise Instaation Guide RELEASE 6.5.1.1.000 Hyperion Enterprise Instaation Guide, 6.5.1.1.000 Copyright 1991, 2012, Orace and/or its affiiates. A rights reserved. Authors: EPM Information

More information

TCP/IP Gateways and Firewalls

TCP/IP Gateways and Firewalls Gateways and Firewas 1 Gateways and Firewas Prof. Jean-Yves Le Boudec Prof. Andrzej Duda ICA, EPFL CH-1015 Ecubens http://cawww.epf.ch Gateways and Firewas Firewas 2 o architecture separates hosts and

More information

Setting Up Your Internet Connection

Setting Up Your Internet Connection 4 CONNECTING TO CHANCES ARE, you aready have Internet access and are using the Web or sending emai. If you downoaded your instaation fies or instaed esigna from the web, you can be sure that you re set

More information

Lexmark ESF Applications Guide

Lexmark ESF Applications Guide Lexmark ESF Appications Guide Hep your customers bring out the fu potentia of their Lexmark soutions-enabed singe-function and mutifunction printers Lexmark Appications have been designed to hep businesses

More information

NCH Software FlexiServer

NCH Software FlexiServer NCH Software FexiServer This user guide has been created for use with FexiServer Version 1.xx NCH Software Technica Support If you have difficuties using FexiServer pease read the appicabe topic before

More information

Fixed income managers: evolution or revolution

Fixed income managers: evolution or revolution Fixed income managers: evoution or revoution Traditiona approaches to managing fixed interest funds rey on benchmarks that may not represent optima risk and return outcomes. New techniques based on separate

More information

Learning from evaluations Processes and instruments used by GIZ as a learning organisation and their contribution to interorganisational learning

Learning from evaluations Processes and instruments used by GIZ as a learning organisation and their contribution to interorganisational learning Monitoring and Evauation Unit Learning from evauations Processes and instruments used by GIZ as a earning organisation and their contribution to interorganisationa earning Contents 1.3Learning from evauations

More information

MOS 2013 Study Guide. Microsoft Excel EXAM 77-420. Microsoft IT Academy

MOS 2013 Study Guide. Microsoft Excel EXAM 77-420. Microsoft IT Academy MOS 2013 Study Guide EXAM 77-420 Microsoft Exce Microsoft IT Academy Lambert Note This content aso pubished as MOS 2013 Study Guide for Exce spine =.39 Avaiabe at your favorite bookseers ISBN 978-0-7356-6920-8

More information

The eg Suite Enabing Rea-Time Monitoring and Proactive Infrastructure Triage White Paper Restricted Rights Legend The information contained in this document is confidentia and subject to change without

More information

NCH Software MoneyLine

NCH Software MoneyLine NCH Software MoneyLine This user guide has been created for use with MoneyLine Version 2.xx NCH Software Technica Support If you have difficuties using MoneyLine pease read the appicabe topic before requesting

More information

Integrating Risk into your Plant Lifecycle A next generation software architecture for risk based

Integrating Risk into your Plant Lifecycle A next generation software architecture for risk based Integrating Risk into your Pant Lifecyce A next generation software architecture for risk based operations Dr Nic Cavanagh 1, Dr Jeremy Linn 2 and Coin Hickey 3 1 Head of Safeti Product Management, DNV

More information

Business schools are the academic setting where. The current crisis has highlighted the need to redefine the role of senior managers in organizations.

Business schools are the academic setting where. The current crisis has highlighted the need to redefine the role of senior managers in organizations. c r o s os r oi a d s REDISCOVERING THE ROLE OF BUSINESS SCHOOLS The current crisis has highighted the need to redefine the roe of senior managers in organizations. JORDI CANALS Professor and Dean, IESE

More information

SELECTING THE SUITABLE ERP SYSTEM: A FUZZY AHP APPROACH. Ufuk Cebeci

SELECTING THE SUITABLE ERP SYSTEM: A FUZZY AHP APPROACH. Ufuk Cebeci SELECTING THE SUITABLE ERP SYSTEM: A FUZZY AHP APPROACH Ufuk Cebeci Department of Industria Engineering, Istanbu Technica University, Macka, Istanbu, Turkey - ufuk_cebeci@yahoo.com Abstract An Enterprise

More information

CI/SfB Ro8. (Aq) September 2012. The new advanced toughened glass. Pilkington Pyroclear Fire-resistant Glass

CI/SfB Ro8. (Aq) September 2012. The new advanced toughened glass. Pilkington Pyroclear Fire-resistant Glass CI/SfB Ro8 (Aq) September 2012 The new advanced toughened gass Pikington Pyrocear Fire-resistant Gass Pikington Pyrocear, fire-resistant screens in the façade: a typica containment appication for integrity

More information

The Domain Name System (DNS)

The Domain Name System (DNS) D 1 The Domain Name System (D) Prof. Jean-Yves Le Boudec Prof. ndrzej Duda IC, EPFL CH-1015 Ecubens http://cawww.epf.ch o o Domain Name System: D Objective of D support user friendy naming of resources:

More information

Secure Network Coding with a Cost Criterion

Secure Network Coding with a Cost Criterion Secure Network Coding with a Cost Criterion Jianong Tan, Murie Médard Laboratory for Information and Decision Systems Massachusetts Institute of Technoogy Cambridge, MA 0239, USA E-mai: {jianong, medard}@mit.edu

More information

The Web Insider... The Best Tool for Building a Web Site *

The Web Insider... The Best Tool for Building a Web Site * The Web Insider... The Best Too for Buiding a Web Site * Anna Bee Leiserson ** Ms. Leiserson describes the types of Web-authoring systems that are avaiabe for buiding a site and then discusses the various

More information

Driving Accountability Through Disciplined Planning with Hyperion Planning and Essbase

Driving Accountability Through Disciplined Planning with Hyperion Planning and Essbase THE OFFICIAL PUBLICATION OF THE Orace Appications USERS GROUP summer 2012 Driving Accountabiity Through Discipined Panning with Hyperion Panning and Essbase Introduction to Master Data and Master Data

More information

Sync Kit: A Persistent Client-Side Database Caching Toolkit for Data Intensive Websites

Sync Kit: A Persistent Client-Side Database Caching Toolkit for Data Intensive Websites WWW 2010 Fu Paper Apri 26-30 Raeigh NC USA Sync Kit: A Persistent Cient-Side Database Caching Tookit for Data Intensive Websites Edward Benson, Adam Marcus, David Karger, Samue Madden {eob,marcua,karger,madden}@csai.mit.edu

More information

Oracle Hyperion Tax Provision. User's Guide Release 11.1.2.2

Oracle Hyperion Tax Provision. User's Guide Release 11.1.2.2 Orace Hyperion Tax Provision User's Guide Reease 11.1.2.2 Tax Provision User's Guide, 11.1.2.2 Copyright 2013, Orace and/or its affiiates. A rights reserved. Authors: EPM Information Deveopment Team Orace

More information

CONTRIBUTION OF INTERNAL AUDITING IN THE VALUE OF A NURSING UNIT WITHIN THREE YEARS

CONTRIBUTION OF INTERNAL AUDITING IN THE VALUE OF A NURSING UNIT WITHIN THREE YEARS Dehi Business Review X Vo. 4, No. 2, Juy - December 2003 CONTRIBUTION OF INTERNAL AUDITING IN THE VALUE OF A NURSING UNIT WITHIN THREE YEARS John N.. Var arvatsouakis atsouakis DURING the present time,

More information

NCH Software Express Accounts Accounting Software

NCH Software Express Accounts Accounting Software NCH Software Express Accounts Accounting Software This user guide has been created for use with Express Accounts Accounting Software Version 5.xx NCH Software Technica Support If you have difficuties using

More information

Licensed to: CengageBrain User

Licensed to: CengageBrain User Licensed to: Licensed to: This is an eectronic version of the print textbook. Due to eectronic rights restrictions, some third party content may be suppressed. Editoria review has deemed that any suppressed

More information

Migrating and Managing Dynamic, Non-Textua Content

Migrating and Managing Dynamic, Non-Textua Content Considering Dynamic, Non-Textua Content when Migrating Digita Asset Management Systems Aya Stein; University of Iinois at Urbana-Champaign; Urbana, Iinois USA Santi Thompson; University of Houston; Houston,

More information

A Description of the California Partnership for Long-Term Care Prepared by the California Department of Health Care Services

A Description of the California Partnership for Long-Term Care Prepared by the California Department of Health Care Services 2012 Before You Buy A Description of the Caifornia Partnership for Long-Term Care Prepared by the Caifornia Department of Heath Care Services Page 1 of 13 Ony ong-term care insurance poicies bearing any

More information

L I C E N S I N G G U I D E

L I C E N S I N G G U I D E O R A C L E H Y P E R I O N E N T E R P R I S E P E R F O R M A N C E M A N A G E M E N T S Y S T E M L I C E N S I N G G U I D E EPM System Licensing Guide Copyright 2009, Orace and/or its affiiates.

More information

INTERNATIONAL PAYMENT INSTRUMENTS

INTERNATIONAL PAYMENT INSTRUMENTS INTERNATIONAL PAYMENT INSTRUMENTS Dr Nguyen Minh Duc 2009 1 THE INTERNATIONAL CHAMBER OF COMMERCE THE ICC AT A GLANCE represent the word business community at nationa and internationa eves promotes word

More information

Preschool Services Under IDEA

Preschool Services Under IDEA Preschoo Services Under IDEA W e don t usuay think of Specific Learning Disabiities in connection with chidren beow schoo age. When we think about chidren age birth to six, we think first of their earning

More information

Life Contingencies Study Note for CAS Exam S. Tom Struppeck

Life Contingencies Study Note for CAS Exam S. Tom Struppeck Life Contingencies Study Note for CAS Eam S Tom Struppeck (Revised 9/19/2015) Introduction Life contingencies is a term used to describe surviva modes for human ives and resuting cash fows that start or

More information

STRATEGIC PLAN 2012-2016

STRATEGIC PLAN 2012-2016 STRATEGIC PLAN 2012-2016 CIT Bishopstown CIT Cork Schoo of Music CIT Crawford Coege of Art & Design Nationa Maritime Coege of Ireand Our Institute STRATEGIC PLAN 2012-2016 Cork Institute of Technoogy (CIT)

More information

Information Systems Technician Training Series

Information Systems Technician Training Series NONRESIDENT TRAINING COURSE Information Systems Technician Training Series Modue 1 Administration and Security NAVEDTRA 14222 IMPORTANT Any future change to this course can be found at https://www.advancement.cnet.navy.mi,

More information

Accreditation: Supporting the Delivery of Health and Social Care

Accreditation: Supporting the Delivery of Health and Social Care Accreditation: Supporting the Deivery of Heath and Socia Care PHARMACY E F P T O L P E D P E C M F D T G L E F R Accreditation: Supporting the Deivery of Heath and Socia Care June 9, 2015 marks Word Accreditation

More information

Virtual trunk simulation

Virtual trunk simulation Virtua trunk simuation Samui Aato * Laboratory of Teecommunications Technoogy Hesinki University of Technoogy Sivia Giordano Laboratoire de Reseaux de Communication Ecoe Poytechnique Federae de Lausanne

More information

READING A CREDIT REPORT

READING A CREDIT REPORT Name Date CHAPTER 6 STUDENT ACTIVITY SHEET READING A CREDIT REPORT Review the sampe credit report. Then search for a sampe credit report onine, print it off, and answer the questions beow. This activity

More information

Example of Credit Card Agreement for Bank of America Visa Signature and World MasterCard accounts

Example of Credit Card Agreement for Bank of America Visa Signature and World MasterCard accounts Exampe of Credit Card Agreement for Bank of America Visa Signature and Word MasterCard accounts PRICING INFORMATION Actua pricing wi vary from one cardhoder to another Annua Percentage Rates for Purchases

More information

Technology and Consulting - Newsletter 1. IBM. July 2013

Technology and Consulting - Newsletter 1. IBM. July 2013 Technoogy and Consuting - Newsetter Juy 2013 Wecome to Latitude Executive Consuting s atest newsetter, reviewing recent marketpace activity. The newsetter focuses on the Technoogy and Consuting sectors,

More information

Professional Kingston

Professional Kingston Professiona Kingston Organisationa and workforce deveopment soutions n Facuty of Business and Law Aways improving 0/1 Contents Wecome 2 Why Kingston? 4 Course portfoio 6 Course detais 8 Work-based earning

More information

SPOTLIGHT. A year of transformation

SPOTLIGHT. A year of transformation WINTER ISSUE 2014 2015 SPOTLIGHT Wecome to the winter issue of Oasis Spotight. These newsetters are designed to keep you upto-date with news about the Oasis community. This quartery issue features an artice

More information

Planning your OpenStack Cloud. Tom Fifield tom@openstack.org @TomFifield

Planning your OpenStack Cloud. Tom Fifield tom@openstack.org @TomFifield Panning your OpenStack Coud Tom Fified tom@openstack.org @TomFified Introduction Software Engineering Partice Physics Buiding Couds OpenStack Community Manager Much of this presentation is based on the

More information

WHITE PAPER UndERsTAndIng THE VAlUE of VIsUAl data discovery A guide To VIsUAlIzATIons

WHITE PAPER UndERsTAndIng THE VAlUE of VIsUAl data discovery A guide To VIsUAlIzATIons Understanding the Vaue of Visua Data Discovery A Guide to Visuaizations WHITE Tabe of Contents Executive Summary... 3 Chapter 1 - Datawatch Visuaizations... 4 Chapter 2 - Snapshot Visuaizations... 5 Bar

More information

Ricoh Healthcare. Process Optimized. Healthcare Simplified.

Ricoh Healthcare. Process Optimized. Healthcare Simplified. Ricoh Heathcare Process Optimized. Heathcare Simpified. Rather than a destination that concudes with the eimination of a paper, the Paperess Maturity Roadmap is a continuous journey to strategicay remove

More information

A Supplier Evaluation System for Automotive Industry According To Iso/Ts 16949 Requirements

A Supplier Evaluation System for Automotive Industry According To Iso/Ts 16949 Requirements A Suppier Evauation System for Automotive Industry According To Iso/Ts 16949 Requirements DILEK PINAR ÖZTOP 1, ASLI AKSOY 2,*, NURSEL ÖZTÜRK 2 1 HONDA TR Purchasing Department, 41480, Çayırova - Gebze,

More information

APIS Software Training /Consulting

APIS Software Training /Consulting APIS Software Training /Consuting IQ-Software Services APIS Informationstechnoogien GmbH The information contained in this document is subject to change without prior notice. It does not represent any

More information

AA Fixed Rate ISA Savings

AA Fixed Rate ISA Savings AA Fixed Rate ISA Savings For the road ahead The Financia Services Authority is the independent financia services reguator. It requires us to give you this important information to hep you to decide whether

More information

Business Banking. A guide for franchises

Business Banking. A guide for franchises Business Banking A guide for franchises Hep with your franchise business, right on your doorstep A true understanding of the needs of your business: that s what makes RBS the right choice for financia

More information

A Conversation with enx@pacbell.net enx@pacbell.net www.enxmag.com

A Conversation with enx@pacbell.net enx@pacbell.net www.enxmag.com The #1 Sourcing Pubication in the Document Imaging Industry The #1 Sourcing Voume 11 Pubication No.7 in the Document Imaging Industry The #1 Sourcing Pubication in the Document Imaging Industry Sourcing

More information

professional indemnity insurance proposal form

professional indemnity insurance proposal form professiona indemnity insurance proposa form Important Facts Reating To This Proposa Form You shoud read the foowing advice before proceeding to compete this proposa form. Duty of Discosure Before you

More information

Hybrid IP-PBX Systems KX-TDA100 KX-TDA200 KX-TDA600. The intelligent business solution.

Hybrid IP-PBX Systems KX-TDA100 KX-TDA200 KX-TDA600. The intelligent business solution. Hybrid IP-PBX Systems KX-TDA100 KX-TDA200 KX-TDA600 The inteigent business soution. Hybrid IP-PBX KX-TDA Teecommunication Patform: Investment in a teecommunication system requires business communication

More information

LADDER SAFETY Table of Contents

LADDER SAFETY Table of Contents Tabe of Contents SECTION 1. TRAINING PROGRAM INTRODUCTION..................3 Training Objectives...........................................3 Rationae for Training.........................................3

More information

DECEMBER 2008. Good practice contract management framework

DECEMBER 2008. Good practice contract management framework DECEMBER 2008 Good practice contract management framework The Nationa Audit Office scrutinises pubic spending on behaf of Pariament. The Comptroer and Auditor Genera, Tim Burr, is an Officer of the House

More information

Network/Communicational Vulnerability

Network/Communicational Vulnerability Automated teer machines (ATMs) are a part of most of our ives. The major appea of these machines is convenience The ATM environment is changing and that change has serious ramifications for the security

More information

Advance PLM Software Solutions for Complex Business Processes

Advance PLM Software Solutions for Complex Business Processes Advance PLM Software Soutions for Compex Business Processes Abstract As customers word-wide camour for more technoogicay rich products, be it a car, or a smartphone, manufacturers are having to contend

More information

Federal Financial Management Certificate Program

Federal Financial Management Certificate Program MANAGEMENT CONCEPTS Federa Financia Management Certificate Program Training to hep you achieve the highest eve performance in: Accounting // Auditing // Budgeting // Financia Management ENROLL TODAY! Contract

More information

SQL. Ilchul Yoon Assistant Professor State University of New York, Korea. on tables. describing schema. CSE 532 Theory of Database Systems

SQL. Ilchul Yoon Assistant Professor State University of New York, Korea. on tables. describing schema. CSE 532 Theory of Database Systems CSE 532 Theory of Database Systems Lecture 03 SQL Ichu Yoon Assistant Professor State University of New York, Korea Adapted from book authors sides SQL Language for describing database schema & operations

More information

TMI ING Guide to Financial Supply Chain Optimisation 29. Creating Opportunities for Competitive Advantage. Section Four: Supply Chain Finance

TMI ING Guide to Financial Supply Chain Optimisation 29. Creating Opportunities for Competitive Advantage. Section Four: Supply Chain Finance TMI171 ING info pat :Info pat.qxt 19/12/2008 17:02 Page 29 ING Guide to Financia Suppy Chain Optimisation Creating Opportunities for Competitive Advantage Section Four: Suppy Chain Finance Introduction

More information

Remote Feature Activation Getting Started with Remote Feature Activation (RFA)

Remote Feature Activation Getting Started with Remote Feature Activation (RFA) Remote Feature Activation Getting Started with Remote Feature Activation (RFA) 03-300484 Issue 4.1 November 007 Contents Chapter 1: Remote Feature Activation Overview............. 7 RFA user requirements................................

More information

Income Protection Options

Income Protection Options Income Protection Options Poicy Conditions Introduction These poicy conditions are written confirmation of your contract with Aviva Life & Pensions UK Limited. It is important that you read them carefuy

More information

I m pretty lucky as far as teen librarians

I m pretty lucky as far as teen librarians feature Hot Spot: Teen Tech Week Onine Marketing Strategies for Reaching Today s Teens By Laura Peowski Horn I m pretty ucky as far as teen ibrarians go. The ibrary I work at is right next to the ony high

More information

NCH Software Copper Point of Sale Software

NCH Software Copper Point of Sale Software NCH Software Copper Point of Sae Software This user guide has been created for use with Copper Point of Sae Software Version 1.xx NCH Software Technica Support If you have difficuties using Copper Point

More information

eg Enterprise vs. a Big 4 Monitoring Soution: Comparing Tota Cost of Ownership Restricted Rights Legend The information contained in this document is confidentia and subject to change without notice. No

More information

Program Comprehension During Software Maintenance and Evolution

Program Comprehension During Software Maintenance and Evolution Program Comprehension During Software Maintenance and Evoution Armeiese von Mayrhauser A. Marie Vans Coorado State University Code cognition modes examine how programmers understand program code. The authors

More information