- Foreword
- Here's the Inside Story on the New AS/400e Series
- About the Author
- Chapter 1Advanced Application Architecture
- Computer Architecture
- A Programmers View
- Levels of Abstraction
- Software Design
- Architecture Classification
- Processor-Centric Architecture
- Application Programming Interface (API)-Centric Architecture
- High-Level Machine Architecture
- Its in the Sauce
- Chapter 2The PowerPC Technology
- Those Incredible Shrinking Chips
- The PowerPC Alliance
- The Evolution of PowerPC
- The AS/400 Commercial RISC Processor
- PowerPC Technology for the AS/400
- The PowerPC Architecture
- Extensions to the PowerPC Architecture
- A 65-Bit Processor?
- Amazon Instructions
- AS/400 Processor Implementations
- The First-Generation Muskie Processors
- The First- and Second-Generation Cobra Processors
- The Third-Generation Apache Processors
- The Fourth-Generation Processors and Beyond
- The Memory Subsystem
- Memory Organizations
- Wed Rather Switch than Fight
- The Future of Memory Switches
- Conclusions
- Chapter 3The System Licensed Internal Code
- Divide and Conquer
- Microcode
- SLIC Roads Ahead
- OO Concepts
- SLIC Development Environment
- The Cost of SLIC
- SLIC Kernel Technologies
- System/36 Personality
- Something Old, Something New
- Advanced 36
- Conclusions
- Chapter 4The Technology-Independent Machine Interface
- Overview of the MI Architecture
- A Non-Executable Interface
- AS/400 Language Compilers
- Characteristics of the Machine Interface
- Working with MI Programs
- Creating a Program
- Destroying a Program
- Program Materialization and Observability
- Inside a Program Template
- The MI Instruction Formats
- The MI Op-Code
- The Op-Code Extender
- MI Instruction Examples
- Conclusions
- Chapter 5Objects and Object Management
- Object Naming
- OS/400 Objects and MI System Objects
- Finding Objects
- Libraries
- Shared Folders
- The Integrated File System
- Accessing Objects
- Capability-Based Addressing
- Resolving System Pointers
- Other Pointer Types
- System Object Characteristics
- Program Objects
- Inside a System Object
- Segmented Memory
- System Object Structure
- Multisegment Objects
- Contents of the Headers
- Segment Headers
- EPA Headers
- Examples of Objects
- Conclusions
- Chapter 6The Integrated Database
- The Database with No Name
- Data Warehousing
- Transforming Operational Data into Informational Data
- Database Servers
- Parallel Processing
- Multidimensional Databases (MDD)
- Data Analysis and End-User Tools
- Managing the Warehouse
- Relational Database Evolution
- The Two Faces of Database
- Overview of Database Operations
- Functions of a Database Management System
- Data Description and File Creation
- Creating Physical Files and Tables
- Creating Logical Files and Views
- Data Dictionary and Catalogs
- Data and Program Independence
- Data Security
- Data Integrity and Recovery
- Journaling
- System-Managed Access Path Protection
- Commitment Control
- Triggers
- Referential Integrity
- High-Availability Disk Systems
- Other Database Functions
- Stored Procedures
- National Language Support
- Predictive Query Governor
- Database Performance Enhancements
- Distributed Databases
- Gateways to Other Databases
- DataPropagator
- OptiConnect
- Implementation of Database Functions
- Database Objects
- Data Spaces
- Data-Space Indexes
- Cursors
- The Users Path to Data
- SLIC Journaling
- Commitment Control in SLIC
- Machine Indexes
- Binary Searches
- Binary Radix Trees
- Internals of a Binary Radix Tree
- Conclusions
- Chapter 7Security and Authorization
- Integrated Security
- System Security Levels
- Level 10 No Security
- Level 20 Password Security
- Level 30 Resource Security
- Level 40 Operating System Security
- Level 50 C2 Level Security
- User Profiles
- User Class
- Objects Owned and Authorized
- Authorization of Objects
- Privileged Instructions and Special Authorities
- Program Adoption of Authority
- Grouping Authority
- Authority Search Algorithm
- The Need for More Security in a Networked World
- Attaching PCs to an AS/400
- Viruses, Worms, Trojan Horses, and Other Nasty Critters
- Secure Web Serving
- Conclusions
- Chapter 8Single-Level Store
- How Many Bytes Do 64 Bits Address?
- Virtual Memory
- Virtual Memory for Timesharing
- A Single-Level Virtual Memory
- Persistent Virtual Memory
- Overview of Single-Level Store
- Performance Implications of Single-Level Store
- Pointers and Tags
- Hardware Protection for Pointers
- Tags-Active Mode
- Pointers and Tags on Disk
- Inside a Pointer
- A Tale of Two Address Sizes
- Running Out of Addresses
- Address Translation
- Memory Model Characteristics
- Machine State Register
- Address Translation Overview
- Virtual-to-Real Address Translation
- Hashing
- Page Table Entry
- Memory Access Modes
- Page Protection
- Disk Management
- Auxiliary Storage Pools (ASPs)
- Storage Segments
- Disk Extents
- Access Group Segments
- Auxiliary Storage Directories
- Conclusions
- Chapter 9Process Management
- The Worlds Greatest Tasking Structure
- Microkernel Technologies
- Starting at the Bottom
- Task Dispatching in the AS/400
- The States of a Task
- Task Dispatching Queue
- Send/Receive Queues and Counters
- Multiprocessor Considerations
- Symmetric Multiprocessing
- Asymmetric Multiprocessing
- Dynamic Priority Scheduling
- MI Processes
- Original Process Model
- ILE Process Model
- Inside an ILE Process
- ILE Process Structure
- ILE Activation Group
- Exceptions, Events, and Interrupts
- Exceptions and Events at the MI
- SLIC Exception Management
- Hardware Context Switching
- Work Management and OS/400 Jobs
- Work-Management Concepts
- Subsystems
- Original and New Job Structures
- Processes, Tasks, Jobs, Activation Groups, and Threads
- Conclusions
- Chapter 10The I/O System
- A Time of Transition
- Basic I/O Concepts
- Industry-Standard I/O
- The SPD Bus
- SPD I/O Hardware Connections
- SPD I/O Bus Operations
- I/O Operations on the AS/400
- Objects to Support I/O
- The Components of I/O
- Putting It All Together
- Conclusions
- Chapter 11Inside Version 4
- AS/400 Enhancements for Version 4
- Network Computing
- Implementing the Standards
- The Battle for the Desktop
- Collaborative Computing
- Simplified Client/Server Computing
- Application Enablement
- Java, Java Everywhere and Not a Drop to Drink
- Java for the AS/400
- The San Francisco Project (Java Frameworks)
- Integrated PC Servers
- AS/400 e-server Models
- Data Capabilities
- High-End Growth for the AS/400e series
- The RISC Processor and How It Will Grow
- Clusters and Continuous Availability
- Price/Performance Improvements for the AS/400e series
- Commonality
- New I/O Technologies
- Conclusions
- Chapter 12The AS/400 in the 21st Century
- Future Processor Technologies
- Fifth-Generation Processors
- Beyond RISC
- The History of VLIW in Rochester
- The Future of Multiprocessor Systems
- Scalable Shared-Memory Multiprocessors
- CC-NUMA and COMA
- The Future of AS/400 I/O
- Future I/O Subsystem Technology
- Disk Arrays
- Future AS/400 Software Technologies
- Operating Systems
- Global File Systems
- User Interfaces
- Application Technologies
- Total System Performance
- Benchmark Programs
- How Do We Compare?
- Conclusions
Appendix
Index