Upload
vishnu400
View
306
Download
10
Embed Size (px)
Citation preview
INTRODUCTION TO AS/400 Mid-range Machines
IBM AS/400 belongs to the category of minicomputers or the so called mid-range machines. These are generally medium sized computers and are between microcomputers and mainframe computers in terms of processing speed, storage capacity and the number of users that can be supported at once. There may be various reasons to opt for a mid-range machine over microcomputer or a mainframe. ♦ Microcomputers may not provide speed and storage capacity to the required extent.
♦ The no. of users supported is also less.
♦ Mainframes, inspite of having all the above facilities are very costly and require specialized personnel for
their set-up and maintenance and also occupy a lot of space with special environmental conditions.
Evolution of AS/400
The AS/400 is the latest mid-range machine introduced by IBM with the latest advancements and software incorporates which make it an efficient, easy-to-use and an unbeatable low cost business server. However, its history dates back to July, 1969, when IBM had introduces the S/3 (System 3) series. This was when IBM made a debut in smaller systems. It offered use of punch cards that were three times in size to today’s punch cards but could contain 120 percent of data. The next member of S/3x family was introduced in January, 1975, known as S/32. It allowed the user to interact with the system through a keyboard and
a monitor that could display only 240 characters (6 rows and 40 columns). It supported 32 KB of main memory and had a 13 MB hard disk.
In April 1977, the S/34 was into the market which provided multiple workstation support (including printers)
and could handle upto 8 local users at a time. It had a 256 KB main memory and 14 GB hard disk.
The S/38 was the next machine to be announced in October 1978, which was different from its S/3x
predecessors. The architecture of this machine was optimised for application development productivity,
which supported 256 local workstations, 32 MB of main memory and 14 GB of secondary storage.
On the other hand, development on S/34 architecture continued which led to the advent of S/36 in May, 1983
which supported upto 72 local workstations, and had 7 MB of main memory and 1.4 GB fixed disk.
Finally, in June 1988 the first of the AS/400 machines was introduced where AS stands for Application
System. It was an expansion of S/38 architecture but also provided application program compatibility with
S/36.
Software Architecture
There are three categories of software on the AS/400:
♦ Application Software
♦ Operating System Software
♦ Licensed Internal Code (LIC)
AS/400
MAIN STORAGE
SYSTEM HARDWARE
Application Software – This is the top layer of software that performs user tasks and acts as the primary
interface between the user and the AS/400. This includes system-supplied functions like PDM (Program
Development Manager), purchased software like a case tool, and other specialized user-developed systems.
This software can also execute or call the OS programs.
Operating System Software – This is the middle layer of software which performs most of the system
housekeeping tasks and manages the system resources. It includes common OS functions like copying and
deleting files, which can be invoked by application programs through CL (Control Language) commands.
LIC – Licensed Internal Code - the deepest layer of software, is an IBM-supplied set of programs that
provide the database, security, communications, and other essential functions. Users never interact directly
with the LIC, and it cannot be tampered by programmers or system operators. Another advantage of LIC is
that no time need spent on installation of software for the system to run. LIC also provides the hardware
USER
Application S/W
Hardware
LIC/SLIC
Operating System S/W
interface, thereby any changes to the hardware invite corresponding changes to the LIC. However, the
application programs need not undergo any changes, thereby reducing maintenance costs.
Salient Features of AS/400
The following are few of the salient features of the AS/400 machines – ♦ IBM offers several choices of AS/400 models so that user can balance between requirement and financial
budget.
♦ AS/400 supports 64-bit memory addressing thereby has a large working storage memory. Therefore
largest AS/400 model has more than 40GB RAM that can be accessed by OS/400.
♦ It has a 64-bit processor which provides enhanced arithmetic capabilities.
♦ The machine comes with an in-built operating system – OS/400 which is also object based and layered
which makes upgradation very easy. The user can upgrade his AS/400 model to higher configuration
conveniently.
♦ Single storage, i.e., the auxiliary storage is treated as an extension of the working storage. Thus the
OS/400 enjoys very large virtual memory.
♦ It has got an integrated RDBMS – DB2/400 and provides a high level of security as the control to
DB2/400 is controlled by OS/400. Every AS/400 has DB2/400 as pre-installed.
♦ It is compatible with other IBM ranges like PCs to mainframes.
♦ Offers Double Byte Character Set. This allows users to generate characters more than EBCDIC’s usual
set. Thus storage and display of many human language characters is possible. AS/400 is used to represent
more than 50 languages in the world.
Communication: AS/400 has Client –Server environment. There are basically three types of Client-server
environments.
a. Distributed Display. Where input-output interfaces are sent to clients and actual data storage and
processing is done on server.
b. Distributed Data: where apart from input-output interfaces even a set of data is also sent to client so
that there will be less transaction between client and the server and client may improve performance
of application as it may not depend of server frequently for the next set of data to be displayed.
c. Distributed Processing: In which some part of application can be executed on client reducing the load
on server and making effective utilization of hardware and software resources. The program running
of client may interact with a program running on server. This has been possible since the introduction
of micro computers in the industry.
AS/400 offers all the three options to user. The OS/400 uses TCP/IP is telnet protocol to enable
communication between client and server. IBM has also provided there own protocol System Networking
Architecture (SNA) as another choice.
The software that implements this protocol and enables the communication is called as Client Access
software. Following are some Client Access software used on AS/400 to create the environment of AS/400
on client (many time PC).
1. IBM Personal Communication
2. RENEX
3. MOCHA SOFT
4. RUMBA/400
Software: AS/400 runs on OS/400 Operating System. The latest version of OS/400 is V5R3.
Features:
1. It is most secured operating system of industry.
2. Offers character based but user friendly interface. Several thousand help and command prompt
screens.
3. LPAR : Logical Partition offers multiple environments on same server. User can run Windows NT,
LINUX
4. Has multi-threaded environment with multiple subsystems to manage concurrent jobs. These jobs can
well be scheduled also.
5. No data loss in case of communication failure or system failure.
6. Various logs and Audit trails makes system C2 level secured.
Languages:
a. Control Language/400. An OS command language.
b. RPG/400 – used to write commercial application. High Level Language. (HLL)
c. COBOL/400. Common Business Oriented Language (HLL)
d. PASCAL/400
e. C/400 C++/400 Java/400 Object Oriented languages.
Development tools: (Third party) SYNON, LANSA , ASSET
Packages: Office Vision/400, JD Edward, MOVEX , BPCS
IBM has provided some utilities along with system that help developer while building application.
They are called as Application Development Tool Set (ADTS).
Utilities
The following utilities are provided by the IBM AS/400.
♦ SEU – Source Entry Utility – used to code the programs, structure of database files etc.
♦ DFU – Data File Utility – used to make data entry directly in to the database files.
♦ SDA – Screen Design Aid – used to create User Interface, i.e., the screens used in interactive programs.
♦ RLU – Report Layout Utility – used to design the layouts of the reports that are going to be used in the
programs.
♦ PDM – Program Development Manager – an in-built utility for the user to navigate through various
source physical files etc.
System Concepts
Storage Hierarchy: OS/400 is Object based operating system. Every thing that is stored on AS/400 as a
separate entity (collection of information) known by OS/400 is an Object on AS/400.
Unlike Object Oriented Programming system the object on AS/400 is a permanent entity having its own
attribute. In fact different type of objects on AS/400 have different attributes and depending on these
attributes only OS/400 treats them. The program type of object can not be modified. That means when you
compile any program source the existing object by same name is deleted and re-created but OS/400 does
never allow program object just to be modified. So there is no possibility of virus getting inserted in program
like EXE file under Windows. Database (file) type of object can be modified for add/update/delete of
records. Some objects used for device configuration purpose can not be moved from one place (directory) to
another.
There are around 100 type of objects on AS/400.
The logical partition on AS/400 is called as Auxiliary Storage Pool (ASP). The ASP is like C drive D drive
etc on Personal Computers except that the ASPs on AS/400 are numbered.
Within ASP are what are called as Libraries.
Library on AS/400 storage is also one type of (*LIB) object that logically hold other objects.
For understanding lets compare them to the concept of directory of personal computers. So objects logically
belong to any specific library.
There are different type of Libraries.
1. System Library: These are pre-defined libraries on the system. They contain objects of OS/400,
Device configurations, Subsystems, job queues , user profiles , message queues etc, They also contain
language compilers, function libraries, DB2/400 RDBMS system etc.
2. User Library: These are libraries created by user.
There is one system library called as QSYS. All libraries can be created inside this QSYS library.
There can not be library inside a library except that QSYS.
For storing program sources and Data Description Specification (DDS) IBM has provided one file type of
object called as Source Physical File. Multiple sources can be stored within one source physical file. One
group of lines of one source is called as source member within a source physical file. A source physical file
belongs to any library.
Sub-systems – A subsystem is a single module of OS that is dedicated to perform a specific task on the OS.
There can be many subsystems active on a single machine and they can be handled or controlled
independently. The number of subsystems that can be active at one time is limited only by the resources
available on the system. Some of the IBM supplied subsystems are QBASE and QCTL (the default
controlling subsystem). As per the need either of the above can be used. AS/400 also allows users to copy
and change the existing subsystems or create new ones to support the special data processing needs.
Jobs – Any single task uniquely identified by the system is a job. Each of such jobs could be controlled
individually and therefore, the work load can be managed at the individual job level. There are two kinds of
jobs, viz., interactive and batch.
An interactive job starts when a user signs on the workstation. Such a job comprises of the work performed
based on the inputs received from the user during his tenure on the workstation. On the other hand, a batch
job is placed in a queue (job queue) to be started by a subsystem. Such jobs are specified with a priority and
they are carried out based on their respective priorities.
Queues – Objects that are of special importance to operators are queues. They are holding areas for
messages, printed reports, batch jobs, and other work that is waiting to be received, released to the CPU, or
accessed by a specific user. There are three categories of queues, viz., message queues, job queues and
output queues.
A job queue holds the jobs that have been submitted for batch processing and they get processed based on
their priority. The job Queues belong to subsystem. There can be predefined number of jobs active at a time
within a job queue. Jobs more than such number have a status as *jobq. That means these are in a queue
waiting for resources available.
Communication between the programs, between jobs, between users, between users and programs and
between users and the system occurs through messages. A message queues holds the message that is to be
sent to a specified user or a program it is placed in the message queue associated with the user or the
program. The OS/400 provides message queues for:
- Workstations on the system
- System history log
- Users responsible for system operation
- Users enrolled on the system
Whenever a request is sent to print the data etc., the data retrieved from the database is placed is formatted
by a print device file. Such formatted print files are placed on an output queue until a writer is ready to send
the information to a printer. Such requests also have the flexibility to be processed based on the priority
assigned to them.
Latest versions of this machine called the e-Series/i-Series also supports JAVA on As/400.
Introduction to AS/400
Historical Preview Introduced in 1988 Originated as the Successor of S/38
AS/400 Architecture Sophisticated design and ease-of-use come together in the AS/400
Layered Architecture
Machine Interface
Solid State Hardware
HMC (Microcode)
VMC (Operating system
supervisor)
IMPI
MI
OCL CL SQL DDS S/38
S/38
OS/400
(Integrated System Services)
HLL
Application
Operating System Supervisor
Operating systems
Applications and HLL
Communication, Database, Security, other “Add-on “softwares
Solid State Hardware
Microcode
Conventional Machine Instruction set
AS/400 Architecture
Conventional System Architecture
It is a software layer Interface masquerading as a machine with a very powerful instruction set. Consists of 260 Instruction
Vertical Microcode
It is not a actually a microcode, The Code in the VMC layer is IMPI, or Machine code.
Formats Similar to S/370 machine Instructions, The following are the few instructions Register-to-register (RR) Register-immediate (RI) Register-and-storage(RS) Storage-to-Storage(SS) And branch instruction IMPI instructions also use base-register addressing similar to the S/370.
0 8 12 15
0 8 12 15
Horizontal Microcode and Hardware It is a true Microcode. 42-Bit Micro Instruction (also called control words) controls the solid state circuits at low level by having particular bit on and off. It executes a single processor cycle
Operating System/400 Includes DDS and CL
Opcodes R1 R2 S/370 RR format
Opcodes R1 R2/E AS/400 RR format
Security: Concepts Implement and Maintain appropriate AS/400 security from the beginning.
Object Authority
Right to use or control an object. No object orphans on the AS/400
Two Categories Object rights and Data rights Object rights Object rights are concerned with the object Object rights assign a user following authority Operational Rights (*OPER) Object Management Rights (*OBJMGT) Object Existence Right (*OBJEXT) Data Rights Read (*READ) Add (*ADD) Update (*UPD) Delete (*DLT) Public Authority
Special Authority
• ALLOBJ
• SAVSYS
• JOBCTL
• SECADM
• SPLCTL
• SERVICE
Library Standards A well structured library supports application development, Simplifies backup and improves security Libraries are always stored in QSYS, the “Machine context” or highest level directory. For consistency, QSYS also treated as a library by the Operating system/400 (OS/400), although QSYS has unique properties that no other library has (Such as being able to contain library objects).
Taxonomy of AS/400 Rights
System
Authority
Special
Authority
Specific
Authority
Object
Authority
Data
Authority
Exclusion All Object
Security
adminstration
Save System
Job Control
Service
Spool Control
Operational
Management
Existence
Authorizational List Management
Read
Add
Update
Delete
System libraries
Temporary Local configuration related libraries Vendor-Supplied libraries Local production libraries Local Test Libraries Security Function
Work Management Good Work Management skills facilitate problem solving and operations
Defining a Subsytem A subsystem, defined by a subsystem description, is where the system brings together the resources needed to process work.
Subsytems in AS/400 QBASE Basic controlling subsystem QBATCH Batch Subsystem QCMN Communications Subsystem
QCTL Controlling Subsystem QINTER Interactive Subsystem QPGMR Programmer Subsystem QSERVER File Server Subsystem
QSNADS SNA Distribution Subsystem QSPL Spooling Subsystem QSYSSBSD Backup controlling subsystem QSYSWRK System subsystem QUSRWRK User subsystem
Subsystem Description Components Subsystem Attribute Storage Pool Definitions Work Entries Auto Job entries Workstation Entries Job Queue Entries Communication Entries Prestart Job Entries Routing Entries
Controlling Output Output Queue An output queue is an object containing the list of spooled files that you can display on a workstation or write to a printer Device.
Journal Management. Use Journal Management to recover critical data in AS/400 files. Journal Management automatically creates a separate copy of file changes and, If necessary, uses the copy to recover data in file.
Basic
A journal is an AS/400 objects used primarily to record changes to data in a physical file member and optionally, changes to a logical file’s access path. Records file opens, File closes, system IPLs, user generated entries and other types of Activity related to physical file. When data is changed, a journal always puts after image entries into a journal receiver. Optionally, you can specify that the journal should put both before image and after images into the journal receiver.
AS/400 - SYSTEM CONCEPTS
AS/400 is designed and built as a total system. This means that facilities such as a relational database and a networking capability (and much more) are fully integrated into the operating system and the machine. The user communicates with all these functions through a single control language, or by using the system menus and prompts. AS/400 is designed as a general-purpose business computer; it is optimized for that environment. Its design reflects the dominant requirements of that environment, which are: � Ease of use (from the operator's, and the end-user's, point of view) � Ability to grow and improve the system without disruption � Optimization for work in the commercial environment, which is Input/Output-intensive, rather than compute-intensive. There are five basic system concepts:
1. Layered Machine Architecture
AS/400 insulates users from hardware characteristics through the layered machine architecture. This layered architecture raises the level of the machine interface, creating a high-level machine instruction set that is
independent of the underlying hardware implementation.
Figure 1 shows the hardware with the licensed internal code that comprises the high-level machine. AS/400 is unusual in that the machine is defined by software, not by hardware. The instructions presented to the machine interface undergo a further process of translation before they are "understood" by the hardware. This process of translation is carried out by the licensed internal code. Hardware characteristics change as the technology changes; the user, however, still "sees" the same machine interface. The licensed internal code preserves this interface.
Furthermore, some frequently-executed routines (that would reside in the operating system of a conventional
machine) have been moved into licensed internal code. This runs faster than a higher level language, so any
applications using these routines will realize a performance gain.
Examples of some basic supervisory and resource management functions that are in licensed internal code are validity and
authorization checks. The high-level machine provides the user with the ability to address 2(64) bytes of storage on the PowerPC
based Models of the AS/400. Layered machine architecture means that as new hardware and software technologies emerge, they
can be employed without affecting applications.
The strength of this architecture was evident with the introduction of the new range of PowerPC based
AS/400 Models in June 1995. The System Processor changed from being a 48-bit Complex Instruction
Set Computer (CISC) to a 64-bit Reduced Instruction Set Computer (RISC). Yet existing customer
applications can run on the new processors and take full advantage of the 64-bit capability without any
recompilation or rewrite needed of the application (as long as observability has been retained).
2. Object Oriented Technology
Everything on AS/400 that can be stored or retrieved is contained in an "object".
Objects exist to make users independent of the implementation techniques used in the machine. The "create
object" instruction establishes the object's name and its type. All objects are structured with a common object
header, and a type-dependent functional portion. An object thus combines the data and the valid methods of
using that data into one entity. Therefore only valid methods of using that data are allowed.
This improves the overall integrity of the system and its data. This also permits the system to perform
standard object-level functions very efficiently; the object type then determines the way in which a specific
object can be used when retrieved. The architecture supports multiple extents to an object.
In other words, a user is not concerned with the space his object occupies. The system allocates space
automatically.
Object orientation gives a strong foundation for new technologies such as artificial intelligence. The object-
oriented AS/400 architecture lends itself very well to the utilization of object-oriented techniques for the
representation of knowledge in an expert system.
With the PowerPC based Models of the AS/400, the Licensed Internal Code that sits above the hardware has
been written as System Licensed Internal Code with an Object Based Kernel. This Kernel has been rewritten
in C++ and is fully Object Oriented giving all the advantages of flexibility, code reuse, programming
efficiency, and error reduction that come from Object Oriented Programming.
3. Single-Level Storage
All system storage (whether main storage or disk storage) is addressed in the same way. This single, device-
independent addressing mechanism means that to run a program, a user calls its name. All objects are treated
as if they reside in a 2(64) byte address space.
The AS/400 system's virtual addressing is independent of an object's physical location, and the type, capacity
and number of disk units on the system.
What this means is that application programs do not require modification in order to take advantage of new
storage technologies. Users can leave all storage management entirely to the machine.
4. Hierarchy of Microprocessors
The above, simplified, drawing shows that as well as the main System Processor, there is a range of other
processors, each dedicated to a particular I/O device type. What this means is that when the main System
Processor encounters a request for data to be written to or read from any I/O device, that request is delegated
to the particular microprocessor dedicated to that I/O device. Meanwhile, the System Processor continues
with another application program.
This design provides AS/400 with its outstanding performance in the commercial, transaction-based,
environment. It also means that the latest microprocessor technology can be easily utilized at any time
without disrupting the rest of the system.
Using the N-way multiprocessor capability of the AS/400, the larger models of AS/400 can have up to four
processors. The actual numbers of processors are shown in the Summary Tables.
5. Operating System, OS/400, is a Single Entity
The above figure shows the traditional approach for system software. As well as the basic operating system,
further software components, providing facilities such as a relational database management system, support
for various communications environments, support for an interactive environment, software to implement
security, etc., are needed. Sometimes these are provided by third parties. The integration of these software
components always needs careful attention: a customer would need to be certain that the release levels of the
various components were compatible, etc.
On AS/400, none of these issues arise because its operating system, OS/400, has fully integrated these
components. OS/400 contains the software for relational database support, for communications and
networking environments, and much more.
OS/400 is designed to support interactive use in multiple national languages for worldwide application.
Textual data is stored separately from operational program code, permitting a system to operate concurrently
in many national languages.
OS/400 objects
Operating System/400* (OS/400*) objects provide the means through which all
data processing information is stored and processed by the iSeries 400. An
OS/400 object is a named unit that exists (occupies space) in storage and on
which operations are performed on it by the operating system.
CL commands perform operations on the Operating System/400* (OS/400*)
objects. Several types of OS/400 objects are created and used in the control
language.
The Predefined Values and Default Library Locations for OS/400 Object Types
table lists the predefined values for all the OS/400 object types. When an object is
created and a library qualifier can be specified but is not, the object is stored in
the user's current job library, as shown in the last column. The user profile for
each user specifies the user's current library. The current library will be QGPL if
it is not specified otherwise. The other objects, identified by N/A in the last
column, cannot be stored in user-provided libraries.
OS/400 objects have the following in common:
• Objects have a set of descriptive attributes that are defined when the object is created.
• Objects have to be used by the system to perform a specific function must be specified in the CL
command that performs that function.
• Objects have a set of attributes that describe it and give the specific values assigned for those
attributes.
• Generally, objects are independent of all other objects. However, some objects must be created before
other objects can be created; for example, a logical file cannot be created if the physical file it must
be based on does not exist.
• Objects must be created before other operations that use the object are performed. Descriptions of the
create commands (those commands that begin with the letters CRT) give more information about the
object types that they create.
• Every OS/400 object that is used by the control language has a name. The object name specified in a
CL command identifies which object is used by the operating system to perform the function of the
command.
• Objects have either a simple, qualified, or generic name.
Table 3. Predefined Values and Default Library Locations for OS/400
Object Types Value Object Type Default User Library
*ALRTBL Alert table *CURLIB
*AUTL Authorization list N/A
*BLKSF Block special file N/A
*BNDDIR Binding directory *CURLIB
*CFGL Configuration list N/A
*CHRSF Character special file N/A
*CHTFMT Chart format *CURLIB
*CLD C/400 locale description *CURLIB
*CLS Class *CURLIB
*CMD Command *CURLIB
*CNNL Connection list QSYS
*COSD Class-of-service description QSYS
*CRG Cluster resource group N/A
*CRQD Change request description *CURLIB
*CSI Communications Side
Information
*CURLIB
*CTLD Controller description QSYS
*DDIR Distributed file directory N/A
*DEVD Device description QSYS
*DIR Directory N/A
*DOC Document QDOC
*DSTMF Distributed stream file N/A
*DTAARA Data area *CURLIB
*DTADCT Data dictionary N/A
*DTAQ Data queue *CURLIB
*EDTD Edit description QSYS
*EXITRG Exit registration N/A
*FCT Forms control table *CURLIB
*FIFO First-in-out special file N/A
*FILE File *CURLIB
*FLR Folder QDOC
*FNTRSC Font resources *CURLIB
*FNTTBL Font mapping table *CURLIB
*FORMDF Form definition *CURLIB
*FTR Filter *CURLIB
*GSS Graphics symbol set *CURLIB
*IGCDCT Double-byte character set
(DBCS) conversion
dictionary
*CURLIB
*IGCSRT Double-byte character set
(DBCS) sort table
*CURLIB
*IGCTBL Double-byte character set
(DBCS) font table
N/A
*IPXD Internetwork packet
exchange description
QSYS
*JOBD Job description *CURLIB
*JOBQ Job queue *CURLIB
*JOBSCD Job schedule *CURLIB
*JRN Journal *CURLIB
*JRNRCV Journal receiver *CURLIB
*LIB Library QSYS
*LIND Line description QSYS
*MENU Menu description *CURLIB
*MGTCOL Management collection QPFRDATA
*MODD Mode description QSYS
*MODULE Compiler unit *CURLIB
*MSGF Message file *CURLIB
*MSGQ Message queue *CURLIB
*M36 AS/400 Advanced 36
machine
*CURLIB
*M36CFG AS/400 Advanced 36
machine configuration
*CURLIB
*NODGRP Node group *CURLIB
*NODL Node list *CURLIB
*NTBD NetBIOS description QSYS
*NWID Network interface
description
QSYS
*NWSD Network server description QSYS
*OUTQ Output queue *CURLIB
*OVL Overlay *CURLIB
*PAGDFN Page definition *CURLIB
*PAGSEG Page segment *CURLIB
*PDG Print Descriptor Group *CURLIB
*PGM Program *CURLIB
*PNLGRP Panel group definition *CURLIB
*PRDAVL Product availability QSYS
*PRDDFN Product definition QSYS
*PRDLOD Product load QSYS
*PSFCFG Print Services Facility
configuration
*CURLIB
*QMFORM Query management form *CURLIB
*QMQRY Query management query *CURLIB
*QRYDFN Query definition QGPL
*RCT Reference code translate
table
QGPL
*SBSD Subsystem description *CURLIB
*SCHIDX Search index QGPL
*SOCKET Local socket N/A
*SPADCT Spelling aid dictionary QGPL
*SRVPGM Service program *CURLIB
*SQLPKG Structured Query Language
package
*CURLIB
*SQLUDT User-defined SQL type N/A
*SSND Session description QGPL
*STMF Bytestream file N/A
*S36 System/36 machine
description
QGPL
*SVRSTG Server storage space N/A
*SYMLNK Symbolic link N/A
*TBL Table *CURLIB
*USRIDX User index *CURLIB
*USRPRF User profile QSYS
*USRQ User queue *CURLIB
*USRSPC User space *CURLIB
*VLDL Validation list *CURLIB
*WSCST Work station customizing
object
*CURLIB
Simple and qualified object names The name of a specific object that is located in a library can be specified as a
simple name or as a qualified name. A simple object name is the name of the
object only. A qualified object name is the name of the library where the object is
stored followed by the name of the object. In a qualified object name, the library
name is connected to the object name by a slash (/).
Either the simple name or the qualified name of an object can be specified if the
object exists in one of the libraries named in the job's library list; the library
qualifier is optional in this case. A qualified name must be specified if the named
object is not in a library named in the library list. Note:
Although a job name also has a qualified form, it is not a qualified object name because a job is not
an OS/400 object. A job name is qualified by a user name and a job number, not by a library name.
Generic object names A generic object name may refer to more than one object. That is, a generic name
contains one or more characters that are the first group of characters in the names
of several objects; the system then searches for all the objects that have those
characters at the beginning of their names and are in the libraries named in the
library list. A generic name is identified by an asterisk (*) as the last character in
the name.
A quoted generic name consists of a generic name enclosed in quotation marks.
Unlike quoted names, if there are no special characters between the quotation
marks, the quotation marks are not removed. The generic name "ABC*" would
cause the system to search for objects whose name begins with "ABC.
A generic name can also be qualified by a library name. If the generic name is
qualified, the system will search only the specified library for objects whose
names begin with that generic name. Note:
A generic name also can be qualified by one or more directories if it is a path name. In a path name,
letters can be specified before and after the asterisk (*). For more information on path names, see the
Integrated File System topic.
When you specify a generic name, the system performs the required function on
all objects whose names begin with the specified series of characters. You must
have the authority required to perform that function on every object the generic
name identifies. If you do not have the required authority for an object, the
function is not performed and a diagnostic message is issued for each instance
that the attempted generic function failed. A completion message is issued for
each object the generic function operates on successfully. You must view the
online low-level messages to see the completion messages. Once the entire
generic function is completed, a completion message is issued that states that all
objects were operated on successfully. If one or more objects could not be
successfully operated on an escape message is issued. If an override is in effect
for a specific device file, the single object name specified on the override, rather
than the generic name, is used to perform the operation.
You may not be able to use a generic name for delete, move, or rename
commands if the library containing the objects is already locked. A search for
generic object names requires a more restrictive lock on the library containing the
objects than a search for full object names. The more restrictive lock is necessary
to prevent another user from creating an object with the same name as the generic
search string in the library while the delete, move, or rename command is
running. You can circumvent this problem by using the full name of the objects
instead of a generic name. Or you can end the job or subsystem that has a lock on
the library. Note:
Use the WRKOBJLCK (Work with Object Locks) command to determine which jobs or subsystems
have a lock on the library.
For some commands, a library qualifier can be specified with the generic name to
limit the scope of the operation. For example, a Change Print File (CHGPRTF)
command with FILE(LIB1/PRT*) performs the desired operation on printer files
beginning with PRT in library LIB1 only; printer files in other libraries are not
affected.
The limitations associated with the various library qualifiers are as follows:
• library-name: The operation is performed on generic object names only in the specified library.
• *LIBL: The operation is performed on generic object names in the library list associated with the job
that requested the generic operation.
• *CURLIB: The operation is performed on generic object names in the current library.
• *ALL: The operation is performed on generic object names in all libraries on the system for which
you are authorized.
• *USRLIBL: The operation is performed on generic object names in the user part of the library list for
the job.
• *ALLUSR: The operation is performed on all nonsystem libraries (libraries that do not start with the
letter Q), except for the following:
• #CGULIB #DFULIB #RPGLIB #SEULIB
• #COBLIB #DSULIB #SDALIB
The operation is also performed on the following Qxxx libraries: QDSNX QRCL QUSRIJS QUSRSYS
QGPL QS36F QUSRINFSKR QUSRVxRxMx
QGPL38 QUSER38 QUSRNOTES
QMPGDATA QUSRADSM QUSRPOSGS
QMQMDATA QUSRBRM QUSRPOSSA
QMQMPROC QUSRDIRCL QUSRPYMSVR
QPFRDATA QUSRDIRDB QUSRRDARS
Note:
A different library name, of the form QUSRVxRxMx, can be created by the user for each release that
IBM supports. VxRxMx is the version, release, and modification level of the library.