Skip to Content

Kernel Update Thoroughly Explained, Part I

SAP NetWeaver 7.x Kernel Updates Explained Part II  
What is the kernel of an SAP system?

An ABAP or Java-based SAP system runs on top of the SAP Web Application Server. This software serves as an abstraction layer between the underlying Operating System and database system to the ABAP or Java applications. The applications can are coded and run in an OS and DB-independent manner. The execution environment of the applications is often referred to as a Runtime system.

Thus, the kernel of an SAP system consists of all native programs and dynamic libraries that are required for launching the Runtime, executing ABAP or Java codes, communicating with the outside world of the application server like OS, DB and network. These native binaries can be categorized through different aspects:

  • DB-dependent vs. DB-independent: While all native binaries are OS-specific, they can be grouped in either database-dependent or independent manner. Mostly there are numerous database management systems available for a particular Operating System. The DB-dependent part – which is small in size – presents the abstraction layer to the particular database system and the DB-independent part – which makes up the vast majority of all native codes – presents the abstraction layer to the rest of the outside world.
  • Unicode vs. Non-Unicode: Depending on users’ requirement, an SAP system supports data encoding either as Unicode or as non-Unicode. Since the processing of Unicode data and non-Unicode data respectively are slightly different, the kernel binaries are compiled accordingly.
  • Primary vs. subsidiary: Some of the kernel binaries are permanently loaded in the memory when the system is running. We call them primary. In other words, without the primary codes, the system is not functioning. Contrary to the primary programs, the subsidiary programs provide tools and services which are used occasionally, no matter whether the system is running or not, in terms of OS and DB abstraction.
How to get the kernel patches?

You can download the latest versions of the kernel patches from the SAP Service Marketplace (, either as part of an SP Stack or separately. However, you have to take following facts into account:

  • What operating systems is your system running on? In some (although rare) cases, you need multiple variants of the kernel patches, because it’s possible to install a SAP system in a cluster with different operating systems.
  • Do you need a Unicode or non-Unicode kernel, or both of them? This question is especially relevant, if the system is ABAP-based. Java-based systems are always Unicode systems. A Double-Stack system runs both an ABAP and a Java engine, while the ABAP part runs with a non-Unicode kernel.

Once these details have been determined, you can go on with selecting the appropriate packages on the SAP Service Marketplace. There are two packaged files for each OS-DB-combination, SAPEXE.SAR for the DB-independent part and SAPEXEDB.SAR for DB-dependent part. As mentioned, the first file is much larger than the latter one. These two packages together consist of updates of all kernel binaries needed to patch the system kernel to level in required.

.SAR files are an SAP-specific archive format. You can extract this format with the tool SAPCAR which in turn is one of the kernel programs. Normally, the existing SAPCAR tool should be able to open the newer kernel package .SAR files with the existing SAPCAR. Occasionally it happens that you cannot open the newer .SAR files with the older SAPCAR, because the format has been enhanced. In this case, you can download SAPCAR alone from the SAP Service Marketplace. Other standalone tools are also available; SAPCPE which we will deal with in more detail later.

To report this post you need to login first.


You must be Logged on to comment or reply to a post.

    1. Storm Archer Post author
      Thank you. I have posted part II of the blog.

      Coming this week is a screencam demo of applying java support stacks using JSPM.

      Warmest Regards,

  1. Former Member

    Breat blog.
    I have a question about this remark of yours :
    “A Double-Stack system runs both an ABAP and a Java engine, while the ABAP part runs with a non-Unicode kernel.”
    Do you mean the ABAP part has to be with a non-Unicode kerel ? Beacause I was under the impression that you can choose between Unicode OR non-Unicode (with this particular double-stack installation). Besides, I felt like the ABAP Unicode kernel was really preconised by SAP.

    Thanks in advance.

    Best regards,

    1. Storm Archer Post author
      Hi Guillaume,

      Your impression that the ABAP stack can run either the unicode or non-unicode kernel is correct. The statement was to emphasize the fact that the Java Stack is always unicode, whereas the ABAP Stack has an option of not being Unicode.

      Warmest Regards,

  2. Former Member
    Hi Storm,

    Thanks a lot for the explanation on how to update a Kernel Correctly.
    The link to Part II is somehow broken, It links to Part I again.

    Could you please have a check on this.


    1. Storm Archer Post author
      Hi Niklas,

      Thank you for letting me know about the link issue. It is fixed and now correctly points to Part II.

      Best Regards,
      Storm Archer
      SAP NetWeaver Product Management


Leave a Reply