# mkdir /export/home/preflightcheck/app1
For example:
# unzip PreflightCheckerTool-v11-2-0-SPARC.zip
# cd /export/home/preflightcheck/app1/scripts # chmod +x setup.sh # ./setup.sh
If you do not indicate a location where you want to save the final report, during the installation, the final report is saved in the default directory, /export/home/preflightcheck/app1/reports.
The script unpacks and installs the tool.
You run the Binary Analyzer, Source Code Analyzer, or Runtime Analyzer modules by indicating the directories containing the binaries, source code, or processes running on the Oracle Solaris 10 system that you want to check.
The Preflight Checker can analyze running application processes, application binaries, and application source code on Oracle Solaris 10 and report known potential issues with running the application on Oracle Solaris 11.
Detailed instructions for installing and running the Preflight Checker are available in the README file in the docs subdirectory of the tools installation directory.
Once the Preflight Checker is installed, you can start it by using the following command:
$ preflightchecker.sh [options] file-or-directory
To list the options available for executing the Preflight Checker at the command line (preflightchecker.sh), use the –h option.
$ preflightchecker.sh -h
During the static binary analysis, the Preflight Checker locates the object files in the source and checks for the use of deprecated, unsupported, and unstable APIs that might not work on Oracle Solaris 11.
This section provides information about how to use the different modules available in the Preflight Checker from the graphical user interface (GUI).
# tool-install-dir/bin/preflightcheckerGUI.sh
Provide the application information such as application name and version.
You can also click the More Details button to add more details about the application such as database version. Click the Next button to go to the next window.
On the completion of binary scanning, the scanner generates a report.
The current values are used unless you change them.
The following example shows a sample issue description.
# tool-install-dir/bin/preflightcheckerGUI.sh
The PATH field indicates where to find system executables and user-created executables. As shown in the figure, /usr/sbin, /usr/bin, and /bin are already entered. You can append more locations to the PATH value with a colon (:) separator.
On the completion of source code scanning, the scanner generates a report.
The current values are used unless you change them.
The following example shows a sample issue description.
This section provides information about the prerequisites for using the Runtime Analyzer and how to launch it from the GUI.
Before You Begin
You must have the following Oracle Solaris privileges:
basic
dtrace_user
dtrace_proc
dtrace_kernel
Caution - Do not give the proc_owner privilege to the user. Adding this privilege to the user, enables the user to collect the information from processes owned by all other users on the system. |
# /export/home/preflightcheck/app1/scripts/setPriv.sh username
set dtrace:dtrace_dof_maxsize=0x800000
fasttrap-max-probes=2500000; fasttrap-hash-size=65535;
# tool-install-dir/bin/preflightcheckerGUI.sh
The Preflight Checker will run for the given time and generate a report based on the scan.
The current values are used unless you change them.
The following example shows a sample issue description.
The Kernel Checker analyzes kernel modules or device driver binaries and their source code, and reports known potential compliance issues with Oracle Solaris 11.
When running the Binary Analyzer or Source Code Analyzer, you indicate the directories containing the binaries and source code on the Oracle Solaris 10 system that you want to check.
To launch the Kernel Checker, issue the following command:
$ ./preflightchecker.sh -kernelchecker [options] file-or-directory
To list the options available for executing the Preflight Kernel Checker (kernelchecker.sh), use the –h option.
$ ./preflightchecker.sh -kernelchecker -h
During static binary analysis the Kernel Checker recursively searches the directories to locate the object files, and checks for the use of deprecated, unsupported, and unstable APIs which that might not work on Oracle Solaris 11.
# tool-install-dir/bin/preflightcheckerGUI.sh -kernelchecker
On the completion of kernel scanning, the scanner generates a report.
The current values are used unless you change them.
The Application Analyzer checks the application for suboptimal coding or implementation practices and the use of specific Oracle Solaris features to get the most out of the Oracle Solaris 11 platform.
Application Analyzer also scans the application to check whether any code change could lead to an immediate performance benefit. This tool analyzes the application's processes and source code and generates a recommendation report. Possible recommendations include migrating from the gcc compiler to Oracle Developer Studio, using correct compiler flags to optimize applications, using the Oracle Developer Studio high-performance library, and increasing the performance of servers by using on-chip hardware cryptography.
The Application Analyzer analyzes the application for the following categories of issues:
Crypto – The Crypto module of the Application Analyzer detects the use of crypto features on the running application processes. For Java applications, the analyzer performs a check for the use of the Java JCE APIs. For native applications, the analyzer checks for use of known list of crypto libraries. In both cases, the analyzer provides recommendations to leverage the hardware crypto feature available in SPARC systems.
Makefile – The Makefile source code scanner scans the application source code and generates a recommendation report in HTML.
The report contains the following information:
If the application is currently using gcc compilers for compilation, the report indicates the flag that must be changed for successful compilation using Oracle Developer Studio compilers.
If the application is using an older version of Oracle Developer Studio compilers such as forte 6.x or Studio 10, the report indicates the new flag that must be used with latest Oracle Developer Studio compilers for better performance on Oracle Solaris 11. This tool also reports the use of deprecated or unsupported flags from older compilers.
Recommendations for compiler optimization flags suitable for better performance of the application on Oracle Solaris 11 based on make files and source code.
High-Performance Libraries – This module scans the running application processes and generates a recommendation report on the suitability of using specific Oracle Solaris 11 libraries. For example, Sun Performance Library is a set of optimized, high-speed mathematical subroutines for solving linear algebra and other numerically intensive problems. This tool detects the use of such public domain subroutines by running application processes and suggests a corresponding Sun Performance Library.
To launch the Application Analyzer, issue the following command:
$ appAnalyser.sh [options] file-or-directory
To list the options available for executing the Preflight Application Analyzer (appanalyser.sh), use the –h option:
$ appAnalyser.sh -h
$ tool-install-dir/bin/appAnalyzerGUI.sh
On the completion of application scanning, the scanner generates a report.
The current values are used unless you change them.
For more information about updates and the latest version of the Oracle Solaris Preflight Applications Checker, see the Oracle Solaris Preflight Applications Checker 11.3 product page.
Independent Software Vendors (ISV) can get help or support for this tool by contacting isvsupport_ww@oracle.com.