این قسمت حافظه در JVM در زمان شروع به کار JVM ایجاد می شود و ساختار هر کلاس و یکسری meta-data، اطلاعات مربوط به فیلدها و متدها و کدهای آنها و فیلدهای استاتیک و String ها را درون خود ذخیره می کند، مقدار پیش فرض این حافظه 64 Mb و می توان آن را با پارامتر -XX:MaxPermSize تغییر داد.
اطلاعات مربوط به کلاس هایی که با قابلیت dynamic class loading در زمان اجرای برنامه load می شوند نیز در این قسمت از حافظه قرار می گیرند.