# mkdir /export/home/preflightcheck/app1
See the Oracle Solaris Preflight Applications Checker 11.3 download page.
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 running the Preflight Checker at the command line (preflightchecker.sh), use the –h help 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
If you are an administrator with DTrace privileges, grant the DTrace specific privileges to the Oracle Solaris user by using the following command:
# usermod -K defaultpriv=basic,dtrace_kernel,dtrace_user,dtrace_proc username
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. |
For more information about assigning privileges directly to user, see Expanding Users’ Rights in Securing Users and Processes in Oracle Solaris 11.4 and the usermod(8) man page.
# /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 running 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 optimize performance on Oracle Solaris 11.
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 by using Oracle Developer Studio compilers.
If the application is using an older version of Oracle Developer Studio compilers such as Forte 6.x or Sun 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 makefiles 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 running 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 download page.