LESSON 1 · Easy

IBM i mental model: objects, libraries and the IFS

Plain-English notes, safe code skeletons, IBM i commands, and a checkpoint you can use before opening the deeper question bank.

After this lesson

Learning notes

Start with the three namespaces

IBM i manages many resources as typed objects. A database file, program, queue, user profile, and job description have an object type and an owner. The type matters: a program name can be the same as a file name because their object types are different.

Libraries group objects in the IBM i object namespace. The integrated file system (IFS) is the path-based file system used for stream files, source archives, logs, and integration payloads. A good developer can move between both views without confusing an IFS path with a library-qualified object name.

Useful orientation commands

DSPLIBL
WRKOBJ OBJ(APPDATA/*ALL) OBJTYPE(*ALL)
DSPLNK OBJ('/home/app')
  1. A user starts a job
  2. The job receives a library list and authority context
  3. IBM i resolves the name to an object or IFS path
  4. Authority and object type are checked
  5. The operation runs or a diagnostic message is recorded

Treat the library list as a search path

An unqualified object name is searched through the current library list. The system portion is searched in a defined order, followed by the product and user portions. Two jobs can run the same command and reach different objects because their library lists differ.

Qualify names in deployment scripts and in high-risk maintenance code. Use the library list for a deliberate application environment, not as a hidden dependency that only works from one developer profile.

CL setup skeleton

PGM
  CHGLIBL LIBL(QGPL QTEMP APPDATA)
  CALL PGM(APPDATA/ORDENTRY)
ENDPGM

Keep source, objects and deployment evidence distinct

A source physical file member is editable source held in a library object. A compiled program or service program is a separate object produced from that source. An IFS stream file is useful for Git checkouts, JSON, certificates, and build artifacts, but it does not replace the compiled object used by a running job.

During a release, record the source version, compiler command, target library, and object authority. That small trail makes a production question answerable: what was built, from which source, and where was it installed?

Typical build boundary

CRTSRCPF FILE(APPDATA/QRPGLESRC) RCDLEN(112)
ADDPFM FILE(APPDATA/QRPGLESRC) MBR(ORDENTRY)
CRTSQLRPGI OBJ(APPDATA/ORDENTRY) SRCFILE(APPDATA/QRPGLESRC) SRCMBR(ORDENTRY)

Open the detailed question chapters

Practice checkpoint

Answer all five, then review the explanations. The interactive site stores your completed learning checkpoints in this browser.

  1. 1. Which term identifies the operating system?
    1. Power
    2. IBM i
    3. 5250
    4. RPG
  2. 2. Editing source alone changes which artifact?
    1. Every active program
    2. The compiled object automatically
    3. The source
    4. All service program signatures
  3. 3. Which is naturally a stream-file path?
    1. APP/ORDERS *FILE
    2. APP/POST *PGM
    3. QBATCH *JOBQ
    4. /home/app/order.json
  4. 4. A browser times out during a posting request. What next?
    1. Check the server operation status before retrying
    2. Assume the transaction rolled back
    3. Immediately submit the posting twice
    4. Delete the job log
  5. 5. What determines object operations?
    1. Only the object name
    2. Object type and authority
    3. The screen color
    4. The source member extension
Show answer key and explanations

1. B — IBM i Power is hardware, 5250 is a terminal interface, and RPG is a programming language.

2. C — The source A build is required to turn changed source into a new compiled object.

3. D — /home/app/order.json IFS paths describe hierarchical stream resources.

4. A — Check the server operation status before retrying A client timeout can occur while the server operation is still executing or has committed.

5. B — Object type and authority Typed objects expose specific operations, and authority determines who may perform them.

IBM documentation for this path