--- a/src/java.base/share/classes/jdk/internal/util/OperatingSystem.java	Wed Mar 29 20:12:02 2023
+++ b/src/java.base/share/classes/jdk/internal/util/OperatingSystem.java	Thu Mar 30 13:44:42 2023
@@ -81,6 +81,10 @@
      * The AIX Operating system.
      */
     AIX,
+    /**
+     * Operating systems based on Solaris or illumos.
+     */
+    SOLARIS,
     ;
 
     // The current OperatingSystem
@@ -118,6 +122,14 @@
         return PlatformProps.TARGET_OS_IS_AIX;
     }
 
+    /**
+     * {@return {@code true} if built for Solaris or illumos operating systems}
+     */
+    @ForceInline
+    public static boolean isSolaris() {
+        return PlatformProps.TARGET_OS_IS_SOLARIS;
+    }
+
     /**
      * {@return the current operating system}
      */
--- a/src/java.base/share/classes/jdk/internal/util/PlatformProps.java.template	Wed Mar 29 20:12:02 2023
+++ b/src/java.base/share/classes/jdk/internal/util/PlatformProps.java.template	Thu Mar 30 13:43:29 2023
@@ -39,6 +39,7 @@
     static final boolean TARGET_OS_IS_MACOS   = "@@OPENJDK_TARGET_OS@@" == "macos";
     static final boolean TARGET_OS_IS_WINDOWS = "@@OPENJDK_TARGET_OS@@" == "windows";
     static final boolean TARGET_OS_IS_AIX     = "@@OPENJDK_TARGET_OS@@" == "aix";
+    static final boolean TARGET_OS_IS_SOLARIS = "@@OPENJDK_TARGET_OS@@" == "solaris";
 
     // The Architecture value for the current architecture
     static final String CURRENT_ARCH_STRING = "@@OPENJDK_TARGET_CPU@@";