Intel® Dynamic Application Loader (Intel® DAL) Release Notes

By Benzi Schreiber,

Published:12/03/2019   Last Updated:12/03/2019

Product released May 2019. Release Notes updated November 2019

The Intel® Dynamic Application Loader (Intel® DAL) is a unique feature of Intel® platforms that allows you to run small portions of Java* code on Intel® Converged Security and Management Engine (Intel® CSME) firmware. Intel DAL is part of Intel PCH and is available on many form factors, including workstations, desktops, notebooks, tablets and IoT devices.

Intel DAL uses a dedicated processor, firmware, and hardware to run application code in a trusted execution environment (TEE). The application code is completely isolated from the operating system, so malware that is running on the system cannot interfere with or spy on applications that are executed by Intel DAL.

SDK for Intel DAL

The SDK for Intel DAL is a collection of tools that guide you through the development of your applet and host application. The SDK helps you with writing and testing your code, including running the code in a simulated environment of the firmware.

Limitations

The first release of the SDK has the following limitations:

  • Emulation support
    • The emulator supports API Levels 7, 8 and 9 only. Earlier API levels are not supported.
    • TLS is not supported.
    • Sigma 2.0 is not supported.
  • Operating system support
    • Microsoft Windows only. Linux and Android are not supported.
  • Features
    • Secure screen output is not supported.

Known Issues

  • Make sure that the paths to the SDK components do not contain any non-Latin characters or blanks. This includes the path to the SDK installation and the path to the Eclipse* work space. (This note was added in November 2019.)
  • The Emulauncher does not prevent you from using functions that are available only in a higher API level but are not available in the API level that you are emulating. For example, if you are emulating API level 8 and use a function that was introduced in API level 9, the emulator will not warn you that the function is not supported in your API level. Make sure that all of your code’s functionality is available in the API level that you are emulating.
  • In the Emulauncher, the Trusted Application memory profiling option does not work.
  • The Generic Host Application is supported only in single instances. Opening multiple instances of the Generic Host Application may lead to unexpected behavior.
  • When using the command line interface of the Generic Host Application, the tool tries to connect to the real Intel DAL firmware interface even if the Emulauncher is running. There is no option to specify whether to use real firmware or the Emulauncher. If there is no Intel DAL firmware on the current platform, it runs over emulation.
  • When you debug using the Microsoft Visual Studio Extension, ensure that Restart emulator each time I press start is not checked in the Intel Emulauncher tool.
  • When performing source-level debugging of your Trusted Application in Eclipse, the debugging may not work. If this happens, restart the emulation. If it happens more than once, close Eclipse and the Emulauncher, navigate to /Tools/Emulauncher/ in your SDK installation, and delete EmulatorLog.txt. Then launch Eclipse and the Emulauncher and continue debugging.

 

Copyright and Trademarks (C) Intel Corporation, 2010 - 2019

*Other names and brands may be claimed as the property of others.

 

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804