SAP Applications and Mainframes

Application Component

There are other back-end technologies available within the SAP Netweaver BW architecture that can be leveraged as part of a solution. Some of these technologies are available as part of the standard SAP kernel, which is a core suite of programs providing a real good, solid base functionality for applications to use. It uses the ABAP programming language, both its structured and object-orientated programming styles.

Any program that has been written, which starts with the SAP kernel layer and above, is integrated into what’s called the ABAP stack. It is a runtime environment to load and execute ABAP programs. In a similar spirit, a Java stack has been made available to provide a Java runtime environment to load and run Java programs. The ABAB stack and the Java stack provide the ability to execute programs to enable the application programs to achieve their goals. The bulk of the SAP applications run using the ABAP stack.

The SAP kernel is a suite of programs aimed at providing the core functionality. A lot of its functionality is to combine via interfaces the various resources of the operating system; communicating with the hardware, database, software, network and other systems. This is done via a lot of different mechanisms. For Example: Character and block devices, wrappers and interfaces using XML or Business Server Pages (BSP), etc. There’s also a proprietary format for interfacing called Business Application Programming Interface (BAPI).

At the end of the day, the best way to think of it is as a core collection of utilities which SAP AG then builds its business applications on top of. In its simplest terms; you buy some server hardware, you install the operating system on it. That operating system runs native applications.

One of those native applications is the SAP kernel foundation. Another application is your database; like Max DB, Oracle or Microsoft SQL. The SAP application suite is designed primarily around the SAP kernel, which enables the ability to start up and provide the configured services.

“the SAP kernel is fundamentally a mainframe
wrapped in client server technology”

That fundamentally means that it is driven by a “Limited Assignment of Resources” strategy. You end up with a number of processes that are available for programs to be loaded into and run. One of the jobs of the SAP kernel is to run these processes within the Database, Application or Presentation layers. This is where your ABAP stack and Java stack come into play. The kernel is responsible for allowing these programs to start, execute and finish.

The ABAP stack is designed around mainframe technology, which means it has a limited number of processes with a limited amount of resources that can be consumed. Whilst you may have a server which has 24 Gig of RAM, a process may only have access to 300 Meg when the program runs. It may do virtual memory swapping out to 500 Meg or 4 Gig; it’s still configurable to within the limits of the operating system.

At the end of the day, the ability to control what resources get consumed means the server remains responsive and will play nice within the limited resources that have been assigned. This is very critical in ensuring the SAP applications remain available to all business users.