< prev index next >

src/os/windows/vm/os_windows.cpp

Print this page
rev 8942 : 8211106: [windows] Update OS detection code to recognize Windows Server 2019
Reviewed-by: alanb, clanger, bobv


1740   case 6002:
1741     if (is_workstation) {
1742       st->print("8");
1743     } else {
1744       st->print("Server 2012");
1745     }
1746     break;
1747 
1748   case 6003:
1749     if (is_workstation) {
1750       st->print("8.1");
1751     } else {
1752       st->print("Server 2012 R2");
1753     }
1754     break;
1755 
1756   case 6004:
1757     if (is_workstation) {
1758       st->print("10");
1759     } else {
1760       st->print("Server 2016");






1761     }
1762     break;
1763 
1764   default:
1765     // Unrecognized windows, print out its major and minor versions
1766     st->print("%d.%d", major_version, minor_version);
1767     break;
1768   }
1769 
1770   // Retrieve SYSTEM_INFO from GetNativeSystemInfo call so that we could
1771   // find out whether we are running on 64 bit processor or not
1772   SYSTEM_INFO si;
1773   ZeroMemory(&si, sizeof(SYSTEM_INFO));
1774   os::Kernel32Dll::GetNativeSystemInfo(&si);
1775   if (si.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64) {
1776     st->print(" , 64 bit");
1777   }
1778 
1779   st->print(" Build %d", build_number);
1780   st->print(" (%d.%d.%d.%d)", major_version, minor_version, build_number, build_minor);




1740   case 6002:
1741     if (is_workstation) {
1742       st->print("8");
1743     } else {
1744       st->print("Server 2012");
1745     }
1746     break;
1747 
1748   case 6003:
1749     if (is_workstation) {
1750       st->print("8.1");
1751     } else {
1752       st->print("Server 2012 R2");
1753     }
1754     break;
1755 
1756   case 6004:
1757     if (is_workstation) {
1758       st->print("10");
1759     } else {
1760       // distinguish Windows Server 2016 and 2019 by build number
1761       // Windows server 2019 GA 10/2018 build number is 17763
1762       if (build_number > 17762) {
1763         st->print("Server 2019");
1764       } else {
1765         st->print("Server 2016");
1766       }
1767     }
1768     break;
1769 
1770   default:
1771     // Unrecognized windows, print out its major and minor versions
1772     st->print("%d.%d", major_version, minor_version);
1773     break;
1774   }
1775 
1776   // Retrieve SYSTEM_INFO from GetNativeSystemInfo call so that we could
1777   // find out whether we are running on 64 bit processor or not
1778   SYSTEM_INFO si;
1779   ZeroMemory(&si, sizeof(SYSTEM_INFO));
1780   os::Kernel32Dll::GetNativeSystemInfo(&si);
1781   if (si.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64) {
1782     st->print(" , 64 bit");
1783   }
1784 
1785   st->print(" Build %d", build_number);
1786   st->print(" (%d.%d.%d.%d)", major_version, minor_version, build_number, build_minor);


< prev index next >