根據以下Xusage.txt中的說明:
-Xms<size> set initial Java heap size
-Xmx<size> set maximum Java heap size
Java -Xms512M 應該為Java分配至少512M的內存,但是在Linux中用TOP查看,其RSS和SIZE的值遠小于512M。我的理解是Java向操作系統申請內存時,用的是mmap2或者old_mmap系統調用,這兩個系統調用其實都沒有真正分配物理內存,而僅僅是分配了虛擬內存。所以預先分配的這些內存要到實際使用時才能落實到位。